/* Presentation v9 — community connections and blue-white component design. */
.presentation-main {
  --presentation-ink: #19242d;
  --presentation-muted: #69737a;
  --presentation-line: #243d4b24;
  --presentation-paper: #f5f6f5;
  --ink: var(--presentation-ink);
  --line: var(--presentation-line);
  --blue: #526f7c;
  position: relative;
  z-index: 2;
  color: var(--presentation-ink);
  background: var(--presentation-paper);
  font-family: Arial, "PingFang SC", "Microsoft YaHei", sans-serif;
}
.presentation-main *, .presentation-footer * { box-sizing: border-box; }
.presentation-wrap { width: min(1320px, 87%); margin: 0 auto; }
.presentation-section { padding: 112px 0; scroll-margin-top: 88px; }
.presentation-main h2 {
  font-family: inherit;
  font-size: clamp(34px, 4.1vw, 62px);
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: -.055em;
  margin: 0;
  text-wrap: balance;
}
.presentation-main h3 { font-family: inherit; font-weight: 500; }
.presentation-label {
  display: block;
  font: 10px/1.7 "SFMono-Regular", Consolas, monospace;
  font-weight: 400;
  letter-spacing: 1.7px;
  color: #768b93;
  margin: 0 0 27px;
}
.presentation-lead { color: var(--presentation-muted); font-size: 15px; line-height: 2; letter-spacing: .03em; max-width: 490px; margin: 29px 0 0; }
.presentation-split { display: grid; grid-template-columns: 1.25fr 1fr; gap: 9%; align-items: end; }
.presentation-split > .presentation-lead { margin-bottom: 8px; }
.presentation-link { display: inline-flex; align-items: center; justify-content: space-between; gap: 30px; min-height: 44px; padding: 11px 0; border-bottom: 1px solid currentColor; color: inherit; font-size: 13px; }
.presentation-link svg { width: 19px; height: 19px; transition: transform .2s; }
.presentation-link:hover svg { transform: translateX(4px); }
.ground-section { padding-top: 100px; padding-bottom: 70px; background: linear-gradient(#f4f6f8, #f5f6f5 65%); }
.ground-heading { max-width: 850px; margin: 0 auto 62px; text-align: center; }
.ground-heading h2 { font-size: clamp(37px, 4.8vw, 72px); }
.ground-heading .presentation-label { color: #7b9097; }
.ground-heading .presentation-lead { max-width: 570px; margin: 26px auto 0; }
.story-section { padding-top: 85px; }
.story-path { display: grid; grid-template-columns: repeat(4, 1fr); list-style: none; padding: 0; margin: 66px 0 0; }
.story-path li { position: relative; padding: 27px 30px 10px 0; border-top: 1px solid var(--presentation-line); }
.story-path li::before { content: ''; width: 5px; height: 5px; border-radius: 50%; background: #6b8992; position: absolute; top: -3px; left: 0; box-shadow: 0 0 0 5px var(--presentation-paper); }
.story-path li:not(:first-child) { padding-left: 15px; }
.story-path li:not(:first-child)::before { left: 15px; }
.story-path-number { font: 10px/1.4 "SFMono-Regular", Consolas, monospace; letter-spacing: 1px; color: #8c969a; }
.story-path h3 { font-size: 19px; margin: 24px 0 15px; }
.story-path p { max-width: 260px; margin: 0; font-size: 12px; line-height: 2; color: var(--presentation-muted); }
.story-statement { max-width: 720px; margin: 58px 0 0 auto; padding-left: 26px; border-left: 1px solid #91a5a9; font-size: 21px; font-weight: 400; line-height: 1.85; letter-spacing: -.02em; color: #516a73; }
.practice-section { padding-top: 108px; background: #eaf0f1; }
.practice-heading { display: grid; grid-template-columns: 1.25fr 1fr; column-gap: 9%; align-items: end; }
.practice-heading .presentation-label { grid-column: 1 / -1; }
.practice-heading .presentation-lead { margin-bottom: 8px; }
.practice-columns { margin-top: 68px; display: grid; grid-template-columns: 1fr 1fr; gap: 9%; }
.practice-columns > article { padding-top: 30px; border-top: 1px solid #7088916b; scroll-margin-top: 110px; }
.practice-columns .presentation-label { margin-bottom: 22px; font-size: 9px; letter-spacing: 1.1px; }
.practice-columns h3 { font-size: 24px; letter-spacing: -.03em; line-height: 1.5; margin: 0 0 19px; }
.practice-description { margin: 0; font-size: 13px; line-height: 1.95; color: #65757d; max-width: 460px; }
.model-families { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; margin: 35px 0 25px; }
.model-families div { padding: 19px 0; border-top: 1px solid #6b85922c; border-bottom: 1px solid #6b85922c; }
.model-families span { display: block; font-size: 10px; line-height: 1.5; color: #8a969c; margin-bottom: 10px; }
.model-families strong { display: block; font-size: 21px; line-height: 1.5; letter-spacing: -.04em; font-weight: 500; color: #384f5a; }
.presentation-fineprint { margin: 19px 0 0; max-width: 445px; font-size: 10px; line-height: 1.9; color: #819095; }
.practice-topics { margin-top: 26px; border-top: 1px solid #6b859230; }
.practice-topics details { border-bottom: 1px solid #6b859230; }
.practice-topics summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 18px 0; list-style: none; font-size: 14px; cursor: pointer; }
.practice-topics summary::-webkit-details-marker, .company-information summary::-webkit-details-marker { display: none; }
.topic-toggle { color: #7c9199; font-size: 18px; font-weight: 300; transition: transform .2s; }
.practice-topics details[open] .topic-toggle { transform: rotate(45deg); }
.practice-topics details p { color: #61747e; font-size: 12px; line-height: 1.9; margin: 0; padding: 0 30px 21px 0; max-width: 480px; }
.direction-section { background: #20323d; color: #e5edf0; }
.direction-section .presentation-label { color: #92adb7; }
.direction-section .presentation-lead { color: #a4b5be; }
.direction-steps { display: grid; grid-template-columns: repeat(3, 1fr); padding: 0; list-style: none; margin: 62px 0 0; gap: 6%; scroll-margin-top: 110px; }
.direction-steps li { padding-top: 22px; border-top: 1px solid #d7e4eb35; }
.direction-steps .is-current { border-top-color: #add0d3; }
.direction-meta { display: flex; align-items: center; justify-content: space-between; font: 10px/1.5 "SFMono-Regular", Consolas, monospace; letter-spacing: 1px; color: #7e959f; }
.direction-meta span:last-child { font-family: Arial, "PingFang SC", sans-serif; font-size: 10px; letter-spacing: 0; }
.is-current .direction-meta { color: #d6eceb; }
.direction-steps h3 { font-size: 22px; margin: 27px 0 13px; line-height: 1.5; }
.direction-steps p { max-width: 290px; font-size: 12px; line-height: 1.9; color: #95aab5; margin: 0; }
.direction-note { font-size: 10px; letter-spacing: .04em; line-height: 1.8; color: #718b97; margin: 35px 0 0; }
.japan-section { background: #eeefec; }
.japan-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 12%; align-items: start; }
.japan-section .presentation-lead { max-width: 360px; }
.japan-company { border-top: 1px solid #253a4645; padding: 23px 0 0; }
.company-relationship { display: flex; align-items: center; justify-content: space-between; font-size: 10px; letter-spacing: .1em; color: #869092; margin-bottom: 44px; gap: 20px; }
.company-relationship span:last-child { font-family: "SFMono-Regular", Consolas, monospace; font-size: 9px; letter-spacing: 1.2px; }
.company-type { font-size: 13px; letter-spacing: .35em; color: #465a62; margin: 0 0 12px; }
.presentation-main h3.company-wordmark { font-size: clamp(30px, 4.1vw, 63px); font-weight: 500; line-height: 1.1; letter-spacing: -.055em; color: #223b48; margin: 0 0 25px; }
.company-group-link { display: inline-flex; align-items: center; gap: 28px; font-size: 12px; color: #647c83; line-height: 1.7; }
.company-group-link small { display: block; font-size: 8px; letter-spacing: 1.7px; margin-top: 3px; color: #94a2a7; }
.company-group-link svg { width: 18px; height: 18px; }
.company-business { max-width: 400px; margin: 27px 0 25px; font-size: 12px; line-height: 1.9; color: #727f84; }
.company-information { border-top: 1px solid #6a7b832b; border-bottom: 1px solid #6a7b832b; }
.company-information summary { display: flex; justify-content: space-between; align-items: center; list-style: none; padding: 17px 0; color: #61757d; font-size: 11px; cursor: pointer; }
.company-information summary > span:last-child { font-size: 18px; transition: transform .2s; }
.company-information[open] summary > span:last-child { transform: rotate(45deg); }
.company-information dl { margin: 0 0 20px; }
.company-information dl > div { display: grid; grid-template-columns: 82px 1fr; gap: 20px; padding: 9px 0; font-size: 11px; line-height: 1.8; }
.company-information dt { color: #8d989c; }
.company-information dd { margin: 0; color: #465d66; }
.participation-section { padding-bottom: 72px; background: #f5f6f5; }
.participation-heading { max-width: 800px; }
.participation-heading .presentation-lead { max-width: 535px; }
.participation-options { display: grid; grid-template-columns: repeat(3, 1fr); gap: 5%; margin-top: 63px; }
.participation-option { border-top: 1px solid #81959d73; padding: 25px 0 0; display: flex; flex-direction: column; transition: border-color .2s; }
.participation-option:hover { border-top-color: #142d3d; }
.participation-number { font: 10px/1.5 "SFMono-Regular", Consolas, monospace; color: #85959b; letter-spacing: 1px; }
.participation-option h3 { font-size: 25px; line-height: 1.5; margin: 24px 0 14px; }
.participation-option > p { max-width: 285px; font-size: 13px; line-height: 1.9; color: #718188; margin: 0 0 28px; }
.participation-action { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 15px 0; font-size: 12px; margin-top: auto; }
.participation-action svg { width: 20px; height: 20px; transition: transform .2s; }
.participation-option:hover .participation-action svg { transform: translateX(5px); }
.participation-bottom { display: flex; align-items: center; justify-content: space-between; gap: 35px; border-top: 1px solid var(--presentation-line); margin-top: 52px; padding-top: 27px; }
.participation-star { display: flex; align-items: center; gap: 25px; flex-wrap: wrap; }
.participation-star > p { font-size: 12px; line-height: 1.8; color: #77888f; margin: 0; }
.participation-star > button { font-size: 12px; line-height: 1.5; background: transparent; color: #4c6773; padding: 10px 0; display: inline-flex; gap: 15px; border: 0; border-bottom: 1px solid #526f7c50; }
.participation-star > button > span { color: #ab8d54; }
.participation-contact { display: flex; flex-direction: column; align-items: flex-end; flex-shrink: 0; gap: 7px; color: #8e9a9f; font-size: 10px; line-height: 1.6; }
.participation-star #member-star-caption { position: static; background: transparent; color: #758994; padding: 0; border-radius: 0; font-size: 11px; width: 100%; }
.participation-star #member-star-caption:empty { display: none; }
.site-footer.presentation-footer, .home .site-footer.presentation-footer { position: relative; z-index: 2; color: #6e7e86; background: #f5f6f5; padding: 0 6.5% 27px; }
.presentation-footer-top { display: flex; align-items: center; justify-content: space-between; gap: 35px; border-top: 1px solid #627b8b2b; padding: 37px 0 32px; }
.presentation-footer .brand-logo, .home .presentation-footer .brand-logo { width: 205px; height: auto; filter: none; }
.presentation-footer-top > p { margin: 0 auto 0 0; color: #8c989d; font-size: 11px; line-height: 1.8; }
.presentation-footer .back-top { display: inline-flex; gap: 20px; color: #637781; font-size: 10px; white-space: nowrap; }
.presentation-footer .back-top span { font-size: 15px; }
.presentation-footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 25px; font-size: 10px; line-height: 1.8; color: #94a0a5; }
.presentation-footer-bottom nav { display: flex; flex-wrap: wrap; align-items: center; gap: 27px; }
.presentation-credits { margin: 18px 0 0; color: #a4adb1; font-size: 9px; line-height: 1.8; }
.presentation-credits a { text-underline-offset: 3px; }
.presentation-credits a:hover { text-decoration: underline; }
.site-header.odyssey-header { gap: 28px; }
.odyssey-header .brand-logo { width: 218px; height: auto; }
.site-header .menu-toggle { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; width: 32px; height: 36px; background: none; border: 0; padding: 5px; color: inherit; }
.site-header .menu-toggle span { display: block; width: 21px; height: 1px; background: currentColor; }
.site-header .header-join { margin-left: auto; }
.mobile-nav small { font: 9px/1.5 "SFMono-Regular", Consolas, monospace; letter-spacing: 1px; opacity: .48; }
.mobile-nav a { align-items: center; gap: 20px; }
.boarding-dialog { width: min(580px, calc(100vw - 32px)); max-height: 90svh; overflow: auto; padding: 38px; border: 1px solid #d5dbe0; border-radius: 2px; background: #f4f6f8; color: #1f2328; box-shadow: 0 20px 90px #05060a55; overscroll-behavior: contain; }
.boarding-dialog::backdrop { background: #05060abb; backdrop-filter: blur(8px); }
.boarding-close { position: absolute; right: 18px; top: 12px; padding: 5px 10px; font-size: 27px; background: none; border: 0; color: #58656e; }
.boarding-dialog .boarding-intro { margin: 0 0 25px; }
.boarding-dialog .boarding-intro h2 { font-size: 30px; margin: 16px 0; }
.boarding-dialog .boarding-intro p { font-size: 12px; line-height: 1.8; color: #68747c; }
.boarding-form { display: flex; flex-direction: column; gap: 18px; }
.boarding-form > label { font-size: 12px; }
.boarding-form > input { padding: 14px; border: 1px solid #c6cfd5; background: white; border-radius: 2px; font-size: 14px; color: #1f2328; }
.boarding-form .consent { display: flex; gap: 10px; align-items: flex-start; font-size: 11px; line-height: 1.8; }
.boarding-form .consent input { margin-top: 4px; accent-color: #526f7c; }
.boarding-form .consent a { color: #526f7c; text-decoration: underline; }
.boarding-privacy { font-size: 10px; line-height: 1.8; color: #7b878d; margin: 0; }
.boarding-form .button { background: #20323d; color: white; }
.boarding-dialog #boarding-status { font-size: 12px; line-height: 1.8; }
.boarding-result img { width: 100%; height: auto; max-height: 50svh; object-fit: contain; }
.boarding-result-actions { display: flex; gap: 16px; flex-wrap: wrap; margin-top: 20px; }
.boarding-result-actions a, .boarding-result-actions button { font-size: 12px; padding: 12px 17px; border: 1px solid #b8c3cb; color: #273641; background: transparent; }
.boarding-result-actions a:first-child { background: #20323d; color: white; }
.boarding-result > p { font-size: 11px; line-height: 1.8; margin-top: 20px; }
.boarding-result > p a { color: #526f7c; text-decoration: underline; }
.boarding-noscript { padding: 25px; color: #536b76; background: #f5f6f5; margin: 0; }
@media (min-width: 1600px) {
  .presentation-wrap { width: min(1420px, 85%); }
  .presentation-section { padding-top: 130px; padding-bottom: 130px; }
  .ground-section { padding-bottom: 70px; }
  .story-section { padding-top: 80px; }
}
@media (max-width: 1000px) {
  .presentation-wrap { width: 86%; }
  .presentation-section { padding-top: 88px; padding-bottom: 88px; }
  .ground-section { padding-bottom: 60px; }
  .story-section { padding-top: 50px; }
  .presentation-main h2 { font-size: clamp(33px, 4.6vw, 48px); }
  .ground-heading h2 { font-size: clamp(36px, 5.2vw, 54px); }
  .presentation-split, .practice-heading { gap: 6%; }
  .presentation-lead { font-size: 13px; }
  .story-path { grid-template-columns: repeat(2, 1fr); gap: 36px 0; }
  .story-path li:nth-child(3) { padding-left: 0; }
  .story-path li:nth-child(3)::before { left: 0; }
  .story-path p { max-width: 330px; }
  .story-statement { font-size: 19px; }
  .practice-columns { gap: 7%; }
  .practice-columns h3 { font-size: 20px; }
  .model-families { gap: 15px; }
  .model-families strong { font-size: 19px; }
  .japan-layout { gap: 9%; }
  .presentation-main h3.company-wordmark { font-size: 4.2vw; }
  .participation-option h3 { font-size: 22px; }
  .participation-option > p { font-size: 12px; }
  .participation-bottom { align-items: flex-start; }
  .participation-star { gap: 8px 20px; }
  .presentation-footer-top > p { max-width: 150px; }
}
@media (max-width: 640px) {
  .presentation-wrap { width: auto; margin: 0 25px; }
  .presentation-section { padding-top: 65px; padding-bottom: 65px; scroll-margin-top: 75px; }
  .presentation-main h2 { font-size: 34px; line-height: 1.42; letter-spacing: -.06em; }
  .presentation-label { font-size: 8px; letter-spacing: 1.2px; margin-bottom: 20px; }
  .presentation-lead { font-size: 13px; line-height: 1.95; margin-top: 22px; }
  .presentation-split, .practice-heading, .practice-columns, .japan-layout { display: block; }
  .presentation-split > .presentation-lead { margin-bottom: 0; }
  .ground-section { padding-top: 62px; padding-bottom: 26px; }
  .ground-heading { text-align: left; margin-bottom: 34px; }
  .ground-heading h2 { font-size: clamp(29px, 7.8vw, 42px); }
  .ground-heading .presentation-lead { margin: 22px 0 0; }
  .story-section { padding-top: 48px; }
  .story-path { margin-top: 36px; gap: 30px 18px; }
  .story-path li, .story-path li:not(:first-child) { padding: 20px 0 0; }
  .story-path li:not(:first-child)::before { left: 0; }
  .story-path-number { font-size: 9px; }
  .story-path h3 { font-size: 16px; margin: 17px 0 10px; }
  .story-path p { font-size: 11px; line-height: 1.95; }
  .story-statement { font-size: 17px; line-height: 1.85; padding-left: 17px; margin-top: 38px; }
  .practice-heading .presentation-lead { margin-top: 22px; }
  .practice-columns { margin-top: 37px; }
  .practice-columns > article { padding-top: 22px; }
  .practice-columns > article + article { margin-top: 40px; }
  .practice-columns h3 { font-size: 23px; }
  .practice-columns .presentation-label { margin-bottom: 17px; }
  .practice-description { font-size: 12px; }
  .model-families { margin: 25px 0 16px; gap: 22px; }
  .model-families strong { font-size: 23px; }
  .presentation-fineprint { font-size: 9px; }
  .practice-topics summary { font-size: 13px; padding: 16px 0; }
  .practice-topics details p { font-size: 11px; }
  .direction-steps { grid-template-columns: 1fr; gap: 26px; margin-top: 38px; }
  .direction-steps li { padding-top: 17px; }
  .direction-steps h3 { font-size: 21px; margin: 16px 0 10px; }
  .direction-steps p { max-width: 340px; font-size: 12px; }
  .direction-note { font-size: 9px; margin-top: 25px; }
  .japan-section .presentation-lead { max-width: 100%; }
  .japan-company { margin-top: 38px; padding-top: 20px; }
  .company-relationship { margin-bottom: 31px; font-size: 9px; }
  .company-relationship span:last-child { font-size: 8px; }
  .company-type { font-size: 11px; }
  .presentation-main h3.company-wordmark { font-size: clamp(34px, 10.6vw, 60px); margin-bottom: 20px; }
  .company-business { margin-top: 25px; font-size: 12px; }
  .company-information dl > div { grid-template-columns: 70px 1fr; gap: 15px; font-size: 10px; }
  .participation-section { padding-bottom: 45px; }
  .participation-options { grid-template-columns: 1fr; gap: 25px; margin-top: 38px; }
  .participation-option { display: grid; grid-template-columns: 30px 1fr 26px; column-gap: 15px; padding-top: 20px; }
  .participation-number { grid-column: 1; grid-row: 1 / 4; padding-top: 8px; }
  .participation-option h3 { grid-column: 2; font-size: 23px; margin: 0 0 10px; }
  .participation-option > p { grid-column: 2; max-width: 100%; font-size: 12px; margin-bottom: 12px; }
  .participation-action { grid-column: 2 / -1; font-size: 11px; padding: 7px 0; }
  .participation-bottom { display: block; margin-top: 32px; padding-top: 21px; }
  .participation-star { justify-content: space-between; gap: 8px 16px; }
  .participation-star > p { font-size: 11px; }
  .participation-star > button { font-size: 11px; gap: 9px; }
  .participation-contact { align-items: flex-start; margin-top: 22px; font-size: 10px; }
  .site-footer.presentation-footer, .home .site-footer.presentation-footer { padding: 0 25px 24px; }
  .presentation-footer-top { position: relative; padding: 28px 0 25px; display: block; }
  .presentation-footer .brand-logo, .home .presentation-footer .brand-logo { width: 177px; }
  .presentation-footer-top > p { max-width: none; margin-top: 15px; font-size: 10px; }
  .presentation-footer .back-top { position: absolute; right: 0; top: 33px; font-size: 9px; gap: 10px; }
  .presentation-footer-bottom { display: block; font-size: 9px; }
  .presentation-footer-bottom nav { gap: 24px; margin-top: 13px; }
  .presentation-credits { font-size: 8px; margin-top: 16px; }
  .site-header.odyssey-header { gap: 14px; }
  .odyssey-header .brand-logo { width: 175px; }
  .home .site-header .header-join { font-size: 10px; gap: 9px; }
  .home .site-header .menu-toggle { margin-left: 0; width: 26px; }
  .mobile-nav small { font-size: 8px; letter-spacing: .6px; }
  .boarding-dialog { padding: 32px 24px; }
  .boarding-dialog .boarding-intro h2 { font-size: 27px; }
}
@media (max-width: 370px) {
  .presentation-wrap { margin-left: 20px; margin-right: 20px; }
  .presentation-main h2 { font-size: 30px; }
  .odyssey-header .brand-logo { width: 153px; }
  .home .site-header .header-join { gap: 4px; }
  .home .site-header .header-join svg { width: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .presentation-main *, .presentation-footer * { scroll-behavior: auto; transition: none !important; }
}
/* v9: blue / white, clear hierarchy and rounded components, informed by tec-do.com. */
:root{--ui-blue:#086bfa;--ui-deep:#071d58;--ui-paper:#f4f7fe;--ui-ease:cubic-bezier(.25,.74,.22,.99)}
body{font-family:Arial,'PingFang SC','Microsoft YaHei','Noto Sans SC',sans-serif}
.presentation-main{--presentation-ink:#111d3c;--presentation-muted:#6c768d;--presentation-paper:#fff;--presentation-line:#e3eaf7;--blue:var(--ui-blue);background:#fff}
.presentation-wrap{width:min(1240px,86%)}
.presentation-section{padding:110px 0;scroll-margin-top:84px}
.presentation-main h2{font-size:clamp(36px,4.1vw,62px);line-height:1.3;letter-spacing:-.025em;font-weight:600;color:#122141}
.presentation-main h3{letter-spacing:-.02em;font-weight:600}
.presentation-label{font-family:Arial,sans-serif;font-size:11px;letter-spacing:2px;color:#1473f3;margin-bottom:22px;font-weight:600}
.presentation-lead{font-size:16px;line-height:1.95;color:#788398;letter-spacing:0}
.presentation-link,.action-primary{display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:50px;padding:14px 27px;border:1px solid #086bfa;border-radius:100px;background:#086bfa;color:#fff;font-size:14px;line-height:1.5;transition:background .3s,box-shadow .3s,transform .3s var(--ui-ease)}
.presentation-link:hover,.action-primary:hover{background:#0055d7;box-shadow:0 8px 24px #086bfa25;transform:translateY(-2px)}
.action-primary svg{width:20px;height:20px}.presentation-fineprint{color:#7c899e;font-size:11px}
.ground-section{background:linear-gradient(180deg,#fff,#f0f6ff);padding-top:108px;padding-bottom:75px}
.ground-heading{max-width:840px;margin-bottom:40px;text-align:center}.ground-heading h2{color:#0a6bf5}.ground-heading .presentation-lead{max-width:650px;margin:24px auto 0}.ground-heading .presentation-label{color:#6388b7}
.network-layout{display:grid;grid-template-columns: .92fr 1.08fr;align-items:center;gap:30px}
.network-copy{padding:25px 0 55px}.network-eyebrow{font-size:12px;line-height:1.6;color:#7692b1;display:flex;align-items:center;gap:9px}.network-eyebrow span{width:6px;height:6px;background:#087afc;border-radius:50%;box-shadow:0 0 0 5px #087afc0d}
.network-copy h3{font-size:clamp(29px,3.1vw,43px);line-height:1.4;color:#14264e;margin:25px 0}.network-copy h3 span{color:#086bfa}.network-copy>p:not(.network-eyebrow){font-size:14px;line-height:2;color:#75829a;max-width:420px}
.network-pills{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0 30px}.network-pills span{padding:8px 13px;border-radius:7px;background:linear-gradient(100deg,#fff8,#dcebff);color:#6886b1;font-size:11px}
.network-globe-frame{position:relative;aspect-ratio:1/1;min-width:0;background:radial-gradient(ellipse,#d8eaff 0,transparent 67%);border-radius:30px;overflow:hidden}
#network-globe-canvas{display:block;width:100%;height:100%;touch-action:pan-y pinch-zoom}
.globe-controls{position:absolute;right:16px;bottom:48px;display:flex;gap:6px}.globe-controls button{border:1px solid #d2e1f6;background:#ffffffd9;border-radius:25px;min-width:36px;min-height:36px;font-size:18px;color:#416795;cursor:pointer}.globe-controls #globe-toggle{font-size:10px;padding:0 14px}.globe-controls button:hover{color:#086bfa;border-color:#086bfa}.globe-caption{position:absolute;bottom:12px;left:12px;right:12px;text-align:center;font-size:10px;color:#7c94b4;letter-spacing:.02em}
.story-section{background:white}.story-path{gap:18px;margin-top:54px}.story-path li,.story-path li:not(:first-child){border:0;border-radius:18px;background:linear-gradient(150deg,#f7faff,#eef4fe);padding:29px 23px 32px}.story-path li:before{display:none}.story-path-number{font-family:Arial,sans-serif;font-size:32px;font-weight:600;color:#9dc5fe}.story-path h3{font-size:20px;margin:22px 0 13px;color:#1b375d}.story-path p{font-size:13px;color:#718198}.story-statement{border:0;color:#76879d;font-size:20px;margin:42px auto 0;text-align:center;padding:0;max-width:860px}
.practice-section{background:#f2f6ff}.practice-columns{gap:26px;margin-top:55px}.practice-columns>article{padding:38px;border:1px solid #fff;background:#ffffffbc;border-radius:22px;box-shadow:0 20px 55px #173d9510}.practice-columns h3{font-size:27px;color:#173d70}.practice-description{font-size:14px;color:#738198}.model-families div{border:0;padding:20px;border-radius:12px;background:linear-gradient(130deg,#f8fbff,#e7f1ff)}.model-families strong{font-size:24px;color:#0d6beb}.practice-topics{border:0}.practice-topics details{border-bottom:1px solid #e5edf9}.practice-topics summary{font-size:15px;color:#31476c;padding:20px 0}.practice-topics details[open] summary{color:#0d6beb}.practice-topics details p{font-size:13px;color:#758297}
.direction-section{background:linear-gradient(120deg,#052260,#0754b8);color:white;position:relative;overflow:hidden}.direction-section:before{content:'';position:absolute;width:600px;height:600px;right:-220px;top:-280px;border-radius:50%;border:1px solid #ffffff20;box-shadow:0 0 0 70px #ffffff04,0 0 0 140px #ffffff04;pointer-events:none}.direction-section h2{color:white}.direction-section .presentation-label{color:#7dbbff}.direction-section .presentation-lead{color:#b0ccec}.direction-steps{gap:22px}.direction-steps li{padding:28px;border:1px solid #ffffff24;border-radius:16px;background:#ffffff08}.direction-steps .is-current{border:1px solid #a1d0ff9e;background:#ffffff12}.direction-meta{color:#8abced}.is-current .direction-meta{color:#d4edff}.direction-steps h3{color:white}.direction-steps p{color:#acc8e9;font-size:13px}.direction-note{color:#91b4db}
.japan-section{background:#fff}.japan-layout{gap:10%;align-items:center}.japan-company{border:1px solid #e3edfc;background:linear-gradient(125deg,#f9fbff,#edf4ff);border-radius:23px;padding:32px 35px;box-shadow:0 22px 55px #14448908}.company-relationship{margin-bottom:38px;color:#7593b8}.company-type{color:#5a7ca6}.presentation-main h3.company-wordmark{color:#0a56c5;font-weight:600;font-size:clamp(32px,3.8vw,55px)}.company-group-link{color:#4072ae}.company-business{color:#7a8ba3;font-size:13px}.company-information summary{color:#3f648f}.company-information dd{color:#537198}.company-information dt{color:#90a0b4}
.participation-section{background:#f5f8ff}.participation-options{gap:20px;margin-top:50px}.participation-option{padding:29px 28px 16px;border:1px solid #e7eefc;border-radius:20px;background:#fff;box-shadow:0 18px 45px #15427b06;transition:transform .4s var(--ui-ease),box-shadow .4s,border-color .4s}.participation-option:hover{transform:translateY(-6px);border-color:#b8d7ff;box-shadow:0 18px 45px #15427b12}.participation-number{font-size:28px;font-weight:600;color:#a5c9fc}.participation-option h3{color:#174270;font-size:25px}.participation-option>p{font-size:14px;color:#7a8ba4}.participation-action{color:#096df5;font-size:14px;border-top:1px solid #edf2fa;padding-top:18px}.participation-bottom{border-color:#e0e9f6}.participation-star>button{color:#146bdd}
.site-footer.presentation-footer,.home .site-footer.presentation-footer{background:#f5f8ff;color:#7f90a7}.presentation-footer-top{border-color:#dfe9f9}.presentation-footer .back-top{color:#086bfa}.presentation-footer-bottom nav a:hover{color:#086bfa}.presentation-credits{color:#8c9bb1}.boarding-dialog{border-radius:22px;border:1px solid #dbe9ff;background:#fff}.boarding-form>input{border-radius:8px}.boarding-form .button{border-radius:30px;background:#086bfa}
.desktop-nav{display:flex;align-items:center;gap:30px;margin-left:auto;white-space:nowrap}.desktop-nav a{font-size:13px;position:relative;padding:28px 0}.desktop-nav a:after{content:'';position:absolute;bottom:17px;left:0;right:0;height:2px;background:#0b78ff;transform:scaleX(0);transition:transform .3s}.desktop-nav a:hover:after,.desktop-nav a.is-active:after{transform:scaleX(1)}
.site-header .header-join{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:11px 22px;border:0;border-radius:30px;background:#0c6ef9;color:white!important;font-size:12px;margin-left:20px!important;line-height:1.5}.site-header .header-join svg{width:18px;height:18px}.site-header .header-join:hover{background:#0059d6}.site-header .brand-logo{width:215px}.home .site-header{height:84px;padding-left:5%;padding-right:5%}.home.odyssey-day .site-header{background:#ffffffee;backdrop-filter:blur(16px);color:#193257;border-bottom:1px solid #dce7f780}.home .mobile-nav{border-radius:0 0 20px 20px;padding:18px 6%;box-shadow:0 22px 45px #00144415}.home .mobile-nav a{padding:17px 0;font-size:17px;border-color:#c7dbff24}.home .mobile-nav small{font-size:8px}
@media(min-width:1024px){.home .site-header .menu-toggle,.site-header .menu-toggle{display:none}.home .mobile-nav{display:none!important}}
@media(max-width:1100px){.desktop-nav{gap:21px}.site-header .brand-logo{width:190px}.site-header.odyssey-header{gap:18px}.network-copy h3{font-size:34px}.practice-columns>article{padding:29px}}
@media(max-width:1023px){.desktop-nav{display:none}.site-header .header-join{margin-left:auto!important}.home .site-header .menu-toggle{display:flex}.home .site-header{height:76px}.home .mobile-nav{top:76px}.presentation-main h2{font-size:40px}.network-layout{gap:15px}.japan-company{padding:28px}.story-path{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.presentation-wrap{width:auto;margin:0 23px}.presentation-section{padding:70px 0;scroll-margin-top:76px}.presentation-main h2{font-size:32px;line-height:1.38;letter-spacing:-.035em;font-weight:650}.presentation-label{font-size:9px;letter-spacing:1.7px;margin-bottom:19px}.presentation-lead{font-size:14px;line-height:1.95}.ground-heading{margin-bottom:18px;text-align:center}.ground-heading h2{font-size:31px}.ground-heading .presentation-lead{font-size:13px;margin-top:20px}.network-layout{display:flex;flex-direction:column-reverse;gap:0}.network-globe-frame{width:calc(100% + 20px);aspect-ratio:1;min-height:0;margin:0 -10px}.network-copy{padding:12px 0 0;width:100%}.network-copy h3{font-size:31px;margin:19px 0}.network-copy>p:not(.network-eyebrow){font-size:14px}.network-eyebrow{font-size:11px}.network-pills{margin:20px 0 24px}.globe-caption{font-size:9px;bottom:6px}.globe-controls{bottom:32px;right:14px}.globe-controls button{min-height:40px;min-width:40px}.globe-controls #globe-toggle{font-size:9px}.presentation-link,.action-primary{font-size:13px;min-height:46px;padding:12px 25px}.story-path{gap:12px;margin-top:35px}.story-path li,.story-path li:not(:first-child){padding:23px 18px;border-radius:14px}.story-path-number{font-size:26px}.story-path h3{font-size:18px}.story-path p{font-size:12px;line-height:1.85}.story-statement{font-size:17px;line-height:1.9;margin-top:30px}.practice-columns{margin-top:32px}.practice-columns>article{padding:26px 23px;border-radius:19px}.practice-columns>article+article{margin-top:18px}.practice-columns h3{font-size:25px}.model-families{gap:12px;margin-top:22px}.model-families div{padding:15px 12px}.model-families strong{font-size:23px}.model-families span{font-size:9px}.practice-description{font-size:13px}.practice-topics summary{font-size:14px;padding:18px 0}.direction-steps{gap:15px;margin-top:35px}.direction-steps li{padding:23px}.direction-steps p{font-size:13px}.direction-steps h3{font-size:23px}.japan-company{margin-top:33px;padding:28px 25px;border-radius:18px}.presentation-main h3.company-wordmark{font-size:37px;letter-spacing:-.055em}.company-business{font-size:13px}.company-information dl>div{font-size:11px;grid-template-columns:65px 1fr;gap:12px}.participation-options{gap:15px;margin-top:34px}.participation-option{padding:25px 22px 20px;grid-template-columns:32px 1fr;column-gap:14px;border-radius:18px}.participation-number{font-size:23px}.participation-option h3{font-size:23px}.participation-option>p{font-size:13px;margin-bottom:18px}.participation-action{font-size:13px;padding-top:13px}.site-header .brand-logo{width:170px}.home .site-header{padding:0 21px}.site-header .header-join{font-size:10px;padding:9px 14px;gap:9px}.home .site-header .menu-toggle{margin-left:1px}.site-header.odyssey-header{gap:12px}.home .mobile-nav{left:10px;right:10px;width:auto;top:70px;border-radius:18px}.presentation-footer-top{padding-top:30px}.presentation-footer-bottom{font-size:10px}.presentation-credits{font-size:9px}}
@media(prefers-reduced-motion:reduce){.presentation-main *{transition:none!important}}

.home:not(.odyssey-day) .site-header .desktop-nav a{color:#f4f8ff}.home:not(.odyssey-day) .site-header{background:linear-gradient(#031126b8,#03112600)}
