/* Reference-inspired atmosphere, confined to the network and lower-page links. */
.network-stage{width:min(1400px,100%);height:590px}
.network-copy{max-width:46%;top:48%}
.node-partnership{left:10%;top:3%;width:218px}
.node-culture{left:5%;bottom:8%;width:166px}
.node-region{right:9%;top:5%;width:186px}
.node-sharing{right:4%;bottom:3%;width:222px}
.network-photo{padding:9px;box-shadow:0 12px 32px #508cba17}
.network-word{position:absolute;display:grid;align-content:center;text-align:center;width:122px;height:122px;border-radius:50%;color:#80a9cd;background:#eaf5ff9c;font-size:12px;line-height:1.65;font-weight:700;letter-spacing:.07em;pointer-events:none}
.word-connect{left:0;top:8%}.word-tomorrow{right:0;top:36%}
.network-orbit{position:absolute;width:380px;height:430px;border:1px solid #bed9ec40;border-radius:50%;pointer-events:none;transform:rotate(24deg)}
.orbit-left{left:-2%;top:3%}.orbit-right{right:-2%;top:2%;transform:rotate(-24deg)}
.spark-one{left:27%;top:9%;width:40px;height:40px;opacity:.6}.spark-two{right:27%;bottom:13%}.spark-three{right:3%;top:8%;width:48px;height:48px;opacity:.45}
.renewal .latest-news{border-top:0}
.news-preview-note{font-size:14px;color:#6b7d91;margin:0 0 20px}
.news-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.news-preview-card{overflow:hidden;border:1px solid #e5edf5;border-radius:18px;background:#fff}
.news-preview-card>img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.news-preview-card>div{padding:24px}
.news-preview-card small{font-size:14px;color:#2860a5;font-weight:700}
.renewal .news-preview-card h3{font-size:22px;line-height:1.45;word-break:keep-all;margin:12px 0}
.news-preview-card p{font-size:17px;line-height:1.75;color:#617086;margin:0}
.renewal .shortcut-section>a{display:grid;grid-template-columns:64px 1fr auto;column-gap:22px;row-gap:8px;align-content:center;padding:28px;border-radius:18px}
.shortcut-icon{grid-column:1;grid-row:1/4;width:64px;height:64px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle,#e8f3ff, #f7fbff 70%);color:#245fa7}
.shortcut-icon svg{width:38px;height:38px;transition:transform .2s}
.renewal .shortcut-section h3{grid-column:2;grid-row:1;font-size:23px}
.renewal .shortcut-section small{grid-column:2;grid-row:2;font-size:16px;line-height:1.65}
.renewal .shortcut-section small br{display:none}
.renewal .shortcut-section .gradient-button{grid-column:3;grid-row:1/3;margin:0;padding:0;background:transparent;color:#2860a5;font-size:13px;min-height:0;white-space:nowrap}
.renewal .shortcut-section>a:hover .shortcut-icon svg{transform:translateY(-2px)}
@media(max-width:1150px){
 .network-word{width:90px;height:90px;font-size:10px;opacity:.7}.word-connect{top:1%}.word-tomorrow{top:36%}
 .node-partnership{left:5%;width:205px}.node-region{right:5%;width:173px}.node-culture{left:7%;width:152px}.node-sharing{right:5%;width:200px}
 .renewal .shortcut-section>a{grid-template-columns:56px 1fr;gap:8px 18px}
 .shortcut-icon{width:56px;height:56px}.renewal .shortcut-section .gradient-button{grid-column:2;grid-row:3;justify-self:start;margin-top:4px}
}
@media(max-width:760px){
 .network-stage{height:760px}.network-copy{max-width:500px;top:48%}
 .node-partnership{width:147px;left:9%;top:2%}.node-region{width:110px;right:9%;top:9%}
 .node-culture{width:108px;left:12%;bottom:7%}.node-sharing{width:152px;right:9%;bottom:1%}
 .network-photo{padding:5px}.network-word{width:72px;height:72px;font-size:8px;opacity:.55}.word-connect{left:-25px;top:21%}.word-tomorrow{right:-24px;top:65%}
 .network-orbit{width:280px;height:230px}.orbit-left{left:-20%;top:0}.orbit-right{right:-20%;top:auto;bottom:0}
 .spark-one{left:52%;top:5%;width:18px;height:18px}.spark-three{right:-12px;top:42%;width:32px;height:32px}
 .news-preview-grid{grid-template-columns:1fr;gap:22px}.news-preview-card>div{padding:22px}
 .renewal .shortcut-section>a{padding:22px;grid-template-columns:48px 1fr;gap:8px 16px}.shortcut-icon{width:48px;height:48px}.shortcut-icon svg{width:32px;height:32px}
 .renewal .shortcut-section h3{font-size:22px}
}
@media(prefers-reduced-motion:reduce){.shortcut-icon svg{transition:none}}

/* A dedicated inquiry destination before the footer. */
.contact-section{padding:80px 0 100px;background:linear-gradient(145deg,#f1f7ff,#fff 55%,#fff8ed);scroll-margin-top:100px}
.contact-heading{text-align:center;margin:0 auto 44px}
.renewal .contact-heading h2{font-size:clamp(30px,3.2vw,44px);line-height:1.4;letter-spacing:-.05em;margin:16px 0 20px;word-break:keep-all}
.contact-heading em{font-style:normal;color:#245da6}
.contact-heading p{font-size:18px;line-height:1.8;color:#617086}
.contact-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:56px;align-items:center}
.renewal .contact-topics h3{font-size:24px;margin:0 0 14px;word-break:keep-all}
.contact-topics>div{display:flex;gap:22px;padding:27px 0;border-bottom:1px solid #dce5ef}
.contact-topics>div>span{color:#427ab7;font-size:14px;padding-top:5px}
.renewal .contact-topics h4{font-size:21px;margin:0 0 9px;color:#19385d}
.contact-topics p{font-size:17px;line-height:1.75;color:#617086;margin:0;word-break:keep-all}
.contact-channel{position:relative;border:1px solid #dae6f4;background:#fff;border-radius:24px;padding:40px;overflow:hidden}
.contact-stamp{position:absolute;right:27px;top:24px;width:48px;height:48px;border-radius:50%;background:#fff0db;color:#b36a21;display:grid;place-items:center;font-size:26px}
.contact-channel .section-label{font-size:13px;padding-right:40px}
.renewal .contact-channel h3{font-size:30px;line-height:1.5;margin:22px 0 15px;letter-spacing:-.04em}
.contact-channel p{font-size:17px;line-height:1.85;color:#617086;margin:0 0 24px}
.contact-email{display:block;color:#245da6;font-size:clamp(20px,2.2vw,28px);font-weight:700;overflow-wrap:anywhere;text-underline-offset:6px}
.contact-email:hover{text-decoration:underline}
.contact-mail-hint{display:block;font-size:13px;color:#748295;margin:10px 0 24px}
.contact-phone{display:flex;gap:20px;align-items:center;border-top:1px solid #e4eaf2;padding-top:22px;font-size:15px;color:#617086}
.contact-phone a{font-size:21px;font-weight:700;color:#19385d}
@media(max-width:760px){.contact-section{padding:56px 0 64px}.contact-heading{margin-bottom:32px}.contact-heading p{font-size:17px}.contact-layout{grid-template-columns:1fr;gap:32px}.contact-topics>div{padding:23px 0;gap:16px}.contact-channel{padding:28px 24px}.renewal .contact-topics h3{font-size:22px}.renewal .contact-channel h3{font-size:28px}.contact-channel p br{display:none}.contact-stamp{right:20px;top:20px;width:38px;height:38px;font-size:23px}.contact-phone{gap:14px}}
