.service-area{margin-top:32px;padding-top:22px;border-top:1px solid #ffffff30;font-size:16px}.equipment>img{width:100%;height:auto;max-height:none;object-fit:contain}.equipment-inventory{margin-top:20px;display:grid;gap:20px}.equipment-inventory>div{border-top:1px solid #ffffff38;padding-top:14px}.equipment-inventory h4{font-size:16px;margin:0 0 8px}.equipment-inventory ul{font-size:14px;margin-bottom:0}.company-table dd a{text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.company-table dt{font-size:14px}.contact-channels{min-width:0}.contact-secondary{margin-top:16px;display:grid;gap:10px}.contact-secondary a,.contact-secondary p{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:14px;line-height:1.7;margin:0}.contact-secondary a{text-decoration:underline;text-underline-offset:4px}.contact-secondary strong{font-weight:600;overflow-wrap:anywhere}.theme-a1 .nav{gap:24px}.theme-a1 .nav-contact{padding-left:24px;padding-right:24px}
@media(max-width:960px){.theme-a1 .rough-nav{font-size:16px;gap:0}.theme-a1 .rough-nav.open{display:flex}.theme-a1 .rough-menu{display:flex}.theme-a1 .nav-contact{padding:14px 20px}.theme-a1 .rough-menu{font-size:0}}
@media(max-width:700px){.company-table>div{grid-template-columns:100px minmax(0,1fr);gap:12px}.company-table dt,.company-table dd{font-size:14px}.equipment-copy{padding:25px 22px}.equipment-inventory{gap:16px}.service-area{margin-top:25px;font-size:15px}.contact-secondary a,.contact-secondary p{font-size:14px}.theme-a1 .company .display-en{font-size:clamp(44px,13vw,70px)}}
.theme-a1 .study-bar{position:relative}.area-item,.permit-number{white-space:nowrap}.company-table dd .area-item,.company-table dd .permit-number{font:inherit;color:inherit}.company-grid{grid-template-columns:1fr;gap:34px}.company-grid>div{display:flex;align-items:baseline;flex-wrap:wrap;gap:12px 24px}.company-grid>div h2{margin:0}.company-message{font-size:20px;line-height:1.6;margin:0 0 0 auto}.company-message br{display:none}.company-table{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:48px}.company-table>div:first-child{padding-top:18px}.service-layout{align-items:center}
@media(max-width:960px){.company-message{display:none}}
@media(max-width:700px){.company-table{display:block}.company-grid>div{display:block}.company-grid>div h2{margin-top:10px}.company-table>div:first-child{padding-top:0}}
.service-title .display-en{letter-spacing:.015em;line-height:1.08}
@media(max-width:700px){.service-title .display-en{letter-spacing:.012em}}
.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-card,.work-card.featured{grid-column:auto}.work-image,.featured .work-image{aspect-ratio:4/3}.work-card.portrait .work-image{background:var(--ink)}.work-card.portrait .work-image>img{object-fit:contain}.work-card h3{margin-top:12px}
@media(max-width:700px){.work-grid{grid-template-columns:1fr}.work-card h3{margin-top:10px}}
.equipment{grid-template-columns:minmax(240px,360px) minmax(0,1fr);align-items:center;gap:clamp(28px,4vw,56px);padding:32px;max-width:1200px;margin-left:auto;margin-right:auto}.equipment-gallery{display:grid;grid-template-columns:1fr;gap:16px;min-width:0}.equipment-gallery img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}.equipment-copy{padding:0;min-width:0}.equipment-copy h3{font-size:clamp(28px,2.4vw,36px)}.equipment-inventory{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.equipment-inventory ul{padding-left:18px;font-size:14px}.equipment-inventory li{overflow-wrap:anywhere}
@media(max-width:960px){.equipment{grid-template-columns:minmax(200px,.8fr) minmax(0,1.2fr);padding:26px;gap:26px}.equipment-inventory{grid-template-columns:1fr;gap:16px}.equipment-gallery{gap:14px}}
@media(max-width:700px){.equipment{grid-template-columns:1fr;padding:18px;gap:22px}.equipment-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.equipment-copy{padding:0}.equipment-copy h3{font-size:27px;margin-top:10px;margin-bottom:16px}.equipment-inventory{grid-template-columns:1fr;gap:16px}}
@media(min-width:961px){.header{height:56px}.header .brand-mark{width:37px;height:42px;flex-basis:37px}.header .brand-name{font-size:25px}.header .brand-en{font-size:9px;margin-top:5px}.header .nav>a:not(.nav-contact){display:flex;align-items:center;height:100%;padding:0}.header .nav>a:not(.nav-contact):after{bottom:8px}.header .nav-contact{padding-top:0;padding-bottom:0}}
@media(max-width:960px){.theme-a1 .rough-nav{display:none;top:100%}.theme-a1 .rough-nav.open{display:flex;flex-direction:column;align-items:stretch}}
