.method-cards { display:grid; grid-template-columns:1fr; gap:8px; margin-bottom:12px; }
@media(min-width:480px){ .method-cards{ grid-template-columns:repeat(3,1fr); } }
.method-card {
  border:2px solid var(--border); border-radius:var(--r-lg); padding:14px 12px;
  cursor:pointer; transition:all .15s; user-select:none;
}
.method-card:hover { border-color:var(--accent); }
.method-card.mc-name { font-size:13px; font-weight:700; color:var(--ink); margin-bottom:4px; }
.mc-desc { font-size:11px; color:var(--ink3); line-height:1.6; }
.mc-price { font-family:'DM Mono',monospace; font-size:11px; color:var(--accent); margin-top:6px; font-weight:700; }
.mc-merit { font-size:12px; color:var(--green); margin-top:3px; font-weight:700; }

/* yane-hero → primary デザインに統合 */
.yane-hero {
  background:var(--primary);
  border-radius:var(--r-lg); padding:24px 20px; margin-bottom:0;
  position:relative; overflow:hidden;
  border: 1px solid rgba(255,255,255,0.06);
}
.yane-hero::before {
  content:''; position:absolute; top:-40px; right:-40px; width:160px; height:160px;
  background:radial-gradient(circle,rgba(107,159,212,.25),transparent 70%); pointer-events:none;
}
.yh-tag { font-size:12px;color:var(--primary-mid);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px;font-weight:700; }
.yh-range { font-family:var(--font-display);font-size:clamp(26px,7vw,48px);font-weight:800;color:#fff;line-height:1.1;margin-bottom:4px;letter-spacing:-.02em; }
.yh-range em { color:var(--primary-mid);font-style:normal;font-size:.55em; }
.yh-note { color:rgba(255,255,255,0.55);font-size:12px; }

.asbestos-warn {
  background:#fff0f0; border:1.5px solid #f0b0b0; border-radius:var(--r);
  padding:14px 16px; margin-bottom:14px;
  font-size:13px; color:#800;
  display:none;
}
.asbestos-warn.show { display:block; }
.aw-title { font-weight:700; margin-bottom:4px; }

.compare-method { margin-bottom:14px; }
.cm-row {
  display:flex; align-items:center; gap:10px;
  padding:10px 14px; border-bottom:1px solid var(--border); font-size:12px;
}
.cm-row:last-child { border-bottom:none; }
.cm-row.cm-name { width:110px; min-width:110px; font-weight:700; color:var(--ink); }
.cm-bar-wrap { flex:1; height:14px; background:var(--border); border-radius:7px; overflow:hidden; }
.cm-bar { height:100%; border-radius:7px; }
.cm-val { width:90px; min-width:90px; text-align:right; font-family:'DM Mono',monospace; color:var(--accent); }