.lang-switch a{padding:7px;font-weight:bold}.accessibility{position:fixed;left:10px;bottom:12px;z-index:20;display:flex;gap:5px}.accessibility button,.share button{border:1px solid #718565;padding:8px 12px;background:#15231f;color:#d7fc45}.detail{padding-top:40px;padding-bottom:70px;min-height:60vh}.detail h1{font-size:clamp(26px,5vw,48px);overflow-wrap:anywhere}.detail-image{max-width:100%;max-height:600px;object-fit:contain}.prose{white-space:pre-wrap;overflow-wrap:anywhere}.share{margin-top:35px}.map{margin-bottom:40px}.map iframe{width:100%;height:360px;border:0}.large-font body{font-size:125%}.large-font p,.large-font a,.large-font label,.large-font input,.large-font textarea,.large-font select,.large-font summary,.large-font button,.large-font small{font-size:1.15em!important}.dark{--paper:#14231d;--ink:#edf4e8;--muted:#bfcbb7;--line:#657562}.dark body,.dark header,.dark .work,.dark .news,.dark .service,.dark .contact-guide,.dark .line,.dark form,.dark .news-item{background:#14231d;color:#edf4e8}.dark .btn,.dark .mark,.dark .filter.active{background:#d7fc45;color:#15231f;border-color:#d7fc45}.dark input,.dark textarea,.dark select{background:#21382a;color:white}.dark .service p,.dark .contact-guide li,.dark .contact-guide p{color:#bfcbb7}.dark .about,.dark .service.cnc{background:#09180e;color:#edf4e8}.dark .contact-band{color:#15231f}.portal{max-width:1150px;margin:auto;padding:24px}.portal h1{font-size:32px}.portal nav{display:flex;flex-wrap:wrap;margin:18px 0;gap:15px}.portal form{padding:22px;margin:20px 0}.portal table{border-collapse:collapse;width:100%}.portal td,.portal th{padding:10px;text-align:left;border-bottom:1px solid #aab6a0;overflow-wrap:anywhere}.table-wrap{overflow-x:auto}.portal input[type=checkbox]{width:auto}.portal .inline{display:inline-block;padding:6px;margin:0;border:0;background:transparent}.portal .inline button{padding:6px}.notice{padding:15px;border:1px solid #647d45;background:#e1edcc;color:#15231f}.danger{background:#692b21;color:white;border:0;padding:10px}.secret{font-family:monospace;overflow-wrap:anywhere}.portal fieldset{margin:18px 0;border:1px solid #879878}.portal label{font-size:14px}.portal pre{white-space:pre-wrap;overflow-wrap:anywhere}a,input,button,select,textarea{max-width:100%}img{max-width:100%}@media(max-width:420px){.portal{padding:14px}.portal form{padding:15px}.hero-title{font-size:10.5vw}.lang-switch{margin-left:0}.brand strong{font-size:18px}.brand small{font-size:7px}.nav{gap:8px}.mark{width:35px;height:35px}.float{bottom:60px}.accessibility{bottom:8px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.contact>*,.quotation-grid>*,.about-inner>*,.fields>*,.faq>*{min-width:0}.contact-details a,.eyebrow,.btn,.chips span{overflow-wrap:anywhere}.large-font .brand small{font-size:8px!important;letter-spacing:1px}.large-font .brand strong{font-size:18px}.large-font .brand{gap:7px}.large-font .hero-top{flex-wrap:wrap}.large-font .photo-tag{max-width:80%;white-space:normal}.large-font .contact{grid-template-columns:minmax(0,1fr)}
@media(min-width:681px){.large-font .contact{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.large-font .float{font-size:14px!important;padding:10px 16px}body:has(nav.open) .float,body:has(#quotation-page:not([hidden])) .float{display:none}
.quotation-grid a,.portal a{overflow-wrap:anywhere}
