/* Kwic / COMPANY — shared typography and palette, precise company information. */
.company-page{--co-space:clamp(75px,8vw,128px)}html.motion-off{scroll-behavior:auto}
.co-hero{padding-top:var(--header);overflow:hidden}.co-breadcrumb{display:flex;align-items:center;gap:18px;font-size:10px;letter-spacing:.04em;padding-top:30px}.co-breadcrumb a{display:inline-flex;align-items:center;min-height:28px;font:9px Arial;letter-spacing:.1em}.co-breadcrumb>span:last-child{font-size:10px}.co-title-row{display:flex;align-items:baseline;justify-content:space-between;gap:35px;margin-top:30px;padding-bottom:37px;border-bottom:1px solid var(--ink)}.co-title-row h1{font-size:clamp(72px,8.7vw,138px);font-weight:900;letter-spacing:-.075em;line-height:1.25}.co-title-row h1>span{position:relative;display:inline-block}.co-title-row h1>span:before{content:'';position:absolute;right:-.01em;bottom:.14em;width:.32em;height:.32em;border-radius:50%;background:var(--sun);z-index:-1}.co-english{font:900 clamp(32px,5.4vw,84px)/1 Arial;letter-spacing:-.055em;padding-right:.04em}.co-section-nav{display:flex;justify-content:flex-end;gap:35px;min-height:58px;border-bottom:1px solid var(--line);font-size:10px}.co-section-nav a{display:flex;align-items:center;gap:25px;min-height:44px}.co-section-nav a>span{font:17px Arial;transition:transform .35s var(--ease)}.co-section-nav a:hover>span{transform:translateY(4px)}
.co-hero-images{position:relative;margin-top:42px;display:grid;grid-template-columns:2.6fr 1fr;gap:28px;min-height:455px;isolation:isolate}.co-team-photo{height:392px;min-width:0;position:relative;background:var(--muted)}.co-team-photo img{object-position:center 65%}.co-team-photo figcaption{font:9px Arial;letter-spacing:.08em;margin-top:15px}.co-worker-photo{position:relative;height:350px;margin-top:62px;transform:rotate(4deg);border:8px solid var(--paper);min-width:0;background:var(--paper)}.co-worker-photo img{object-position:48% 40%}.co-symbol{position:absolute;right:23%;top:15px;width:95px;height:95px;background:var(--sun);border-radius:50%;display:grid;place-items:center;z-index:3;pointer-events:none}.co-symbol svg{width:54px;height:54px}.co-hero-word{position:absolute;left:16%;bottom:-42px;font:900 clamp(110px,17vw,260px)/.8 Arial;letter-spacing:-.085em;color:transparent;-webkit-text-stroke:1px rgba(18,56,46,.23);z-index:-1;pointer-events:none}.co-hero-bottom{display:flex;align-items:center;justify-content:space-between;font:9px Arial;letter-spacing:.08em;margin-top:20px;padding-bottom:28px}.co-hero-bottom .scroll-hint{font-size:8px}
/* Native table; nothing depends on interactive charts or hidden panels. */
.co-profile{padding-block:var(--co-space)}.co-profile-grid{display:grid;grid-template-columns:.72fr 1.65fr;gap:9vw;align-items:start}.co-profile-side{position:sticky;top:125px;min-width:0}.co-profile-side h2{font-size:clamp(38px,4vw,62px);font-weight:900;letter-spacing:-.06em;line-height:1.5;margin-top:25px}.co-profile-photo{height:235px;margin-top:35px;position:relative;background:var(--muted)}.co-profile-photo img{object-position:center}.co-profile-photo figcaption{font:8px Arial;letter-spacing:.08em;margin-top:13px;background:var(--paper);color:var(--ink)}.co-side-mark{font:9px Arial;letter-spacing:.08em;margin-top:43px;border-top:1px solid var(--line);padding-top:18px}.co-table-wrap{min-width:0}.co-profile-table{width:100%;border-collapse:collapse;table-layout:fixed}.co-profile-table th,.co-profile-table td{vertical-align:top;text-align:left;border-top:1px solid var(--line);padding-block:25px}.co-profile-table tr:last-child th,.co-profile-table tr:last-child td{border-bottom:1px solid var(--line)}.co-profile-table th{width:125px;font-size:12px;font-weight:700;padding-right:24px;padding-top:31px}.co-profile-table td{font-size:15px;line-height:2.05;overflow-wrap:anywhere;word-break:normal;line-break:strict}.co-profile-table td.co-company-name{font-size:29px;line-height:1.5;font-weight:800;letter-spacing:-.045em}.co-number{font:25px/1.4 Arial;letter-spacing:-.035em;display:inline-block}.co-profile-table a{display:inline-block}.co-profile-table a[href^="mailto"]{font:16px/1.8 Arial,sans-serif;padding-top:3px}.co-profile-table a:hover{text-decoration:underline;text-underline-offset:5px}.co-inline-arrow{display:inline-block;font:19px Arial;margin-left:24px}.co-capital{font-size:25px;letter-spacing:-.035em;line-height:1.5}.co-business-lines p+p{margin-top:12px}
.co-section-top{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--line);padding-top:22px;margin-bottom:55px}.co-index{font:9px Arial;letter-spacing:.08em}
/* The history is chronological text, with a quiet scroll-progress rail. */
.co-history{padding-block:var(--co-space) 65px;background:var(--ink);color:var(--paper);overflow:clip}.co-history .co-section-top{border-color:rgba(247,248,240,.25)}.co-history-grid{display:grid;grid-template-columns:.8fr 1.25fr;gap:10vw;align-items:start}.co-history-side{position:sticky;top:125px;min-width:0}.co-history-side h2{font-size:clamp(44px,5.6vw,84px);font-weight:900;letter-spacing:-.07em;line-height:1.4}.co-history-side h2>span{color:var(--lime)}.co-history-photo{height:350px;max-width:320px;position:relative;margin-top:37px;background:var(--muted)}.co-history-photo img{object-position:center 38%}.co-history-photo figcaption{font:8px Arial;letter-spacing:.08em;margin-top:13px;color:var(--paper);background:var(--ink)}.co-timeline{position:relative;padding-left:42px;min-width:0}.co-timeline-rail{position:absolute;left:0;top:8px;bottom:8px;width:1px;background:rgba(247,248,240,.25)}.co-timeline-rail i{display:block;width:100%;height:100%;transform-origin:top;background:var(--lime);transform:scaleY(.04)}.co-event{position:relative;padding:0 0 38px;margin:0 0 36px;border-bottom:1px solid rgba(247,248,240,.25)}.co-event:last-child{margin-bottom:0}.co-event-marker{position:absolute;left:-47px;top:5px;border:1px solid var(--lime);border-radius:50%;width:11px;height:11px;background:var(--ink)}.co-event-marker:after{content:'';position:absolute;inset:2px;background:var(--lime);border-radius:50%;opacity:0;transition:opacity .6s}.co-event.is-inview .co-event-marker:after{opacity:1}.co-event-index{font:9px Arial;letter-spacing:.1em;color:var(--lime);margin-bottom:13px}.co-event h3{font-size:clamp(22px,2.25vw,34px);font-weight:700;letter-spacing:-.025em;line-height:1.6}.co-event p{font-size:15px;line-height:2.1;margin-top:16px;overflow-wrap:anywhere;line-break:strict}.co-history-word{font:900 clamp(80px,12.5vw,200px)/1 Arial;letter-spacing:-.07em;color:transparent;-webkit-text-stroke:1px rgba(247,248,240,.3);white-space:nowrap;margin-left:var(--gutter);margin-top:75px;pointer-events:none}
/* Access: address always remains readable; map is loaded only on request. */
.co-access{padding-block:var(--co-space)}.co-access-heading{display:flex;justify-content:space-between;gap:50px;align-items:start;margin-bottom:52px}.co-access-heading h2{font-size:clamp(52px,6.7vw,104px);font-weight:900;letter-spacing:-.065em;line-height:1.5}.co-access-heading h2>span{position:relative}.co-access-heading h2>span:after{content:'';position:absolute;inset:auto -.02em .08em;width:.28em;height:.28em;border-radius:50%;background:var(--sun);z-index:-1}.co-access-company{padding-top:12px;min-width:350px}.co-access-company strong{font-size:18px;letter-spacing:-.025em}.co-access-company address{font-size:14px;line-height:2.1;font-style:normal;margin-top:12px}.co-access-tel{display:inline-flex;gap:20px;align-items:center;font:27px/1.4 Arial;letter-spacing:-.035em;margin-top:18px}.co-access-tel small{font-size:10px;letter-spacing:.08em}.co-map{position:relative;background:var(--muted);min-height:440px;overflow:hidden;isolation:isolate}.co-map-cover{position:absolute;inset:0;width:100%;height:100%}.co-map-cover img{object-position:center 62%}.co-map-overlay{position:absolute;left:35px;bottom:32px;z-index:3;background:var(--paper);padding:24px 28px;max-width:calc(100% - 70px);border:1px solid var(--ink)}.co-map-overlay .eyebrow{font-size:9px;letter-spacing:.08em}.co-map-actions{display:flex;gap:32px;align-items:center;margin-top:16px}.co-map-actions .solid-link{min-height:54px;min-width:195px;font-size:12px;padding:10px 12px 10px 22px}.co-map-actions .solid-link .link-arrow{height:34px;width:34px;font-size:23px}.co-map-actions .text-link{font-size:11px;gap:20px}.co-map-actions .text-link .link-arrow{height:34px;width:34px;font-size:19px}.co-map iframe{width:100%;height:440px;border:0;display:block;position:relative;z-index:2;background:var(--paper)}.co-map.is-map-visible{padding-bottom:121px;background:var(--paper)}.co-map.is-map-visible .co-map-overlay{left:0;right:0;bottom:0;max-width:none;width:100%;padding:19px 24px;border:0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.co-map.is-map-visible .co-map-actions{margin-top:0}.co-map.is-map-visible .co-map-cover{display:none}.co-map.is-map-visible .co-map-actions .solid-link{background:var(--paper);color:var(--ink);border:1px solid var(--ink)}.company-page .footer{border-top:1px solid var(--line)}.co-history :focus-visible{outline-color:var(--sun)}.motion-off .co-timeline-rail i{transform:scaleY(1)!important}
@media(max-width:1190px){.co-hero-images{gap:20px;min-height:410px}.co-team-photo{height:350px}.co-worker-photo{height:305px;margin-top:58px}.co-symbol{width:80px;height:80px;top:20px;right:21%}.co-symbol svg{width:45px;height:45px}.co-profile-grid{gap:6vw;grid-template-columns:.7fr 1.6fr}.co-profile-photo{height:210px}.co-profile-side h2{font-size:4.3vw}.co-profile-table th{width:105px;padding-right:20px;font-size:11px}.co-profile-table td{font-size:14px}.co-profile-table td.co-company-name{font-size:25px}.co-history-grid{gap:7vw}.co-history-photo{height:310px}.co-event h3{font-size:26px}.co-event p{font-size:14px}.co-access-company{min-width:300px}.co-map{min-height:390px}.co-map iframe{height:390px}}
@media(max-width:900px) and (min-width:768px){.co-title-row h1{font-size:82px}.co-english{font-size:45px}.co-section-nav{gap:28px}.co-hero-images{grid-template-columns:2.5fr 1fr;gap:15px;min-height:350px}.co-team-photo{height:290px}.co-worker-photo{height:255px;margin-top:45px;border-width:6px}.co-symbol{width:65px;height:65px;right:20%;top:14px}.co-symbol svg{width:36px;height:36px}.co-profile-grid{grid-template-columns:.65fr 1.6fr;gap:5vw}.co-profile-side h2{font-size:33px}.co-profile-photo{height:170px}.co-profile-table th{width:90px;padding-right:15px}.co-profile-table td{font-size:13px}.co-profile-table .co-number{font-size:22px}.co-profile-table a[href^="mailto"]{font-size:14px}.co-inline-arrow{margin-left:10px}.co-history-grid{gap:6vw;grid-template-columns:.75fr 1.25fr}.co-history-side h2{font-size:44px}.co-history-photo{height:280px}.co-timeline{padding-left:29px}.co-event-marker{left:-34px}.co-event h3{font-size:22px}.co-event p{font-size:13px}.co-access-heading{gap:35px}.co-access-heading h2{font-size:60px}.co-access-company{min-width:290px}.co-map-actions{gap:20px}.co-map-overlay{left:25px;bottom:25px;max-width:calc(100% - 50px)}}
@media(max-width:767px){.company-page{--co-space:65px}.co-breadcrumb{padding-top:18px;gap:13px;font-size:8px}.co-breadcrumb a,.co-breadcrumb>span:last-child{font-size:8px}.co-title-row{margin-top:22px;padding-bottom:25px;gap:15px;align-items:baseline}.co-title-row h1{font-size:clamp(49px,14.1vw,80px);line-height:1.35;letter-spacing:-.08em;white-space:nowrap}.co-english{font-size:25px;line-height:1;padding:0;letter-spacing:-.05em}.co-section-nav{justify-content:space-between;gap:13px;min-height:55px;font-size:9px}.co-section-nav a{gap:13px}.co-section-nav a>span{font-size:15px}.co-hero-images{display:block;margin-top:30px;min-height:348px;isolation:isolate}.co-team-photo{height:238px;width:100%}.co-team-photo img{object-position:center 57%}.co-team-photo figcaption{font-size:7px;margin-top:11px;letter-spacing:.06em}.co-worker-photo{position:absolute;right:1px;top:210px;margin:0;width:30%;height:135px;border-width:5px;transform:rotate(5deg)}.co-symbol{width:60px;height:60px;top:214px;right:29%;z-index:3}.co-symbol svg{width:34px;height:34px}.co-hero-word{font-size:105px;left:0;bottom:0;letter-spacing:-.07em}.co-hero-bottom{margin-top:20px;padding-bottom:22px;gap:18px;font-size:7px;letter-spacing:.05em}.co-hero-bottom .scroll-hint{font-size:7px}.co-profile-grid{display:block}.co-profile-side{position:relative;top:auto;margin-bottom:35px;display:grid;grid-template-columns:1fr 112px;gap:0 20px;align-items:center}.co-profile-side .eyebrow{font-size:9px;grid-column:1}.co-profile-side h2{font-size:34px;line-height:1.5;margin-top:13px;grid-column:1;grid-row:2}.co-profile-photo{width:112px;height:90px;grid-column:2;grid-row:1/4;margin-top:0}.co-profile-photo figcaption{font-size:6px;margin-top:8px}.co-side-mark{font-size:7px;letter-spacing:.04em;margin-top:17px;border:0;padding:0;grid-column:1}.co-profile-table th{font-size:10px;width:76px;padding-right:16px;padding-top:25px;line-height:1.8}.co-profile-table td{font-size:13px;line-height:2;padding-block:21px}.co-profile-table td.co-company-name{font-size:22px;line-height:1.6;font-weight:800;letter-spacing:-.04em}.co-profile-table .co-number{font-size:22px;line-height:1.5}.co-profile-table a[href^="mailto"]{font-size:13px;line-height:1.9;overflow-wrap:anywhere}.co-inline-arrow{font-size:16px;margin-left:8px}.co-capital{font-size:23px}.co-business-lines p+p{margin-top:13px}.co-section-top{margin-bottom:35px;padding-top:19px;gap:15px}.co-index{font-size:7px;letter-spacing:.04em}.co-history{padding-bottom:40px}.co-history-grid{display:flex;flex-direction:column;gap:42px}.co-history-side{position:relative;top:auto;width:100%;display:grid;grid-template-columns:1fr 110px;gap:0 15px;align-items:center}.co-history-side h2{font-size:40px;line-height:1.5;letter-spacing:-.07em}.co-history-photo{width:110px;height:130px;margin-top:0;transform:rotate(4deg)}.co-history-photo figcaption{font-size:6px;margin-top:9px}.co-timeline{padding-left:29px;width:100%}.co-event{padding-bottom:28px;margin-bottom:28px}.co-event-marker{left:-34px}.co-event-index{font-size:8px;margin-bottom:11px}.co-event h3{font-size:23px;line-height:1.65;letter-spacing:-.04em}.co-event p{font-size:14px;line-height:2.1;margin-top:13px}.co-history-word{font-size:65px;margin-top:39px}.co-access-heading{display:block;margin-bottom:32px}.co-access-heading h2{font-size:49px;line-height:1.5}.co-access-company{padding-top:22px;min-width:0}.co-access-company strong{font-size:16px}.co-access-company address{font-size:13px;line-height:2;margin-top:11px}.co-access-tel{font-size:25px;margin-top:16px;gap:19px}.co-access-tel small{font-size:9px}.co-map{min-height:360px}.co-map-cover img{object-position:center 65%}.co-map-overlay{left:16px;right:16px;bottom:16px;padding:20px 19px;max-width:none}.co-map-overlay .eyebrow{font-size:8px}.co-map-actions{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin-top:15px}.co-map-actions .solid-link{width:100%;min-width:0;min-height:53px;font-size:11px;padding-left:20px}.co-map-actions .text-link{font-size:10px;justify-content:space-between;min-height:44px;gap:20px}.co-map-actions .text-link .link-arrow{width:31px;height:31px;font-size:18px}.co-map iframe{height:330px}.co-map.is-map-visible{padding-bottom:208px}.co-map.is-map-visible .co-map-overlay{display:block;padding:19px 20px}.co-map.is-map-visible .co-map-actions{margin-top:15px}.company-page .footer-company address{font-size:10px}}
@media(max-width:360px){.co-title-row h1{font-size:13.7vw}.co-english{font-size:22px}.co-section-nav a{font-size:8px;gap:9px}.co-hero-images{min-height:315px}.co-team-photo{height:208px}.co-worker-photo{top:185px;height:126px}.co-symbol{top:188px;width:53px;height:53px}.co-symbol svg{width:30px;height:30px}.co-hero-word{font-size:94px}.co-profile-table th{width:65px;padding-right:11px;font-size:9px}.co-profile-table td{font-size:12px}.co-profile-table td.co-company-name{font-size:20px}.co-profile-table .co-number{font-size:20px}.co-profile-table a[href^="mailto"]{font-size:12px}.co-inline-arrow{margin-left:6px}.co-history-side h2{font-size:34px}.co-history-side{grid-template-columns:1fr 96px}.co-history-photo{width:96px;height:120px}.co-event h3{font-size:21px}.co-event p{font-size:13px}.co-access-heading h2{font-size:44px}}
@media(prefers-reduced-motion:reduce){.co-history-word,.co-hero-word{transform:none!important}.co-timeline-rail i{transform:scaleY(1)!important}.co-event-marker:after{opacity:1}}
@media print{.co-hero{padding-top:0!important}.co-section-nav,.co-symbol,.co-hero-word,.co-history-word,.co-map-actions button{display:none!important}.co-profile-grid,.co-history-grid{display:block}.co-profile-side,.co-history-side{position:relative;top:auto;margin-bottom:30px}.co-profile-photo,.co-history-photo{display:none}.co-profile-table th,.co-profile-table td{font-size:11pt}.co-profile-table tr{break-inside:avoid}.co-history{background:var(--paper);color:var(--ink)}.co-event{border-color:var(--ink)}.co-event-index{color:var(--ink)}.co-event-marker{display:none}.co-map{min-height:200px}.co-event p{font-size:11pt}}
@media(max-width:767px){.co-english{font-size:clamp(19px,5.5vw,25px)}}
.co-label-column{width:125px}
@media(max-width:1190px){.co-label-column{width:105px}}
@media(max-width:900px) and (min-width:768px){.co-label-column{width:90px}}
@media(max-width:767px){.co-label-column{width:76px}.co-profile-table td{font-size:14px}}
@media(max-width:360px){.co-label-column{width:65px}.co-profile-table td{font-size:13px}}
.co-team-photo figcaption{background:var(--paper);color:var(--ink)}
.company-page .ph-footer-locale{display:block;font-size:9px;margin-bottom:7px}
@media(max-width:767px){.company-page .ph-footer-locale{font-size:8px}}
