.li-story { color: #252525; background: #fff; }
.li-story, .li-story * { letter-spacing: 0; }
.li-story h1, .li-story h2, .li-story p { margin: 0; }
.li-story p { color: #64696a; font-size: 16px; line-height: 2; }
.li-story .wrap { width: min(1200px, calc(100% - 80px)); margin: auto; }
.li-story section { padding: 95px 0; scroll-margin-top: 95px; }
.li-story .chapter-label { color: #176b49; font-size: 13px; margin-bottom: 30px; }
.li-story .hero { position: relative; min-height: 540px; height: min(650px, calc(100svh - 174px)); background: #fafbfc; overflow: hidden; }
.story-hero-image { position: absolute; right: 0; top: 0; width: 100%; height: 100%; object-fit: contain; object-position: left center; background: #c3d4d2; }
.li-story .hero-copy { position: relative; width: min(1200px, calc(100% - 80px)); max-width: none; padding-left: min(46%, 590px); color: #252525; height: 100%; margin: auto; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; }
.li-story .est { font-size: 13px; color: #176b49; margin-bottom: 24px; }
.li-story .hero h1 { font-size: 44px; font-weight: 500; line-height: 1.3; margin-bottom: 25px; }
.li-story .hero h2 { font-size: 30px; font-weight: 500; line-height: 1.5; margin-bottom: 20px; }
.li-story .hero .sub { max-width: 100%; font-size: 15px; }
.li-story .badges { display: flex; flex-wrap: wrap; gap: 8px 20px; margin-top: 22px; }
.li-story .badge { padding: 0; border: 0; border-radius: 0; color: #576662; background: none; font-size: 12px; font-weight: 400; }
.story-link { margin-top: 25px; padding-bottom: 6px; border-bottom: 1px solid #aeb8b3; }
.story-nav { display: flex; justify-content: center; gap: 65px; padding: 23px 20px; border-bottom: 1px solid #e5e7e6; }
.story-nav a:hover, .story-link:hover { color: #176b49; }
.li-story .idea { display: grid; grid-template-columns: 1fr 1fr; padding: 0; background: #f6f8f8; }
.story-photo { display: flex; align-items: center; background: #fff; min-width: 0; }
.story-photo img { width: 100%; height: auto; display: block; }
.li-story .idea .wrap { width: 100%; padding: 65px 12%; align-self: center; }
.li-story .headline, .li-story .quote { font-size: 32px; line-height: 1.55; font-weight: 500; margin-bottom: 28px; }
.li-story .idea p { margin-bottom: 18px; }
.li-story .key { display: block; border-top: 1px solid #d5ddda; padding-top: 22px; margin-top: 28px; color: #245c50; font-size: 17px; }
.li-story .hl { color: #245c50; }
.li-story .stance { background: #eaf1ee; }
.li-story .stance .wrap { display: grid; grid-template-columns: 1.3fr 1fr; gap: 15px 70px; align-items: center; }
.li-story .stance .chapter-label { grid-column: 1 / -1; margin-bottom: 10px; }
.li-story .stance .quote { margin: 0; }
.li-story .why .cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 55px; }
.li-story .why .card { border: 0; border-top: 1px solid #cbd4cf; border-radius: 0; background: none; box-shadow: none; padding: 28px 0 0; }
.li-story .no { color: #9eafa6; font-size: 25px; margin-bottom: 22px; }
.li-story .t { font-size: 23px; line-height: 1.55; font-weight: 500; min-height: 72px; margin-bottom: 16px; }
.li-story .d { color: #64696a; font-size: 15px; line-height: 2; }
.li-story .vision { text-align: center; background: #eff3f5; }
.li-story .v1 { color: #245c50; font-size: 20px; margin-bottom: 20px; }
.li-story .v2 { font-size: 46px; line-height: 1.5; font-weight: 500; }
.li-story .timeline .wrap { display: grid; grid-template-columns: .7fr 1fr; column-gap: 100px; }
.li-story .timeline .chapter-label { font-size: 34px; color: #252525; grid-column: 1; grid-row: 1; }
.li-story .subnote { grid-column: 1; grid-row: 2 / 5; font-size: 20px; max-width: 270px; }
.li-story .tl-item { grid-column: 2; position: relative; border-left: 1px solid #d5ded9; padding: 0 0 36px 35px; }
.li-story .tl-item:nth-of-type(3) { grid-row: 1; }
.li-story .tl-item::before { content: ''; position: absolute; left: -5px; top: 12px; width: 9px; height: 9px; border-radius: 50%; background: #497364; }
.li-story .year { font-size: 26px; color: #245c50; line-height: 1.5; margin-bottom: 8px; }
.li-story .txt { font-size: 16px; line-height: 1.9; color: #62696a; }
.li-story .peak { padding-bottom: 0; }
.li-story .peak .year, .li-story .em { color: #176b49; }
.li-story .peak::before { background: #176b49; }
.li-story .tag { margin-top: 20px; color: #176b49; font-size: 14px; }
.li-story .honors { background: #f6f7f7; }
.li-story .honors .chapter-label { font-size: 32px; color: #252525; }
.li-story .honors .grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 50px; }
.li-story .honor { border-top: 1px solid #d5dcda; padding: 28px 0; }
.li-story .org { font-size: 13px; color: #72797a; margin-bottom: 12px; }
.li-story .name { font-size: 21px; line-height: 1.6; }
.li-story .yr { color: #176b49; margin-top: 10px; font-size: 13px; }
.li-story .ending { padding: 95px 0; text-align: center; }
.li-story .lead { font-size: 15px; color: #72797a; margin-bottom: 20px; }
.li-story .big { font-size: 42px; font-weight: 500; line-height: 1.5; margin-bottom: 30px; }
.li-story .foot { margin-top: 35px; color: #72797a; font-size: 13px; line-height: 2; }
.li-story .hero-copy { padding-left: min(44%, 560px); }
.li-story .hero h2 { max-width: 650px; line-height: 1.35; }
.li-story .t { font-size: 21px; }
.li-story .d { line-height: 1.75; }
.story-nav a:focus-visible, .story-link:focus-visible { outline: 2px solid #245c50; outline-offset: 6px; }
@media (max-width: 1000px) {
  .header-inner { gap: 12px; }
  .brand-logo { flex-basis: 125px; min-width: 0; }
  .main-navigation { gap: 16px; }
  .li-story .hero h1 { font-size: 34px; }
  .li-story .idea .wrap { padding: 45px 30px; }
  .li-story .headline, .li-story .quote { font-size: 27px; }
  .li-story .why .cards { gap: 28px; }
  .li-story .timeline .wrap { column-gap: 40px; }
}
@media (max-width: 640px) {
  .li-story .wrap, .li-story .hero-copy { width: calc(100% - 40px); }
  .li-story section { padding: 55px 0; }
  .li-story .hero { height: auto; min-height: 660px; }
  .li-story .hero-copy { padding: 35px 0 275px; }
  .story-hero-image { width: 100%; height: auto; top: auto; bottom: 0; object-fit: contain; }
  .li-story .hero h1 { font-size: 30px; margin-bottom: 16px; }
  .li-story .hero h2 { font-size: 26px; }
  .li-story .hero .sub { max-width: 100%; font-size: 14px; }
  .li-story .est { font-size: 12px; }
  .story-nav { display: grid; grid-template-columns: 1fr 1fr; gap: 14px 24px; font-size: 12px; text-align: center; }
  .li-story .idea, .li-story .stance .wrap, .li-story .why .cards, .li-story .honors .grid { grid-template-columns: 1fr; }
  .story-photo img { max-height: 420px; object-fit: contain; }
  .li-story .idea .wrap { padding: 42px 24px; }
  .li-story p, .li-story .txt { font-size: 15px; }
  .li-story .stance .wrap { gap: 20px; }
  .li-story .t { min-height: 0; font-size: 22px; }
  .li-story .v2 { font-size: 34px; }
  .li-story .timeline .wrap { display: block; }
  .li-story .subnote { max-width: none; font-size: 16px; margin-bottom: 40px; }
  .li-story .tl-item { margin-left: 5px; padding-left: 25px; }
  .li-story .big { font-size: 32px; }
  .li-story .ending { padding: 60px 0; }
}
