/* Consultation and legal footer form one final chapter. */
body .contact-band.contact-with-footer,html.has-home-chapters #home-contact.contact-with-footer{padding-top:calc(var(--ir-header-height,102px) + 24px);padding-bottom:22px;min-height:100dvh}
.contact-band.contact-with-footer>.detail-contact-frame{gap:24px}
/* Fill the home chapter and reserve its lower edge for the legal footer.
   Equal auto margins preserve the consultation content's vertical position. */
html.has-home-chapters #home-contact.contact-with-footer{align-items:stretch}
#home-contact.contact-with-footer>.detail-contact-frame>.detail-contact-main,
#home-contact.contact-with-footer>.detail-contact-frame>.consult-footer{margin-top:auto}
.contact-with-footer .detail-contact-kicker{margin-bottom:14px}
.contact-with-footer .detail-contact-lead{margin-top:14px}
.contact-with-footer .consult-preparation{margin-top:20px;padding-top:16px}
.contact-with-footer .consult-preparation h3{margin-bottom:12px}
.contact-with-footer .consult-channels{padding-top:20px}
.contact-with-footer .consult-social>a{min-height:70px;padding:12px 16px}
.consult-footer{border-top:1px solid #ffffff26;padding-top:18px;color:#9caabd;font-size:12px;line-height:1.8}
.consult-footer-top{display:flex;align-items:center;justify-content:space-between;gap:24px}
.consult-footer-top>strong{font-size:14px;color:#d2dbe7;font-weight:600;white-space:nowrap}
.consult-footer nav{display:flex;gap:12px 22px;flex-wrap:wrap}
.consult-footer nav a{font-size:13px;color:#b6c2d1}
.consult-footer dl{display:flex;gap:2px 20px;flex-wrap:wrap;margin:12px 0 0}
.consult-footer dl>div{display:flex;gap:8px}.consult-footer dd{margin:0}.consult-footer dt{color:#8192a7}
.consult-footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:10px}
.consult-footer-bottom small{font-size:12px;color:#8496ac}.consult-footer-bottom a{padding-block:6px}
@media(min-width:801px) and (max-height:780px){
 .contact-with-footer .detail-contact-main{gap:36px}
 .contact-with-footer h2{font-size:32px!important;line-height:1.4!important}
 .contact-with-footer .detail-contact-channel{padding-block:12px}
 .contact-with-footer .detail-contact-hours{margin:12px 0 18px}
 .contact-with-footer .detail-contact-lead{font-size:15px;line-height:1.75}
 .contact-with-footer .detail-contact-kicker{margin-bottom:10px}
 .contact-band.contact-with-footer>.detail-contact-frame{gap:18px}
 .contact-with-footer .consult-channels{padding-top:16px}
 .contact-with-footer .consult-preparation{margin-top:16px;padding-top:12px}
 .contact-with-footer .consult-social>a{min-height:62px;padding-block:9px}
 .consult-footer{padding-top:14px}.consult-footer dl{margin-top:8px}
 .consult-footer-bottom{margin-top:4px}
}
@media(max-width:800px){
 .contact-band.contact-with-footer>.detail-contact-frame{gap:28px}
 .consult-footer-top{display:block}.consult-footer nav{margin-top:16px;gap:8px 20px}
 .consult-footer nav a{min-height:32px;display:flex;align-items:center}
 .consult-footer dl{display:grid;gap:5px}.consult-footer-bottom{align-items:flex-start}
 .consult-footer-bottom small{max-width:245px}
 body .contact-band.contact-with-footer,html.has-home-chapters #home-contact.contact-with-footer{padding-bottom:80px}
}

/* Company chapters keep their content within the desktop viewport by composition. */
.company-screen-page .detail-section[data-detail-chapter]{padding-top:calc(var(--ir-header-height,102px) + 22px);padding-bottom:28px}
.company-screen-page [data-detail-chapter] .detail-section-heading{margin-bottom:26px}
.company-screen-page .detail-section-heading>p{margin-top:14px}
.company-screen-page .company-overview>.container{display:grid;grid-template-columns:1.05fr 1fr;gap:0 44px}
.company-screen-page .company-overview .detail-section-heading{grid-column:1/-1}
.company-screen-page .company-overview .company-hq{height:clamp(300px,46dvh,430px);align-self:center}
.company-screen-page .company-hq figcaption{left:25px;bottom:24px}
.company-screen-page .company-hq figcaption strong{font-size:23px}
.company-screen-page .company-hq figcaption p{margin-top:5px}
.company-screen-page .company-overview-bottom{display:block;margin:0}
.company-screen-page .company-overview-story .detail-kicker{display:none}
.company-screen-page .company-overview-story h3{font-size:22px;line-height:1.5}
.company-screen-page .company-overview-story h3 br{display:none}
.company-screen-page .company-overview-bottom>.company-overview-story>p{font-size:15px;line-height:1.8;margin-top:10px;max-width:none}
.company-screen-page .company-facts{margin-top:20px}
.company-screen-page .company-facts>div{padding:7px 0;font-size:14px;gap:15px;grid-template-columns:78px 1fr}
.company-screen-page .company-network-summary{padding:0;border:0;grid-template-columns:1fr 1fr;gap:40px}
.company-screen-page .company-network-map{max-width:350px;margin:auto}
.company-screen-page .company-network-map figcaption{gap:5px}
.company-screen-page .company-network-number>strong{font-size:84px}
.company-screen-page .company-network-copy .company-network-number{margin-bottom:18px}
.company-screen-page .company-network-summary p{font-size:15px;line-height:1.8;margin-top:13px}
.company-screen-page .company-branch-screen .company-branches{margin-top:0;gap:14px 25px}
.company-screen-page .company-branch-screen .company-branch{padding:0 0 10px}
.company-screen-page .company-branch-screen summary{padding:9px 0;gap:12px}
.company-screen-page .company-branch-screen .company-branch>div{padding:0 0 0 28px}
.company-screen-page .company-branch-screen .company-branch p{line-height:1.6;font-size:14px}
.company-screen-page .company-branch-screen .company-branch a{margin-top:5px;font-size:14px}
.company-screen-page .company-lab-gallery figure>div{height:clamp(190px,29dvh,290px)}
.company-screen-page .company-lab-gallery figcaption{padding-top:16px}
.company-screen-page .company-lab-gallery h3{margin-top:8px;font-size:18px;line-height:1.5}
.company-screen-page .company-lab-gallery p{margin-top:9px;font-size:15px;line-height:1.8}
.company-principles{background:#f3f6f9}
.company-screen-page .company-capability-lines{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;border:0;margin-top:38px}
.company-screen-page .company-capability-lines article{display:block;padding:28px 0;border-top:1px solid #c5cfdb;border-bottom:0}
.company-screen-page .company-capability-lines article>span{font-size:42px;color:#bb8258;font-weight:450}
.company-screen-page .company-capability-lines h3{margin:26px 0 14px;font-size:22px}
.company-screen-page .company-capability-lines p{font-size:16px;line-height:1.9}
.company-screen-page .company-case-grid{gap:22px}
.company-screen-page .company-case figure{height:clamp(145px,22dvh,230px)}
.company-screen-page .company-case>div{padding-top:14px}
.company-screen-page .company-case h3{margin:6px 0 10px;font-size:23px}
.company-screen-page .company-case strong,.company-screen-page .company-case p{font-size:15px;line-height:1.75}
.company-screen-page .company-case p{margin-top:8px}
.company-screen-page .company-public-support{margin:0;padding:0;border:0;grid-template-columns:1fr 1.1fr;gap:50px}
.company-screen-page .company-public-intro h3{font-size:30px}
.company-screen-page .company-public-intro>p{font-size:15px;line-height:1.8;margin-top:14px}
.company-screen-page .company-public-photos{margin-top:24px;gap:14px}
.company-screen-page .company-public-photos figure{margin:0}
.company-screen-page .company-public-photos img{height:170px}
.company-screen-page .company-public-records li{padding:15px 0;gap:18px;grid-template-columns:85px 1fr}
.company-screen-page .company-public-records h4{font-size:17px;margin-bottom:5px}
.company-screen-page .company-public-records p{font-size:14px;line-height:1.75}
.company-screen-page .company-partner-feature{grid-template-columns:1.3fr .85fr;gap:44px}
.company-screen-page .company-partner-copy{padding-top:0}
.company-screen-page .company-partner-copy h3{font-size:21px}
.company-screen-page .company-partner-copy>p{font-size:15px;line-height:1.8;margin-top:12px}
.company-screen-page .company-partner-copy ul{margin-top:20px;gap:0 25px}
.company-screen-page .company-partner-copy li{padding:12px 0}
.company-screen-page .company-legal-gallery{padding:18px;gap:10px}
.company-screen-page .company-legal-gallery img{height:135px;object-fit:cover}
.company-screen-page .company-legal-gallery figure{margin:0}
.company-screen-page .company-legal-gallery figcaption{font-size:12px;margin-top:5px}
.company-history-browser{display:grid;grid-template-columns:.75fr 1.25fr;gap:54px;align-items:center;overflow-anchor:none}
.company-history-years{display:grid;gap:22px}
.company-history-era>span{font-size:13px;color:#8c7563;display:block;margin-bottom:10px}
.company-history-era>div{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.company-history-years button{min-height:43px;background:none;border:1px solid #d7dfe7;color:#6e7c8d;font:500 15px/1.5 Manrope,sans-serif;cursor:pointer}
.company-history-years button[aria-selected=true]{background:#18293b;border-color:#18293b;color:#fff}
.company-history-years button:hover{border-color:#b77f56}
.company-history-years button:focus-visible{outline:2px solid #c7804e;outline-offset:3px}
.company-history-stage{min-height:360px;border-left:1px solid #d6dfe7;padding-left:44px;display:grid;align-items:center}
.company-history-panel[hidden]{display:none}
.company-record-year{font:450 clamp(45px,5vw,70px)/1.3 Manrope,sans-serif;color:#b67b51}
.company-history-record ul{list-style:none;padding:0;margin:16px 0 0}
.company-history-record li{font-size:18px;line-height:1.7;word-break:keep-all;color:#34465c}
.company-history-record li+li{margin-top:8px}
.company-history-panel figure{margin:20px 0 0}
.company-history-panel .history-photo{height:170px;aspect-ratio:auto;max-width:420px}
.company-history-panel figcaption{font-size:12px;color:#7e8d9e;margin-top:7px}
@media(min-width:801px) and (max-height:760px){
 .company-screen-page [data-detail-chapter] .detail-section-heading h2{font-size:29px;line-height:1.4}
 .company-screen-page [data-detail-chapter] .detail-section-heading{margin-bottom:22px}
 .company-screen-page .detail-section-heading>p{font-size:14px;line-height:1.7;margin-top:10px}
 .company-screen-page .detail-section-heading .detail-kicker{margin-bottom:10px}
 .company-screen-page .company-network-map{max-width:288px}
 .company-screen-page #center .detail-section-heading{margin-bottom:14px}
 .company-screen-page .company-network-map figcaption{gap:0}
 .company-screen-page .company-network-summary h3{font-size:21px}
 .company-screen-page .company-branch-screen .company-branches{row-gap:10px}
 .company-screen-page .company-partner-copy li{padding:7px 0}
 .company-screen-page #partnerships .detail-section-heading{margin-bottom:14px}
 .company-screen-page .company-legal-gallery img{height:120px}
 .company-history-stage{min-height:330px}
 .company-record-year{font-size:52px;line-height:1.2}
 .company-history-record li{font-size:17px;line-height:1.65}
 .company-history-panel .history-photo{height:150px}
}
@media(max-width:1100px) and (min-width:801px){
 .company-screen-page .company-case-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
 .company-screen-page .company-case h3{font-size:20px}
 .company-screen-page .company-case strong,.company-screen-page .company-case p{font-size:14px}
 .company-history-browser{gap:30px;grid-template-columns:1fr 1.2fr}.company-history-stage{padding-left:28px}
}
@media(max-width:800px){
 .company-screen-page .detail-section[data-detail-chapter]{min-height:0;padding-bottom:55px}
 .company-screen-page .company-overview>.container{display:block}
 .company-screen-page .company-overview .company-hq{height:320px;margin-bottom:28px}
 .company-screen-page .company-overview-story h3{font-size:23px}
 .company-screen-page .company-facts>div{padding:12px 0}
 .company-screen-page .company-network-summary,.company-screen-page .company-public-support,.company-screen-page .company-partner-feature{grid-template-columns:1fr;gap:30px}
 .company-screen-page .company-branches{grid-template-columns:1fr}
 .company-screen-page .company-branch-screen .company-branch{padding-bottom:18px}
 .company-screen-page .company-capability-lines{grid-template-columns:1fr;gap:18px;margin-top:0}
 .company-screen-page .company-capability-lines h3{margin-top:12px}
 .company-screen-page .company-case-grid{grid-template-columns:1fr 1fr;gap:30px 20px}
 .company-screen-page .company-public-photos img{height:150px}
 .company-screen-page .company-legal-gallery img{height:auto;max-height:230px;object-fit:contain}
 .company-history-browser{grid-template-columns:1fr;gap:30px}
 .company-history-years{gap:14px}
 .company-history-stage{min-height:0;padding:24px 0 0;border-left:0;border-top:1px solid #d6dfe7}
 .company-history-panel .history-photo{height:200px}
}
@media(max-width:480px){.company-screen-page .company-case-grid{grid-template-columns:1fr}.company-screen-page .company-case figure{height:200px}}

/* A single nationwide chapter connects the map and the branch directory. */
.company-network-unified{position:relative}
.company-network-anchor{position:absolute;top:0;left:0;width:1px;height:1px;pointer-events:none}
.company-screen-page .company-network-unified-grid{display:grid;grid-template-columns:minmax(250px,.33fr) minmax(0,.67fr);gap:clamp(30px,4vw,60px);align-items:center}
.company-screen-page .company-network-unified .company-network-map{width:100%;max-width:350px}
.company-screen-page .company-network-unified .company-network-map figcaption{font-size:12px;line-height:1.5}
.company-screen-page .company-network-unified .company-branches{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 24px;margin:0}
.company-screen-page .company-network-unified .company-branch{padding:0 0 13px;min-width:0}
.company-screen-page .company-network-unified .company-branch summary{padding:7px 0 4px;gap:10px}
.company-screen-page .company-network-unified .company-branch strong{font-size:16px;font-weight:600}
.company-screen-page .company-network-unified .company-branch>div{padding:0 0 0 27px}
.company-screen-page .company-network-unified .company-branch a{margin:0 0 6px;font-size:15px;line-height:1.6}
.company-screen-page .company-network-unified .company-branch p{font-size:14px;line-height:1.55;margin:0;word-break:keep-all}
.company-network-visit-note{margin:17px 0 0;color:#8494a8;font-size:13px;line-height:1.7;word-break:keep-all}
.company-screen-page .company-infrastructure .company-lab-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}
.company-screen-page .company-infrastructure .company-lab-gallery h3{font-size:22px;line-height:1.5;letter-spacing:-.04em}
.company-screen-page .company-infrastructure .company-lab-gallery figcaption>span{font-size:12px;letter-spacing:.025em}
@media(min-width:801px) and (max-height:760px){
 .company-screen-page .company-network-unified .company-network-map{max-width:290px}
 .company-screen-page .company-network-unified .company-map-capital a{min-height:28px;font-size:13px}
 .company-screen-page .company-network-unified .company-branches{row-gap:9px}
 .company-screen-page .company-network-unified .company-branch{padding-bottom:9px}
 .company-screen-page .company-network-unified .company-branch summary{padding-top:4px}
 .company-screen-page .company-network-unified .company-branch>div{padding-left:0}
 .company-screen-page .company-network-unified-grid{grid-template-columns:minmax(240px,.3fr) minmax(0,.7fr);gap:32px}
 .company-screen-page .company-infrastructure .company-lab-gallery h3{font-size:20px}
}
@media(min-width:1101px) and (max-height:760px){
 .company-screen-page #center .detail-section-heading h2{font-size:27px}
 .company-screen-page #center .detail-section-heading h2 br{display:none}
}
@media(min-width:801px) and (max-width:1100px){
 .company-screen-page .company-network-unified-grid{grid-template-columns:minmax(220px,.3fr) minmax(0,.7fr);gap:24px}
 .company-screen-page .company-network-unified .company-branches{gap:10px 16px}
 .company-screen-page .company-network-unified .company-branch>div{padding-left:0}
 .company-screen-page .company-network-unified .company-branch summary{gap:7px}
}
@media(max-width:800px){
 .company-screen-page .company-network-unified-grid{grid-template-columns:1fr;gap:32px}
 .company-screen-page .company-network-unified .company-network-map{max-width:380px}
 .company-screen-page .company-network-unified .company-branches{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px}
 .company-screen-page .company-network-unified .company-branch>div{padding-left:0}
 .company-screen-page .company-infrastructure .company-lab-gallery{grid-template-columns:1fr;gap:32px}
 .company-screen-page .company-infrastructure .company-lab-gallery figure{grid-column:auto}
 .company-screen-page .company-infrastructure .company-lab-gallery figure>div{height:240px}
}
@media(max-width:450px){
 .company-screen-page .company-network-unified .company-branches{grid-template-columns:1fr}
 .company-screen-page .company-network-unified .company-branch summary{padding-block:10px}
}

/* Eight key milestones, visible together on one chronological axis. */
.company-screen-page .company-journey-section{background:#f7f9fb}
.company-screen-page .company-journey-section>.container{width:min(1500px,calc(100% - var(--page-gutter)*2))}
.company-screen-page .company-journey-section .detail-section-heading{max-width:none;margin-bottom:25px}
.company-journey{padding-top:8px}
.company-journey-line{position:relative;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));height:354px}
.company-journey-line:before{content:'';position:absolute;top:50%;left:6.25%;right:6.25%;height:2px;transform:translateY(-50%);background:linear-gradient(90deg,#bcc9d5,#a8b7c6 29%,#d29c71 58%,#bd7d4e)}
.journey-milestone{position:relative;--journey-ink:#71859c;min-width:0}
.journey-response{--journey-ink:#bd885f}.journey-expansion{--journey-ink:#b77748}
.journey-node{position:absolute;top:50%;left:50%;width:11px;height:11px;border-radius:50%;background:var(--journey-ink);border:3px solid #f7f9fb;outline:1px solid var(--journey-ink);transform:translate(-50%,-50%);z-index:1}
.journey-milestone:after{content:'';position:absolute;left:50%;top:calc(50% - 26px);height:21px;width:1px;background:#cbd5df}
.journey-milestone:nth-child(even):after{top:calc(50% + 5px)}
.journey-record{position:absolute;left:50%;bottom:calc(50% + 35px);width:calc(200% - 28px);max-width:265px;transform:translateX(-50%);text-align:center}
.journey-milestone:nth-child(even) .journey-record{bottom:auto;top:calc(50% + 35px)}
.journey-milestone:first-child .journey-record{left:0;transform:none;text-align:left}
.journey-milestone:last-child .journey-record{left:auto;right:0;transform:none;text-align:right}
.journey-record time{display:block;color:var(--journey-ink);font:500 clamp(28px,2.2vw,36px)/1.1 Manrope,sans-serif;letter-spacing:-.035em}
.journey-record h3{margin:12px 0 0;color:#263749;font-size:17px;line-height:1.5;font-weight:650;letter-spacing:-.04em;word-break:keep-all}
.journey-record p{margin:8px 0 0;font-size:14px;line-height:1.65;color:#7b8795;word-break:keep-all}
.company-journey-eras{display:grid;grid-template-columns:2fr 3fr 3fr;gap:20px;margin-top:14px}
.company-journey-eras span{border-top:2px solid #d5dfe8;padding-top:13px;font-size:13px;color:#8391a2;text-align:center;letter-spacing:-.02em}
.company-journey-eras span:nth-child(2){border-color:#e2c7b2;color:#a08067}
.company-journey-eras span:nth-child(3){border-color:#c99873;color:#a17755}
@media(min-width:801px) and (max-height:760px){
 .company-screen-page .company-journey-section .detail-section-heading{margin-bottom:17px}
 .company-journey-line{height:308px}
 .journey-record time{font-size:28px}
 .journey-record h3{margin-top:10px;font-size:16px}
 .journey-record p{font-size:14px;margin-top:6px;line-height:1.6}
 .journey-record{bottom:calc(50% + 29px)}
 .journey-milestone:nth-child(even) .journey-record{top:calc(50% + 29px)}
 .company-journey-eras{margin-top:13px}
}
@media(min-width:801px) and (max-width:1100px){
 .company-screen-page .company-journey-section>.container{width:calc(100% - 96px)}
 .journey-record{width:calc(200% - 14px)}
 .journey-record h3{font-size:15px}
 .journey-record p{font-size:13px}
 .journey-record time{font-size:27px}
}
@media(max-width:800px){
 .company-screen-page .company-journey-section .detail-section-heading{text-align:left;margin-bottom:32px}
 .company-screen-page .company-journey-section .detail-section-heading h2{max-width:410px}
 .company-screen-page .company-journey-section .detail-section-heading>p{margin-left:0;max-width:420px}
 .company-journey-line{height:auto;display:block;padding-left:0}
 .company-journey-line:before{top:11px;bottom:11px;left:7px;right:auto;width:1px;height:auto;transform:none;background:linear-gradient(#b5c6d6,#bd7d4e)}
 .journey-milestone{padding:0 0 28px 34px}
 .journey-milestone:last-child{padding-bottom:0}
 .journey-milestone:after{display:none}
 .journey-node{left:7px;top:12px}
 .journey-record,.journey-milestone:nth-child(even) .journey-record,.journey-milestone:first-child .journey-record,.journey-milestone:last-child .journey-record{position:static;transform:none;text-align:left;width:auto;max-width:none;display:grid;grid-template-columns:70px 1fr;gap:5px 15px}
 .journey-record time{grid-row:1/3;font-size:25px;line-height:1.3}
 .journey-record h3{font-size:16px;margin:0}
 .journey-record p{grid-column:2;font-size:14px;margin:0;line-height:1.7}
 .company-journey-eras{display:none}
}
