
.header .nav {gap:clamp(12px,1.35vw,24px)}
.header .nav a {font-size:16px;line-height:1.5;white-space:nowrap}
.header .menu-toggle {font-size:16px;line-height:1.5}
.footer-grid {grid-template-columns:1.4fr repeat(3,minmax(0,1fr));gap:clamp(20px,2.5vw,36px)}
.footer .footer-grid h2 {font-size:17px;line-height:1.6;margin-bottom:14px}
.footer .footer-link {font-size:16px;line-height:1.6;color:#424d51;padding:7px 0}
.footer .brand p,.footer .footer-address {font-family:inherit;font-weight:500;font-size:16px;line-height:1.9;color:#455054}
.footer .footer-address {margin-top:12px;font-style:normal}
.footer .footer-bottom {font-size:14px;line-height:1.6}
@media (max-width:1199px) {
  .header {position:relative;z-index:12}
  .header .menu-toggle {display:block}
  .header .nav {display:none;position:absolute;left:0;right:0;top:100%;padding:12px 24px;background:var(--paper);box-shadow:0 10px 18px #0002;z-index:10}
  .header .nav.open {display:flex;flex-direction:column;align-items:stretch;gap:0}
  .header .nav a {padding:10px 14px;font-size:17px;line-height:1.8}
}
@media (min-width:601px) and (max-width:1000px) {
  .footer .footer-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
  .footer .footer-grid>.brand {grid-column:auto}
}
@media (max-width:600px) {
  .footer .footer-grid {grid-template-columns:1fr;gap:25px}
  .footer .footer-grid h2 {margin-bottom:5px}
}
#case-tags {
  display:grid; grid-template-columns:repeat(5,max-content); justify-content:space-evenly;
  justify-items:center; gap:10px 12px; list-style:none;
  margin:clamp(20px,2.4vw,32px) 0 0; padding:clamp(18px,2vw,26px) 0 0;
  border-top:1px solid var(--line);
}
#case-tags li {
  display:inline-block; max-width:100%; padding:5px 14px; border-radius:999px;
  background:#f0f1ee; color:#354045; font-size:14px; font-weight:600;
  line-height:1.6; overflow-wrap:anywhere;
}
@media(max-width:899px) {
  #case-tags {display:flex; flex-wrap:wrap; justify-content:center; gap:8px 12px}
}
@media(max-width:650px) {
  #case-tags {justify-content:flex-start; gap:7px}
  #case-tags li {padding:5px 11px; font-size:13px}
}


#industry-cases {margin-top:clamp(44px,5vw,72px)}
.industry-cards {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.industry-card {min-width:0;background:var(--white);border:1px solid var(--line);border-radius:12px;padding:20px}
.industry-card h3 {display:flex;align-items:center;gap:12px;margin:0;font-family:inherit;font-weight:700;font-size:18px;line-height:1.55;color:var(--ink)}
.industry-card svg {flex:none;width:40px;height:40px;padding:9px;background:#fff1db;color:#965900;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;border-radius:9px}
.industry-tags {display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 0;padding:0;list-style:none}
.industry-tags li {background:#f0f1ee;color:#354045;border-radius:999px;padding:4px 11px;font-size:13px;font-weight:600;line-height:1.55;max-width:100%;overflow-wrap:anywhere}
@media(max-width:940px){.industry-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.industry-cards{grid-template-columns:minmax(0,1fr);gap:12px}.industry-card{padding:17px}}


.talk-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,265px),1fr));gap:16px}
.talk-card{min-width:0;background:var(--white);border:1px solid var(--line);border-radius:12px;padding:20px}
.talk-card header{display:flex;align-items:center;gap:12px}
.talk-card svg{flex:none;width:40px;height:40px;padding:9px;background:#fff1db;color:#965900;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;border-radius:9px}
.talk-card h3{margin:0;color:var(--ink);font-family:inherit;font-size:18px;line-height:1.55}
.talk-card time{margin-left:auto;flex:none;color:#51595d;font-size:13px;font-variant-numeric:tabular-nums}
.talk-tags{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 0;padding:0;list-style:none}
.talk-tags li{background:#f0f1ee;color:#354045;border-radius:999px;padding:4px 11px;font-size:13px;font-weight:600;line-height:1.55}


#representative-profile .career-record{white-space:normal}
#representative-profile .career-record :is(p,ol,li,strong,time){font:inherit;color:inherit;letter-spacing:inherit}
.career-birth{margin:0 0 14px}
.career-timeline{margin:0;padding:0;list-style:none}
.career-timeline li{position:relative;padding:0 0 15px 22px}
.career-timeline li:last-child{padding-bottom:0}
.career-timeline li:not(:last-child)::before{content:"";position:absolute;left:5px;top:.95em;bottom:-.95em;width:1px;background:var(--orange)}
.career-timeline li::after{content:"";position:absolute;top:calc(.95em - 4.5px);left:1px;width:9px;height:9px;box-sizing:border-box;border:1.5px solid var(--orange);border-radius:50%;background:var(--paper)}
.career-timeline li:last-child::after{background:var(--orange)}
.career-timeline strong{display:block}
.career-timeline p{margin:0}
