
/* Communication category: two human-shaped pieces creating a shared connection. */
.guide-theme[data-guide-theme="dialogue"]{
  --theme-ink:#365c57;--theme-accent:#79a59b;--theme-glow:#e5f1eb;--theme-pale:#f0f8f3;
  --theme-border:#d1e4dc;--theme-warm:#f0d9bd;
}
.guide-theme[data-guide-theme="dialogue"] .intro-hero{
 background:radial-gradient(ellipse 40% 90% at 90% 49%,#d5e9dfaa,transparent 87%),
 radial-gradient(ellipse 33% 45% at 65% 95%,#faebd6,transparent 80%),linear-gradient(145deg,#fffefa,#f0f7f2);
}
.guide-theme[data-guide-theme="dialogue"] .intro-hero h1{max-width:67%;letter-spacing:.012em}
.guide-theme[data-guide-theme="dialogue"] .intro-hero .intro-copy{max-width:65%}
.comm-art{position:absolute;z-index:1;width:min(45%,460px);height:auto;right:-1.6%;top:50%;transform:translateY(-50%);pointer-events:none;opacity:.92;}
.comm-art img{display:block;width:100%;height:auto;}
.comm-caption{position:relative;z-index:2;display:inline-flex;align-items:center;gap:9px;font:500 11px/1.8 "Noto Sans JP",sans-serif;color:#547a70;border-radius:30px;padding:7px 15px;border:1px solid #cadfd3;background:#fffffae8;margin-top:22px}
.comm-caption::before{content:"";width:6px;height:6px;background:#c8ad78;border-radius:50%}
.comm-overview{padding:30px clamp(20px,3vw,39px);border-radius:19px;margin:36px 0 18px;background:linear-gradient(135deg,#eaf2ee,#fcf9f0);border:1px solid #d9e6db;}
.comm-overview h2{font:500 clamp(21px,2.5vw,29px)/1.65 var(--font-heading);margin:0 0 14px;color:#365b50}
.comm-overview p{font-size:13px;line-height:2;color:#5e7367;margin-bottom:0}
.comm-people-pieces{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-top:27px}
.comm-people-pieces a{position:relative;display:flex;flex-direction:column;min-height:208px;padding:19px 17px;border:1px solid #d8e5db;background:#fffefa;border-radius:15px;box-shadow:0 10px 29px #37645109;transition:transform .2s,border-color .2s,box-shadow .2s}
.comm-people-pieces a:hover{transform:translateY(-4px);border-color:#93b6a5;box-shadow:0 15px 30px #37645115}
.comm-people-pieces .comm-person-icon{display:flex;align-items:center;width:62px;height:59px;margin:0 0 13px;color:#77a395}
.comm-people-pieces a:nth-child(2) .comm-person-icon{color:#b7a17e}
.comm-people-pieces a:nth-child(3) .comm-person-icon{color:#83aab1}
.comm-people-pieces a:nth-child(4) .comm-person-icon{color:#b89f91}
.comm-person-icon svg{width:62px;height:59px}
.comm-people-pieces b{font:500 17px/1.6 var(--font-heading);color:#355e51}
.comm-people-pieces span{font-size:11px;line-height:1.85;color:#6c8175;margin-top:7px}
.comm-people-pieces small{position:absolute;top:15px;right:14px;font:600 10px/1 Georgia,serif;color:#a6bbae}
.comm-contrast{display:grid;grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr);align-items:center;gap:12px;margin:36px 0 29px}
.comm-contrast .speaker{min-height:151px;border:1px solid #cfdfd4;border-radius:17px;background:linear-gradient(140deg,#f7fcf7,#e9f4ec);padding:24px 21px}
.comm-contrast .speaker:last-child{background:linear-gradient(140deg,#fffdfa,#f6ece1);border-color:#e8d9ca}
.comm-contrast .speaker small{display:block;color:#73988a;font:700 11px/1.4 var(--font-body);margin-bottom:10px}
.comm-contrast .speaker:last-child small{color:#b3957c}
.comm-contrast .speaker p{font-size:13px;color:#4f6859;margin:0;line-height:2}
.comm-contrast .bridge{position:relative;width:72px;height:72px;border:1px solid #d9e4d5;border-radius:50%;display:grid;place-items:center;background:#fffefa}
.comm-contrast .bridge svg{width:43px;height:43px}
.comm-groups{padding:24px 0 8px;margin:20px 0 0}
.comm-group{border-top:1px solid #dce7de;padding:36px 0 9px;scroll-margin-top:25px}
.comm-group-title{display:flex;gap:17px;align-items:start;margin-bottom:20px}
.comm-group-number{flex:0 0 49px;height:49px;display:grid;place-items:center;background:#eaf3ee;color:#6e9989;border-radius:50%;font:600 16px Georgia,serif}
.comm-group-title h2{font:500 26px/1.6 var(--font-heading);margin:0;color:#355c4e}
.comm-group-title p{font-size:12px;color:#789083;margin:4px 0 0}
.comm-articles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.comm-article{min-height:184px;display:flex;flex-direction:column;position:relative;padding:24px 21px;border:1px solid #d8e5d9;border-radius:14px;background:linear-gradient(155deg,#fffefa,#f5faf5);transition:transform .2s,border-color .2s}
.comm-article:hover{transform:translateY(-3px);border-color:#87b29f}
.comm-article .comm-article-meta{font:600 10px/1.5 Georgia,serif;letter-spacing:.13em;color:#93ad9f}
.comm-article h3{font:500 19px/1.6 var(--font-heading);margin:14px 0 9px;color:#355f52}
.comm-article p{font-size:12px;color:#708679;line-height:1.85;flex:1;margin:0 0 16px}
.comm-article .go{font-size:11px;color:#4a8068;font-weight:700}
.comm-mini-case{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:25px}
.comm-mini-case article{padding:26px 21px;border-radius:15px;background:#f1f6f1;border:1px solid #dfe9de}
.comm-mini-case article:nth-child(2){background:#f6f3ed;border-color:#eae3d7}
.comm-mini-case article:nth-child(3){background:#f0f6f7;border-color:#dce9e9}
.comm-mini-case h3{font:500 19px/1.6 var(--font-heading);color:#45675b;margin:0 0 12px}
.comm-mini-case p{font-size:12px;line-height:2;color:#64796d;margin:0}
.comm-reflection{border:1px solid #d7e6dc;border-radius:17px;background:linear-gradient(135deg,#eff6ef,#fff9ef);padding:30px clamp(22px,4vw,40px);margin:27px 0}
.comm-reflection ol{counter-reset:step;list-style:none;margin:20px 0 0;padding:0}
.comm-reflection li{counter-increment:step;display:flex;align-items:baseline;gap:15px;color:#526d5e;line-height:2;padding:9px 0;font-size:13px}
.comm-reflection li::before{content:counter(step,decimal-leading-zero);font:600 20px Georgia,serif;color:#b4a077}
.comm-related{display:flex;gap:9px;flex-wrap:wrap;margin:25px 0}
.comm-related a{display:inline-flex;align-items:center;padding:9px 13px;border:1px solid #d4e1d7;background:#fffefa;border-radius:22px;color:#4b7764;font-size:12px}
.comm-related a:hover{background:#eef4ec}
.comm-note{margin:24px 0;padding:18px 22px;border-left:3px solid #91b9a8;background:#f2f7f2;border-radius:0 10px 10px 0;font-size:12px;color:#668071;line-height:2}
.comm-note a{text-decoration:underline;text-underline-offset:4px}
.comm-article-body{font-size:14px;line-height:2.2}
.comm-article-body h2{scroll-margin-top:25px}
.comm-practice{padding:25px 28px;border-radius:16px;background:linear-gradient(145deg,#edf5ed,#faf6ee);border:1px solid #dae6d9;margin:26px 0}
.comm-practice h3{margin:0 0 10px!important;font:500 20px/1.6 var(--font-heading);color:#496f5e}
.comm-practice p{margin:0}
.comm-guide-link{display:inline-block;margin-top:12px;color:#487b64;font-size:12px;font-weight:650;text-decoration:underline;text-underline-offset:4px}
.comm-people-feature{display:grid;grid-template-columns:140px minmax(0,1fr);gap:25px;align-items:center;padding:22px 28px;border:1px solid #d7e7dc;border-radius:17px;background:linear-gradient(130deg,#f0f8f1,#fff7ec)}
.comm-people-feature img{width:140px;height:auto;display:block}
.comm-people-feature h3{font:500 22px/1.55 var(--font-heading);color:#365d50;margin:0 0 7px}
.comm-people-feature p{font-size:12px;line-height:1.9;color:#668173;margin:0 0 10px}
.comm-people-feature a{font-size:12px;font-weight:700;color:#4c826a}
@media(max-width:1050px){
  .guide-theme[data-guide-theme="dialogue"] .intro-hero h1{max-width:72%}
  .guide-theme[data-guide-theme="dialogue"] .intro-hero .intro-copy{max-width:67%}
  .comm-art{width:38%}
  .comm-people-pieces{grid-template-columns:repeat(2,1fr)}
  .comm-people-pieces a{min-height:180px}
}
@media(max-width:770px){
  .comm-articles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .comm-mini-case{grid-template-columns:1fr}
  .comm-art{width:42%;opacity:.5}
  .comm-contrast{grid-template-columns:1fr}
  .comm-contrast .bridge{justify-self:center;transform:rotate(90deg);width:54px;height:54px}
}
@media(max-width:620px){
  .guide-theme[data-guide-theme="dialogue"] .intro-hero h1,.guide-theme[data-guide-theme="dialogue"] .intro-hero .intro-copy{max-width:100%}
  .comm-art{width:205px;right:-30px;top:77%;opacity:.13}
  .comm-people-pieces{gap:10px}
  .comm-people-pieces a{padding:18px 13px;min-height:185px}
  .comm-people-pieces b{font-size:15px}
  .comm-people-pieces .comm-person-icon{height:43px}
  .comm-person-icon svg{width:48px;height:46px}
  .comm-articles{grid-template-columns:1fr}
  .comm-article{min-height:143px}
  .comm-overview{padding:22px 20px}
  .comm-group-title{gap:11px}
  .comm-group-number{flex-basis:39px;height:39px;font-size:13px}
  .comm-group-title h2{font-size:21px}
  .comm-people-feature{grid-template-columns:90px 1fr;padding:18px;gap:14px}
  .comm-people-feature img{width:90px}
  .comm-people-feature h3{font-size:18px}
}
@media(prefers-reduced-motion:reduce){.comm-article,.comm-people-pieces a{transition:none;transform:none!important}}
