/* Shared navigation and interior-page design. */
/* Show the supplied logo at its original ratio; hide its transparent canvas margins. */
.header .brand{flex-shrink:0}.header-logo{display:block;position:relative;overflow:hidden;width:164px;aspect-ratio:2009 / 628}
.header .header-logo img{position:absolute;max-width:none;width:calc(3543 / 2009 * 100%);height:auto;left:calc(-734 / 2009 * 100%);top:calc(-572 / 628 * 100%)}
@media(max-width:1000px){.header-logo{width:140px}}
.navigation{gap:25px}.navigation a[aria-current=page]:not(.nav-contact){color:var(--accent)}
.footer-navigation{display:flex;flex-wrap:wrap;gap:12px 32px;padding-bottom:25px;font-size:12px;font-weight:700}.footer-navigation a{display:inline-flex;align-items:center;min-height:44px}.footer-navigation a:hover{color:var(--accent)}
.page-hero{padding:60px 0 72px;display:grid;grid-template-columns:1fr;gap:50px;align-items:center}.page-hero h1{font-size:clamp(38px,4.4vw,62px);line-height:1.55;letter-spacing:.015em;white-space:pre-line}.page-hero .eyebrow{margin-bottom:30px}.page-lead{font-size:15px;color:var(--muted);max-width:560px;margin-top:32px;line-height:2.1}.company-hero,.recruit-hero{grid-template-columns:1.3fr 1fr}.page-index{display:flex;border-block:1px solid var(--line);gap:60px;padding-block:10px}.page-index a{display:flex;justify-content:space-between;align-items:center;gap:40px;min-height:54px;font-size:13px;font-weight:700}.page-index a:hover{color:var(--accent)}.page-index span{font-size:20px;color:var(--accent)}
.company-emblem{aspect-ratio:1;background:var(--paper);position:relative;display:grid;place-content:center;overflow:hidden;isolation:isolate}.company-emblem:before{content:"";position:absolute;inset:28px;border:1px solid #d5d8cb;border-radius:50%}.company-emblem strong{font:bold clamp(130px,20vw,250px)/1 Arial,sans-serif;color:var(--orange);position:relative;letter-spacing:-.09em;transform:translateX(-10px)}.company-emblem strong span{position:absolute;font-size:.4em;right:-.45em;top:.26em;color:var(--ink);font-weight:400}.emblem-label,.emblem-caption{position:absolute;left:24px;font:9px Arial,sans-serif;letter-spacing:.14em}.emblem-label{top:24px}.emblem-caption{bottom:24px}.emblem-orbit{position:absolute;inset:16%;border:1px dashed #b5baaa;transform:rotate(-35deg);border-radius:50%;animation:orbit-turn 35s linear infinite}.emblem-orbit:after{content:"";position:absolute;left:13%;top:13%;width:12px;height:12px;background:var(--orange);border-radius:50%}
.philosophy{margin-top:70px;background:var(--paper)}.belief-row{display:grid;grid-template-columns:.75fr 1.25fr;gap:70px;border-top:1px solid #d3d6cb;padding-block:48px}.belief-row:last-child{padding-bottom:0}.belief-label{display:flex;align-items:baseline;gap:25px}.belief-label>span{font:12px Arial,sans-serif;color:var(--accent)}.belief-label h3{font:26px Arial,sans-serif;letter-spacing:.04em}.belief-row h4{font-size:clamp(24px,2.7vw,36px);line-height:1.7}.belief-row p{max-width:640px;font-size:15px;color:var(--muted);line-height:2.1;margin-top:24px}.message-section{display:grid;grid-template-columns:.75fr 1.25fr;gap:70px}.message-symbol{font:180px/.8 Georgia,serif;color:var(--orange);margin-top:45px}.message-sign{font-size:12px}.message-sign strong{display:block;font-size:25px;margin-block:8px}.message-sign span{font:10px Arial,sans-serif;letter-spacing:.1em;color:var(--muted)}.message-body p{font-size:16px;line-height:2.3;color:var(--muted);margin-top:32px}.profile-section{background:var(--paper)}.profile-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:70px}.profile-wordmark{font:bold 68px Arial,sans-serif;letter-spacing:-.06em;margin-top:64px;color:var(--orange)}.profile-wordmark span{margin-left:24px;font-weight:400;color:var(--ink)}.profile-table{margin:0}.profile-table>div{display:grid;grid-template-columns:100px 1fr;gap:28px;padding:26px 0;border-top:1px solid #d3d6cb}.profile-table>div:last-child{border-bottom:1px solid #d3d6cb}.profile-table dt{font-size:13px;color:var(--muted)}.profile-table dd{font-size:15px;margin:0;white-space:pre-line;overflow-wrap:anywhere}.related-pages{display:grid;grid-template-columns:1fr 1fr;gap:40px}.related-pages>a{padding:36px;border-block:1px solid var(--line);position:relative;transition:background .25s}.related-pages small{font:10px Arial,sans-serif;letter-spacing:.12em;color:var(--accent)}.related-pages h2{font-size:30px;margin-top:16px}.related-pages p{font-size:13px;color:var(--muted);margin-top:14px;padding-right:24px}.related-pages a>span{position:absolute;right:24px;top:45px;font-size:30px}.related-pages a:hover{background:var(--paper)}
.business-map{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid var(--line);margin-bottom:90px}.business-map>a{padding:30px;position:relative;transition:background .2s}.business-map>a+a{border-left:1px solid var(--line)}.business-map span{font:10px Arial,sans-serif;letter-spacing:.07em;color:var(--muted);display:block}.business-map strong{font-size:25px;display:block;margin-top:12px}.business-map b{position:absolute;right:28px;bottom:30px;color:var(--accent);font-size:24px;font-weight:400}.business-map a:hover{background:var(--paper)}.business-area:nth-of-type(even){background:var(--paper)}.business-heading{display:grid;grid-template-columns:.75fr 1.25fr;gap:70px;align-items:start}.business-heading h2{font-size:32px}.business-heading h3{font-size:clamp(28px,3.6vw,44px);white-space:pre-line;line-height:1.65}.business-heading .eyebrow{color:var(--accent);margin-bottom:12px}.business-overview{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:45px;align-items:start}.business-description{font-size:16px;line-height:2.15;max-width:520px}.business-issues{border-left:2px solid var(--orange);padding-left:28px}.business-issues h4{font-size:13px;color:var(--muted);margin-bottom:10px}.business-issues ul{list-style:none;margin:0;padding:0;font-size:14px}.business-issues li{padding-block:6px}.business-issues li:before{content:"↗";color:var(--accent);margin-right:14px}.support-scope{display:grid;grid-template-columns:repeat(3,1fr);list-style:none;padding:0;margin:45px 0;border-block:1px solid var(--line)}.support-scope li{padding:24px 20px;font-size:13px;display:flex;align-items:center;gap:18px}.support-scope span{font:12px Arial,sans-serif;color:var(--accent)}.support-scope li+li{border-left:1px solid var(--line)}.business-products{display:grid;gap:40px}.business-product{display:grid;grid-template-columns:1.12fr 1fr;gap:40px;align-items:center}.business-image{display:block;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:5px}.business-image img{width:100%;height:auto;transition:transform .5s}.business-image:hover img{transform:scale(1.025)}.business-product .eyebrow{color:var(--muted);font-size:11px;letter-spacing:.04em;margin-bottom:10px}.business-product h4{font-size:32px}.business-product p:not(.eyebrow){font-size:14px;line-height:2;color:var(--muted);margin:16px 0}.business-product .text-link{font-size:13px}.business-note{color:var(--muted);font-size:12px;margin-top:28px}
.career-art{aspect-ratio:1;position:relative;background:#f8a35f;overflow:hidden}.career-art>span,.career-art>small{position:absolute;left:24px;font:9px Arial,sans-serif;letter-spacing:.12em;z-index:2}.career-art>span{top:24px}.career-art>small{bottom:24px}.career-steps{display:flex;align-items:flex-end;position:absolute;inset:24% 12% 0 12%;gap:10px}.career-steps i{flex:1;background:var(--paper);height:25%}.career-steps i:nth-child(2){height:55%}.career-steps i:nth-child(3){height:85%}.career-art>strong{position:absolute;font:170px/1 Arial,sans-serif;color:var(--ink);top:10%;left:13%;animation:career-arrow 7s ease-in-out infinite}.career-intro{background:var(--paper)}.career-copy p{font-size:16px;line-height:2.2;margin-bottom:24px}.career-copy p+p{color:var(--muted)}.career-work{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.career-work>div{border-top:1px solid var(--line);padding-top:25px}.career-work span{font:10px Arial,sans-serif;color:var(--accent);letter-spacing:.1em}.career-work h3{font-size:25px;line-height:1.7;margin-top:26px}.career-work p{font-size:14px;color:var(--muted);margin-top:22px}.career-entry{background:var(--ink);color:white}.career-entry h2{font-size:clamp(34px,4.5vw,58px)}.career-entry .eyebrow{color:#f7b17f}.career-entry p:not(.eyebrow){color:#d4d7d0;margin-top:30px;font-size:14px;line-height:2.2}.career-entry .button{margin-top:34px;background:#f8a35f;color:var(--ink)}.career-entry .button:hover{background:#ffc396}.career-entry small{display:block;color:#d4d7d0;font-size:11px;margin-top:18px}
.news-section{padding-bottom:110px;min-height:380px}.news-list-head{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:22px 0}.news-list-head h2{font-size:14px}.news-list-head>span{font:10px Arial,sans-serif;color:var(--muted);letter-spacing:.1em}.news-list{list-style:none;padding:0;margin:0;border-bottom:1px solid var(--line)}.news-list li{border-top:1px solid var(--line)}.news-list a{display:grid;grid-template-columns:100px 100px 1fr 30px;align-items:center;gap:28px;padding:36px 12px;transition:background .2s}.news-list a:hover{background:var(--paper)}.news-list time,.news-meta time{font:13px Arial,sans-serif;color:var(--muted)}.news-tag{font-size:11px;color:var(--accent);display:inline-block;background:var(--paper);padding:5px 12px;text-align:center;width:fit-content}.news-list h3{font-size:18px;line-height:1.8}.news-arrow{font-size:25px}.news-journal{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:60px;background:var(--paper);padding:28px 35px;font-size:14px}.news-article{width:min(820px,calc(100% - 112px));margin:70px auto 110px}.news-meta{display:flex;align-items:center;gap:25px;margin-bottom:28px}.news-article h1{font-size:clamp(30px,3.5vw,46px);line-height:1.65}.news-body{border-top:1px solid var(--line);padding-top:35px;margin:40px 0 60px;font-size:16px;line-height:2.2}.news-body p+p{margin-top:24px}
.legal-hero{padding-bottom:50px}.legal-hero h1{font-size:clamp(29px,3.5vw,48px)}.legal-body{width:min(840px,calc(100% - 112px));margin:0 auto 100px;border-top:1px solid var(--line);padding-top:45px;font-size:15px;line-height:2.1}.legal-body section{margin-top:45px}.legal-body h2{font-size:22px;margin-bottom:20px;line-height:1.7}.legal-body li{padding-block:3px}.legal-body address{font-style:normal;background:var(--paper);padding:28px;margin-top:22px}.legal-body a{text-decoration:underline;text-underline-offset:4px}.breadcrumb{flex-wrap:wrap;gap:12px}
@keyframes orbit-turn{to{transform:rotate(325deg)}}@keyframes career-arrow{0%,100%{transform:translate(0,0)}50%{transform:translate(8px,-8px)}}
@media(max-width:1100px){.navigation{gap:18px}.company-hero,.recruit-hero{gap:30px}.page-hero h1{font-size:44px}.belief-row,.message-section,.profile-layout,.business-heading{gap:45px}.business-overview{gap:45px}}
@media(max-width:1000px){html{scroll-padding-top:90px}.header{height:76px;padding-inline:22px}.menu-toggle{display:flex;align-items:center;gap:20px;min-height:44px;border:0;background:none;padding:8px 0;font-size:12px;color:var(--ink)}.menu-toggle span{font-size:24px}.navigation{display:none;position:absolute;top:76px;left:0;right:0;background:white;padding:18px 24px 28px;box-shadow:0 14px 16px #2026220a;border-bottom:1px solid var(--line);max-height:calc(100dvh - 76px);overflow:auto}.navigation.is-open{display:flex;flex-direction:column;align-items:stretch;gap:8px}.navigation>a{padding:10px 8px;font-size:14px}.navigation .nav-contact{justify-content:space-between;padding:16px}}
@media(max-width:800px){.page-hero{padding:38px 0 45px;gap:32px}.page-hero h1{font-size:36px;line-height:1.6}.page-hero .eyebrow{font-size:10px;margin-bottom:22px}.page-lead{font-size:14px;margin-top:22px}.company-hero,.recruit-hero{grid-template-columns:1fr}.company-emblem,.career-art{aspect-ratio:1.45;max-width:520px;width:100%}.company-emblem strong{font-size:190px}.company-emblem:before{inset:10% 22%}.emblem-orbit{inset:20% 29%}.page-index{gap:0;justify-content:space-between;flex-wrap:wrap}.page-index a{font-size:11px;gap:15px}.page-index span{font-size:16px}.philosophy{margin-top:45px}.belief-row{grid-template-columns:1fr;gap:25px;padding-block:32px}.belief-label h3{font-size:20px}.belief-row h4{font-size:26px}.belief-row p{font-size:14px;margin-top:20px}.message-section{grid-template-columns:1fr;gap:30px}.message-aside{display:grid;grid-template-columns:1fr auto}.message-aside .eyebrow{grid-column:1/-1}.message-symbol{margin:0;font-size:110px;grid-column:2;grid-row:2}.message-sign{grid-column:1;grid-row:2}.message-sign strong{font-size:23px}.message-body p{font-size:14px;line-height:2.2;margin-top:24px}.profile-layout{grid-template-columns:1fr;gap:28px}.profile-wordmark{display:none}.profile-table>div{grid-template-columns:75px 1fr;gap:18px;padding:22px 0}.profile-table dt{font-size:12px}.profile-table dd{font-size:13px}.related-pages{grid-template-columns:1fr;gap:24px}.related-pages>a{padding:25px 8px}.related-pages a>span{right:8px}.related-pages h2{font-size:27px}.related-pages p{font-size:12px}.business-map{grid-template-columns:1fr;margin-bottom:45px}.business-map>a{padding:22px 15px}.business-map>a+a{border-left:0;border-top:1px solid var(--line)}.business-map strong{font-size:24px;margin-top:8px}.business-map b{bottom:24px}.business-heading{grid-template-columns:1fr;gap:26px}.business-heading h2{font-size:26px}.business-heading h3{font-size:30px}.business-overview{grid-template-columns:1fr;gap:28px;margin-top:25px}.business-description{font-size:14px}.business-issues{padding-left:18px}.business-issues ul{font-size:13px}.support-scope{grid-template-columns:1fr;margin:30px 0}.support-scope li{padding:18px 8px}.support-scope li+li{border-left:0;border-top:1px solid var(--line)}.business-product{grid-template-columns:1fr;gap:22px}.business-product h4{font-size:28px}.business-product p:not(.eyebrow){font-size:13px}.business-note{font-size:11px}.career-art>strong{font-size:145px;left:20%;top:5%}.career-copy p{font-size:14px}.career-work{grid-template-columns:1fr;gap:32px}.career-work h3{font-size:26px;margin-top:20px}.career-work p{font-size:13px;max-width:420px}.career-entry p:not(.eyebrow){font-size:13px}.career-entry .button{width:100%;gap:16px}.news-section{padding-bottom:65px}.news-list a{grid-template-columns:90px 1fr 25px;gap:16px;padding:28px 0}.news-list h3{grid-column:1/3;grid-row:2;font-size:17px}.news-arrow{grid-column:3;grid-row:1/3}.news-journal{flex-direction:column;align-items:flex-start;padding:24px;font-size:13px;margin-top:35px}.news-article{width:calc(100% - 44px);margin:40px auto 65px}.news-article h1{font-size:30px}.news-body{font-size:14px;margin:30px 0 40px}.legal-body{width:calc(100% - 44px);margin-bottom:65px;padding-top:30px;font-size:14px}.legal-body h2{font-size:20px}.legal-body address{padding:20px}.legal-hero h1{font-size:28px}.footer-navigation{gap:6px 22px;font-size:11px}}
@media(max-width:370px){.page-hero h1{font-size:30px}.legal-hero h1{font-size:26px}.page-index a{width:100%;font-size:12px;min-height:44px}.page-index a+a{border-top:1px solid var(--line)}.profile-table>div{grid-template-columns:1fr;gap:6px}.news-article,.legal-body{width:calc(100% - 36px)}.belief-row h4{font-size:23px}.business-heading h3{font-size:27px}.career-art>strong{font-size:120px}}
@media(prefers-reduced-motion:reduce){.emblem-orbit,.career-art>strong{animation:none}.business-image img{transition:none}.business-image:hover img{transform:none}}

.services-more{display:flex;justify-content:flex-end;margin-top:35px}
.not-found{padding-block:100px;min-height:60vh}.not-found h1{font-size:clamp(28px,4vw,46px);line-height:1.6}.not-found>p:not(.eyebrow){margin-block:24px;color:var(--muted);font-size:14px}
/* microCMS notice rich text and empty state */
.news-empty{padding:38px 0;border-bottom:1px solid var(--line);font-size:14px;color:var(--muted)}
.news-eyecatch{width:100%;height:auto;margin-top:35px;border-radius:5px}
.news-body{overflow-wrap:anywhere}.news-body h2{font-size:28px;margin:40px 0 20px}.news-body h3{font-size:23px;margin:30px 0 16px}.news-body h4,.news-body h5,.news-body h6{font-size:19px;margin:24px 0 12px}.news-body ul,.news-body ol{padding-left:1.6em;margin-block:24px}.news-body li{margin-block:8px}.news-body img{max-width:100%;height:auto;margin-block:28px}.news-body figure{margin:28px 0}.news-body figcaption{font-size:12px;color:var(--muted)}.news-body a{color:var(--accent);text-decoration:underline;text-underline-offset:4px}.news-body blockquote{margin:28px 0;border-left:3px solid var(--orange);padding:20px 24px;background:var(--paper)}.news-body pre{overflow:auto;background:var(--paper);padding:20px;font-size:13px}.news-body table{display:block;overflow:auto;border-collapse:collapse;margin:25px 0;width:100%}.news-body th,.news-body td{border:1px solid var(--line);padding:12px;min-width:110px}.news-body th{background:var(--paper)}.news-body hr{border:0;border-top:1px solid var(--line);margin:35px 0}
@media(max-width:800px){.news-body h2{font-size:24px}.news-body h3{font-size:21px}}

@media(min-width:801px) and (max-width:1100px){.business-map{grid-template-columns:repeat(2,minmax(0,1fr))}.business-map>a:nth-child(3){border-left:0}.business-map>a:nth-child(n+3){border-top:1px solid var(--line)}}

.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
#send-form{margin:16px 12px 0 0}#form-error{color:#b42318}button:disabled{cursor:wait;opacity:.6}#form-success h2{font-size:clamp(24px,4vw,36px)}
