@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800;900&display=swap');
:root{--ink:#14283a;--navy:#112738;--paper:#f5f5f0;--muted:#60707a;--line:#d9dfe0;--accent:#e2ac6a}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:#fff;font-family:'Noto Sans JP',sans-serif;font-size:14px;line-height:1.95;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button{touch-action:manipulation}button,a,input,select,textarea{outline-offset:5px}button{cursor:pointer}img{max-width:100%;display:block}p{margin:0 0 24px}h1,h2,h3{line-height:1.6;letter-spacing:.025em;margin:0}h2{font-size:clamp(25px,2.7vw,38px);font-weight:700}h3{font-size:21px}small{font-weight:400}.wrap{width:min(1180px,calc(100% - 100px));margin:auto}.eyebrow{font-size:12px;letter-spacing:.17em;font-weight:700;margin-bottom:23px;line-height:1.7}.proposal-bar{background:#eaece9;font-size:12px;letter-spacing:.11em;display:flex;gap:18px;padding:5px 4%;align-items:center}.proposal-bar span{font-size:12px;letter-spacing:.06em}.proposal-bar a{margin-left:auto;text-decoration:underline}header{height:95px;display:flex;align-items:center;justify-content:space-between;padding:0 4%;background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid #ecefed}.brand{display:flex;gap:12px;align-items:center;font-weight:800;font-size:19px;line-height:1.5;white-space:nowrap}.brand small{display:block;font-size:12px;letter-spacing:.22em;margin-top:4px;font-weight:600}.symbol{font-family:Arial,sans-serif;font-style:italic;font-size:43px;line-height:1;position:relative;color:var(--navy)}.symbol span{font-size:39px;color:var(--accent);margin-left:-19px}nav{display:flex;align-items:center;gap:27px;font-size:12px;font-weight:600}nav>a{position:relative}nav>a:not(.nav-contact):after{content:'';display:block;height:1px;width:0;background:var(--ink);transition:width .2s}nav>a:hover:after,nav>a[aria-current]:after{width:100%}.nav-contact{background:var(--navy);color:white;padding:14px 22px}.nav-contact span{margin-left:22px}.menu{display:none}.skip{position:fixed;top:-100px;z-index:100;background:white;padding:15px}.skip:focus{top:0}.hero{display:grid;grid-template-columns:57% 43%;min-height:645px;background:var(--navy);color:white}.hero-copy{padding:65px 6% 24px 7%;position:relative;overflow:hidden}.hero-copy:before{content:'';position:absolute;left:55%;top:0;width:1px;height:100%;background:#ffffff07;transform:rotate(25deg)}.hero .eyebrow{font-size:12px;color:#d3dadf;margin-bottom:35px}.eyebrow i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);margin-right:12px}.hero h1{font-size:clamp(27px,3.05vw,46px);line-height:1.7;letter-spacing:.045em;font-weight:600;position:relative;z-index:1;white-space:nowrap}.hero-en{font-family:Arial,sans-serif;font-size:clamp(40px,5.5vw,78px);font-weight:700;letter-spacing:-.035em;line-height:.99;margin:28px 0 25px;color:#ffffff22}.hero-desc{font-size:13px;color:#d4dde4;line-height:2.1;margin-bottom:27px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:17px 24px;background:var(--navy);color:#fff;border:1px solid var(--navy);font-size:12px;font-weight:600;transition:background .2s,color .2s}.button.light{background:white;color:var(--navy);border-color:white}.button:hover{background:#294b62}.button.light:hover{background:var(--accent);border-color:var(--accent)}.hero-bottom{margin-top:36px;display:flex;justify-content:space-between;align-items:center;font-size:12px;letter-spacing:.18em;color:#b0bfca}.hero-photo{position:relative;overflow:hidden}.hero-photo>img{height:100%;width:100%;object-fit:cover;object-position:45% 45%;filter:saturate(.55)}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 55%,#0a192bc9)}.photo-caption{position:absolute;bottom:30px;left:35px;z-index:1;color:#fff;display:flex;gap:21px;align-items:flex-start}.photo-caption>span{font:12px Arial;letter-spacing:.14em;border-top:1px solid white;padding-top:8px}.photo-caption p{font-size:15px;margin:0}.photo-caption small{display:block;font-size:12px;margin-top:8px;color:#dbe0e3}.photo-index{position:absolute;right:24px;top:25px;font-size:12px;letter-spacing:.15em;z-index:1}.service-strip{background:#ecede8;display:flex;padding:25px 7%;gap:7%;border-bottom:1px solid var(--line)}.service-strip>span{font-size:13px;display:flex;align-items:center;gap:18px}.service-strip small{font:12px Arial;letter-spacing:.1em;color:#61707a}.about-section{padding:110px 0;display:grid;grid-template-columns:1fr 1fr;gap:12%}.about-section .lead{font-size:23px;line-height:1.8;font-weight:500}.about-section p:not(.eyebrow):not(.lead){color:var(--muted);line-height:2.2}.text-link{display:inline-flex;justify-content:space-between;gap:45px;border-bottom:1px solid #9ca9b0;padding:10px 0;font-size:12px;font-weight:600}.text-link:hover{color:#95703f}.services{background:var(--paper);padding:85px 0 90px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:42px;gap:20px}.section-heading .eyebrow{margin-bottom:15px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #c8d0d2;border-bottom:1px solid #c8d0d2}.service-grid>a{position:relative;padding:32px 35px 28px 0}.service-grid>a+a{border-left:1px solid #c8d0d2;padding-left:35px}.num{font-family:Arial,sans-serif;font-size:12px;letter-spacing:.1em;color:#6b7c87}.service-grid svg{width:88px;height:80px;display:block;stroke:var(--ink);stroke-width:1.3;fill:none;margin:28px 0}.service-grid .eyebrow{font-size:12px;margin-bottom:8px;color:#63727e}.service-grid h3{font-size:25px;margin-bottom:14px}.service-grid p:not(.eyebrow){font-size:12px;line-height:2;color:var(--muted);max-width:260px;margin-bottom:30px}.arrow{display:block;border:1px solid #b7c2c7;border-radius:50%;width:33px;height:33px;line-height:30px;text-align:center;transition:.2s}.service-grid a:hover .arrow{background:var(--navy);color:white}.work-section{padding-top:90px;padding-bottom:90px}.works-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.work-image{height:330px;overflow:hidden;position:relative;background:#e9ebea}.work-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.65);transition:transform .4s}.work-image span{position:absolute;bottom:20px;right:15px;background:white;padding:7px 10px;font-size:12px;letter-spacing:.1em}.work-card:hover img{transform:scale(1.035)}.meta{font-size:12px;margin:20px 0 9px;color:#5e7180}.meta span{float:right;font:12px Arial;color:#7a878f}.work-card h3{font-size:16px;font-weight:500;display:flex;justify-content:space-between;gap:8px}.work-card b{font-weight:400}.note{font-size:12px;color:#6f7b84;line-height:1.9;margin:22px 0}.join-section{padding:70px 0;background:#e9eeef}.join-inner{display:grid;grid-template-columns:1.2fr 1fr;gap:8%;align-items:center}.join-inner p:not(.eyebrow){font-size:13px}.contact-band{padding:65px 7%;display:flex;align-items:center;justify-content:space-between;background:var(--navy);color:white;gap:30px}.contact-band h2{font-size:27px}.contact-band p:not(.eyebrow){font-size:12px;color:#c4cfd5;margin:16px 0 0}.contact-band .eyebrow{color:var(--accent);margin-bottom:12px}footer{padding:55px 5% 25px;background:#f8f9f6}.footer-top{display:grid;grid-template-columns:1.2fr 1fr .7fr;gap:35px;align-items:start}.footer-top p{font-size:12px;color:#62717c}.footer-top>div{display:grid;gap:8px;font-size:12px}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;margin-top:30px;display:flex;justify-content:space-between;font-size:12px;color:#687782}.page-intro{padding:80px 0 65px;border-bottom:1px solid var(--line)}.page-intro h1{font-size:clamp(29px,3.7vw,48px);margin-bottom:22px}.page-intro>p:last-child{color:#677580;max-width:720px;margin:0}.page-intro .eyebrow{color:#72828b}.detail-sections article{padding:70px 0;display:grid;grid-template-columns:.6fr 1.4fr 1fr;gap:35px;border-bottom:1px solid var(--line);scroll-margin-top:115px}.detail-sections article h2{margin-bottom:20px}.detail-sections article p,.detail-sections li{font-size:13px;color:#62747f}.detail-sections article img{width:100%;height:300px;object-fit:cover}.detail-sections ul{padding-left:20px;margin-bottom:30px}.technical-art{background:var(--navy);color:#cedde6;font:120px Arial;display:flex;align-items:center;justify-content:center;flex-direction:column}.technical-art span{font:12px/1.5 Arial;letter-spacing:.2em}.narrow{max-width:850px;padding-top:65px;padding-bottom:75px}.faq h2{margin-bottom:30px}details{border-top:1px solid var(--line);padding:20px 0}details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;font-weight:500}details p{padding-top:20px;margin:0;color:#607580}.filters{display:flex;gap:12px;flex-wrap:wrap}.filters button{border:1px solid #b6c1c8;background:#fff;padding:10px 25px;font-size:12px;color:var(--ink)}.filters button[aria-pressed=true]{background:var(--navy);color:white}.work-card[hidden]{display:none}.project-detail{padding:65px 0;display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:start}.project-detail>img{width:100%;max-height:800px;object-fit:contain;background:#eee}.project-detail .button{margin-top:30px}.project-detail dl{display:grid;grid-template-columns:110px 1fr;font-size:13px;gap:15px}.project-detail dd{margin:0}.back{padding-bottom:70px}.company-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:70px;padding:70px 0}.company-layout p{margin-top:20px;font-size:12px;color:#6c7a83}.company-table{display:grid;grid-template-columns:130px 1fr;margin:0;font-size:13px}.company-table dt,.company-table dd{border-bottom:1px solid var(--line);padding:22px 0;margin:0}.company-table dt{color:#70808b}.recruit-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:70px 0}.recruit-layout>img{height:650px;width:100%;object-fit:cover}.recruit-layout article{padding:25px 0 40px}.recruit-layout article+article{border-top:1px solid var(--line);padding-top:40px}.recruit-layout h2{font-size:29px;margin-bottom:20px}.contact-layout{padding:70px 0 90px;display:grid;grid-template-columns:1fr 1.1fr;gap:90px}.contact-layout h2{font-size:27px;margin-bottom:24px}.phone{display:block;font:35px Arial;margin:20px 0}.contact-layout>div>p:not(.eyebrow){font-size:12px}.contact-layout .text-link{display:table;margin:18px 0}.contact-layout form label{display:block;font-size:12px;font-weight:500;margin:22px 0}input,select,textarea{display:block;width:100%;border:1px solid #bac7cd;background:#f8faf9;border-radius:0;padding:14px;color:var(--ink);margin-top:10px}textarea{resize:vertical}.required{font-size:12px;color:#915522;margin-left:10px}#memo-result{padding-top:20px}#copy-status{font-size:12px}.proposal-content{max-width:960px;padding:55px 0 90px}.proposal-content>h2{font-size:25px;margin:40px 0 20px}.proposal-content p{color:#5c6e7b;font-size:13px}.proposal-content a{text-decoration:underline}.audit-table{display:grid;grid-template-columns:1fr 1fr;gap:30px}.audit-table article{border-top:1px solid var(--line);padding-top:20px}.audit-table span{font:16px Arial;color:#a88053}.audit-table h3{font-size:18px;margin:12px 0}.steps{padding-left:25px}.steps li{padding-left:10px;margin:20px 0}.steps p{margin-top:10px}::selection{background:#e2ac6a;color:#112738}
@media(min-width:1500px){.hero{min-height:740px}.hero-copy{padding-top:80px}.hero h1{font-size:49px}.hero-en{font-size:90px}}
@media(max-width:1050px){header{padding:0 4%;height:82px}.brand{font-size:16px}nav{gap:18px;font-size:12px}.nav-contact{padding:12px}.nav-contact span{margin-left:8px}.wrap{width:calc(100% - 64px)}.hero{min-height:600px}.hero-copy{padding-top:55px}.hero h1{font-size:30px}.hero-en{font-size:60px}.hero-photo img{object-position:44% center}.service-strip{padding:20px 5%;gap:5%}.service-strip>span{gap:10px}.service-strip small{font-size:12px}.work-image{height:280px}.contact-band h2{font-size:23px}.detail-sections article{grid-template-columns:1fr 1fr}.detail-sections article>.num{grid-column:1/-1}.company-layout{gap:35px}.contact-layout{gap:45px}.footer-top{grid-template-columns:1.2fr 1fr}.footer-top>div{grid-column:1/-1;display:flex;gap:20px}}
@media(max-width:760px){html{scroll-padding-top:85px}.proposal-bar{padding:5px 20px;font-size:12px;gap:0}.proposal-bar>span{display:none}.proposal-bar a{font-size:12px}header{height:76px;padding:0 22px}.brand{font-size:15px;gap:9px}.brand small{font-size:12px}.symbol{font-size:36px}.symbol span{font-size:34px}.menu{display:flex;gap:14px;align-items:center;border:0;background:none;color:var(--ink);font-size:12px;padding:12px 0 12px 15px}.menu span{font-size:23px;font-weight:300}nav{display:none;position:absolute;left:0;right:0;top:76px;background:#fff;border-bottom:1px solid var(--line);padding:15px 24px 25px;font-size:14px}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}nav a{padding:14px 5px;border-bottom:1px solid #e3e8ea}nav .nav-contact{padding:15px;margin-top:10px}.wrap{width:calc(100% - 44px)}.hero{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:38px 25px 24px}.hero .eyebrow{font-size:12px;letter-spacing:.14em;margin-bottom:24px}.hero h1{font-size:clamp(24px,6.8vw,37px);line-height:1.65;letter-spacing:.015em}.hero-en{font-size:clamp(47px,13vw,72px);margin:23px 0}.hero-desc{font-size:12px;margin-bottom:24px}.hero .button{padding:14px 19px;font-size:12px}.hero-bottom{margin-top:28px;font-size:12px}.hero-photo{height:345px}.hero-photo img{object-position:center 40%}.photo-caption{left:25px;bottom:22px;gap:15px}.photo-caption p{font-size:13px}.photo-caption small{font-size:12px}.service-strip{padding:18px 20px;gap:0;justify-content:space-between}.service-strip>span{display:block;font-size:12px}.service-strip small{display:block;font-size:12px;letter-spacing:0;margin-top:4px}.about-section{padding:60px 0;grid-template-columns:1fr;gap:35px}.eyebrow{margin-bottom:16px;font-size:12px}.about-section .lead{font-size:21px}.about-section p:not(.eyebrow):not(.lead){font-size:12px}.services{padding:55px 0}.section-heading{display:block;margin-bottom:30px}.section-heading .text-link{margin-top:19px}.service-grid{grid-template-columns:1fr}.service-grid>a,.service-grid>a+a{padding:25px 0;border-left:0}.service-grid>a+a{border-top:1px solid #c8d0d2}.service-grid svg{position:absolute;right:12px;top:25px;width:70px;margin:0;opacity:.7}.service-grid .eyebrow{margin-top:22px}.service-grid h3{font-size:24px}.service-grid p:not(.eyebrow){max-width:85%;margin-bottom:15px}.arrow{position:absolute;right:0;bottom:30px}.work-section{padding-top:55px;padding-bottom:55px}.works-grid{grid-template-columns:1fr;gap:35px}.work-image{height:350px}.work-card h3{font-size:17px}.meta{margin-top:15px}.join-section{padding:50px 0}.join-inner{grid-template-columns:1fr;gap:30px}.join-inner p:not(.eyebrow){font-size:12px}.contact-band{display:block;padding:45px 24px}.contact-band h2{font-size:21px}.contact-band p:not(.eyebrow){font-size:12px}.contact-band .button{margin-top:25px}footer{padding:40px 24px 25px}.footer-top{grid-template-columns:1fr;gap:25px}.footer-top>div{flex-wrap:wrap;gap:13px 20px}.footer-top p{margin:0}.footer-bottom{display:block;font-size:12px}.footer-bottom a{display:block;margin-top:12px}.page-intro{padding:47px 0 40px}.page-intro h1{font-size:28px}.page-intro>p:last-child{font-size:12px}.detail-sections article{grid-template-columns:1fr;padding:40px 0;gap:25px}.detail-sections article img{height:330px}.technical-art{height:240px}.narrow{padding-top:45px;padding-bottom:55px}.project-detail{grid-template-columns:1fr;padding:40px 0;gap:35px}.company-layout{grid-template-columns:1fr;gap:25px;padding:45px 0}.company-table{grid-template-columns:95px 1fr;font-size:12px}.company-table dt,.company-table dd{padding:18px 0}.recruit-layout{grid-template-columns:1fr;padding:40px 0;gap:25px}.recruit-layout>img{height:380px}.recruit-layout h2{font-size:25px}.contact-layout{grid-template-columns:1fr;padding:40px 0;gap:45px}.contact-layout>div+div{border-top:1px solid var(--line);padding-top:35px}.phone{font-size:32px}.audit-table{grid-template-columns:1fr;gap:10px}.proposal-content{padding-top:20px}.proposal-content>h2{font-size:22px}.filters{gap:7px}.filters button{padding:9px 18px}.back{padding-bottom:45px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Art direction 02 — field-led editorial design */
:root{--ink:#13292c;--navy:#0d282c;--paper:#f2f3ee;--accent:#c5dca0}
body{letter-spacing:.015em}.button,.nav-contact{border-radius:2px}.symbol span{color:#719985}.eyebrow{letter-spacing:.2em}.home-page header{background:#10282c;color:#f1f4ee;border-bottom:1px solid #ffffff15;height:88px}.home-page header .symbol{color:#fff}.home-page header .symbol span{color:var(--accent)}.home-page .nav-contact{background:var(--accent);color:#19312d;padding:14px 23px}.home-page nav>a:not(.nav-contact):after{background:var(--accent)}.home-page .proposal-bar{background:#0a2024;color:#99afb0}.home-page .hero-v2{height:680px;min-height:0;position:relative;display:block;isolation:isolate;overflow:hidden;background:#0c252a}.hero-scene{position:absolute;top:0;right:0;width:69%;height:100%;z-index:-3}.hero-scene img{width:100%;height:100%;object-fit:cover;object-position:52% 47%;filter:saturate(.52) brightness(.8)}.hero-v2:after{content:'';position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#0b2429 0%,#0b2429f2 20%,#0b2429b3 42%,#0b24291a 72%),linear-gradient(0deg,#0b242999,transparent 50%)}.hero-grid{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,transparent calc(25% - 1px),#daeae70c 25%,transparent calc(25% + 1px),transparent calc(50% - 1px),#daeae70c 50%,transparent calc(50% + 1px),transparent calc(75% - 1px),#daeae70c 75%,transparent calc(75% + 1px));pointer-events:none}.hero-v2 .hero-copy{padding:62px 0 0 6%;overflow:visible;position:static}.hero-v2 .hero-copy:before{display:none}.hero-v2 .eyebrow{font:12px/1.8 Arial,sans-serif;letter-spacing:.2em;color:#d2dfd9;margin-bottom:28px}.hero-v2 h1{font-size:clamp(44px,5.4vw,78px);font-weight:600;letter-spacing:.01em;line-height:1.45;white-space:normal;max-width:1000px}.accent-word{color:#c5dca0}.hero-statement{font-family:Arial,sans-serif;font-size:15px;font-weight:400;letter-spacing:.23em;line-height:1.6;color:#bccdcc;margin:23px 0 32px}.hero-action{display:flex;gap:43px;align-items:center}.hero-action p{font-size:12px;line-height:2.1;color:#d7e1de;margin:0}.hero-cta{font-size:12px;display:flex;align-items:center;gap:24px;color:#f4f7ef}.hero-cta>span{display:grid;place-items:center;border:1px solid #d0ddcb9c;width:53px;height:53px;border-radius:50%;font-size:20px;transition:.25s}.hero-cta:hover>span{background:var(--accent);border-color:var(--accent);color:var(--navy);transform:rotate(45deg)}.field-card{position:absolute;right:4.5%;bottom:36px;display:flex;align-items:center;gap:19px;color:white;padding:22px 24px;background:#102a2edb;border:1px solid #d8e5dd39;backdrop-filter:blur(12px);max-width:440px}.field-card .eyebrow{font-size:12px;color:var(--accent);margin:0}.field-card p{font-size:13px;margin:6px 0 4px}.field-card small{display:block;font-size:12px;color:#bacac7}.field-cross{font-size:30px;align-self:flex-start;font-weight:300;color:var(--accent);line-height:1}.field-arrow{font-size:23px;margin-left:15px}.hero-scroll{position:absolute;bottom:40px;left:6%;font:12px Arial;letter-spacing:.17em;color:#bdceca;display:flex;align-items:center;gap:20px}.hero-scroll span{width:33px;height:33px;display:grid;place-items:center;border:1px solid #cfddd64f;border-radius:50%;font-size:15px}.hero-side-label{position:absolute;right:20px;top:40px;writing-mode:vertical-rl;font:12px Arial;letter-spacing:.2em;color:#d4e4de}.expertise-strip{padding:30px 6%;display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:0;background:#eef1e9;border-bottom:1px solid #dce2d7}.expertise-intro>span{font:12px Arial;letter-spacing:.15em;color:#65756e}.expertise-intro p{font-size:12px;margin:8px 0 0}.expertise-strip>a{border-left:1px solid #cbd4c9;display:flex;align-items:center;justify-content:space-between;padding:0 25px;gap:12px;font-size:15px;font-weight:500}.expertise-number{font:12px Arial;color:#71826f;align-self:flex-start;padding-top:3px}.expertise-strip small{display:block;font:12px Arial;letter-spacing:.08em;color:#6f8077;margin-top:8px}.expertise-strip>a>span:last-child{font-size:18px;color:#55725f}.expertise-strip>a:hover{background:#e1e8d9}.home-page .about-section{padding:115px 0 100px;position:relative}.home-page .about-section:before{content:'BUILT ON EXPERTISE.';position:absolute;bottom:25px;left:0;font:bold clamp(30px,6.2vw,80px) Arial;letter-spacing:-.04em;color:#f0f2ee;z-index:-1}.home-page .about-section h2{font-size:clamp(30px,3.5vw,46px)}.home-page .about-section .lead{font-size:23px}.services{background:#f0f3ec}.service-grid{border-top-color:#b4c3b6;border-bottom-color:#b4c3b6}.service-grid>a{transition:background .25s}.service-grid>a:hover{background:#e4ecdf}.service-grid>a+a{border-left-color:#bdcbbf}.service-grid svg{stroke:#456d5c}.work-image{height:380px}.work-image img{filter:saturate(.6)}.work-image span{background:#0c282be8;color:white;padding:10px 14px}.work-card:nth-child(2){padding-top:55px}.work-card:nth-child(3){padding-top:110px}.works-grid:has([hidden]) .work-card{padding-top:0}.join-section{background:#e1e9da}.contact-band{background:#102c30}.contact-band .button.light{background:var(--accent);border-color:var(--accent)}.page-intro{position:relative}.page-intro:after{content:'+';position:absolute;right:0;top:66px;font:50px Arial;color:#a3bb9a}.text-link:hover{color:#3e745f}
@media(min-width:1500px){.home-page .hero-v2{height:760px}.hero-v2 .hero-copy{padding-top:80px}.hero-v2 h1{font-size:80px}}
@media(max-width:1050px){.hero-v2 h1{font-size:56px}.home-page .hero-v2{height:670px}.hero-action{gap:23px}.field-card{max-width:380px}.expertise-strip{padding:26px 4%}.expertise-strip>a{padding:0 16px}.work-image{height:300px}}
@media(max-width:760px){.home-page header{height:76px}.home-page .menu{color:#e9f1e5}.home-page nav{background:#10282c;border-color:#42605b}.home-page nav a{border-color:#ffffff20}.home-page .nav-contact{margin-top:14px}.home-page .hero-v2{height:690px}.hero-scene{width:100%;height:100%;top:0}.hero-scene img{object-position:58% 45%;filter:saturate(.45) brightness(.72)}.hero-v2:after{background:linear-gradient(90deg,#0b2429e6,#0b242976 70%,#0b242940),linear-gradient(0deg,#0b2429ed,transparent 65%)}.hero-v2 .hero-copy{padding:47px 22px 0}.hero-v2 .eyebrow{font-size:12px;letter-spacing:.13em;margin-bottom:27px}.hero-v2 h1{font-size:clamp(32px,9.4vw,55px);line-height:1.65;letter-spacing:0}.hero-statement{font-size:12px;letter-spacing:.2em;line-height:1.7;margin:24px 0}.hero-action{display:block}.hero-action p{font-size:12px;color:#e0e9e3}.hero-cta{margin-top:22px;gap:22px;width:max-content;font-size:12px}.hero-cta>span{width:44px;height:44px}.hero-side-label{display:none}.field-card{bottom:62px;right:22px;left:22px;max-width:none;padding:15px 13px;gap:12px}.field-card .eyebrow{font-size:12px;letter-spacing:.13em}.field-card p{font-size:12px;margin:6px 0 4px}.field-card small{font-size:12px}.field-cross{font-size:23px}.field-arrow{font-size:19px;margin-left:auto}.hero-scroll{left:22px;bottom:17px;font-size:12px;gap:12px}.hero-scroll span{width:24px;height:24px;font-size:12px}.expertise-strip{padding:25px 22px;grid-template-columns:repeat(3,1fr)}.expertise-intro{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}.expertise-intro>span{font-size:12px}.expertise-intro p{font-size:12px;margin:0}.expertise-strip>a{display:block;padding:0 12px;position:relative;font-size:13px}.expertise-strip>a:nth-child(2){padding-left:0;border:0}.expertise-number{display:block;margin-bottom:10px;font-size:12px}.expertise-strip small{font-size:12px;letter-spacing:.02em;margin-top:6px}.expertise-strip>a>span:last-child{position:absolute;top:0;right:12px;font-size:13px}.home-page .about-section{padding:65px 0}.home-page .about-section h2{font-size:29px}.home-page .about-section:before{bottom:15px;font-size:32px}.service-grid>a+a{border-left:0}.work-card:nth-child(2),.work-card:nth-child(3){padding-top:0}.work-image{height:370px}.page-intro:after{top:20px;font-size:26px}.contact-band h2{font-size:21px}}
@media(prefers-reduced-motion:no-preference){.hero-v2 .hero-copy{animation:enter-field .85s ease both}.field-card{animation:enter-field 1s .15s ease both}@keyframes enter-field{from{opacity:0;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}}}
/* Plain links and readable text */
body{font-size:16px}nav{font-size:14px}.proposal-bar,.proposal-bar a{letter-spacing:0}.eyebrow{letter-spacing:.1em}.button,.text-link,.hero-cta{font-size:14px}.hero-cta{border-bottom:1px solid #c5dca0;padding:12px 0;min-height:44px}.hero-action p{font-size:14px}.hero-action{gap:30px}.field-card{max-width:530px}.field-card p{font-size:15px}.field-card small{line-height:1.8}.hero-scroll{padding:12px 0;border-bottom:1px solid #ffffff55}.expertise-intro p{font-size:14px}.expertise-strip>a{font-size:17px}.expertise-strip small{line-height:1.5;letter-spacing:0}.service-grid p:not(.eyebrow){font-size:15px;max-width:none}.num{font-size:14px}.meta,.meta span{line-height:1.8}.work-card h3{font-size:18px}.note{font-size:13px}.join-inner p:not(.eyebrow),.contact-band p:not(.eyebrow){font-size:15px}.footer-top p,.footer-top>div{font-size:14px}.detail-sections article p,.detail-sections li{font-size:15px}.filters button{font-size:14px}.project-detail dl{font-size:15px}.company-layout p,.company-table{font-size:15px}.contact-layout>div>p:not(.eyebrow),.contact-layout form label{font-size:14px}.contact-layout .text-link{line-height:1.8}#copy-status{font-size:14px}.proposal-content p{font-size:15px}.arrow,.field-arrow{display:none}.page-intro>p:last-child{font-size:15px}
@media(max-width:1050px) and (min-width:761px){nav{gap:15px;font-size:13px}.brand{font-size:15px}.hero-action{display:block}.hero-cta{margin-top:13px;width:max-content}.expertise-strip{grid-template-columns:1fr 1fr 1fr}.expertise-intro{grid-column:1/-1;display:flex;gap:22px;align-items:center;margin-bottom:20px}.expertise-intro p{margin:0}}
@media(max-width:760px){.home-page .hero-v2{height:780px}.hero-v2 .hero-copy{padding-top:38px}.hero-v2 .eyebrow{letter-spacing:.04em}.hero-statement{font-size:13px}.hero-action p{font-size:14px}.hero-cta{font-size:14px;margin-top:18px}.field-card{max-width:none;padding:17px 14px;bottom:70px}.field-card .eyebrow{letter-spacing:0}.field-card p{font-size:14px;line-height:1.7}.field-card small{line-height:1.7}.field-cross{display:none}.hero-scroll{bottom:17px;padding:8px 0}.expertise-intro{display:block;margin-bottom:20px}.expertise-intro p{font-size:14px;margin-top:5px}.expertise-strip{padding:24px 22px;gap:0}.expertise-strip>a{font-size:15px;padding:0 9px}.expertise-strip small{letter-spacing:0;overflow-wrap:anywhere}.home-page .about-section p:not(.eyebrow):not(.lead){font-size:15px}.service-grid p:not(.eyebrow){font-size:15px;max-width:100%;margin-bottom:0}.service-grid svg{top:38px}.work-card h3{font-size:18px}.join-inner p:not(.eyebrow),.contact-band p:not(.eyebrow){font-size:14px}.footer-top p,.footer-top>div{font-size:13px}.footer-bottom{line-height:1.8}.page-intro>p:last-child{font-size:15px}.company-table{font-size:14px}.company-table dd{overflow-wrap:anywhere}.company-layout p{font-size:14px}.proposal-content p{font-size:15px}.filters button{font-size:14px}}
/* Mobile first view — content-sized composition, clear photo window */
@media(max-width:760px){
 .home-page header{height:68px}.home-page nav{top:68px}
 .home-page .hero-v2{height:auto;min-height:0;padding-bottom:16px;display:flex;flex-direction:column}
 .hero-v2 .hero-copy{padding:25px 22px 0;animation:none}
 .hero-v2 .hero-copy>.eyebrow{margin-bottom:13px;font-size:12px;line-height:1.6}
 .hero-v2 h1{font-size:clamp(30px,8.8vw,43px);line-height:1.5}
 .hero-statement{display:none}
 .hero-action{margin-top:14px}
 .hero-action p{font-size:14px;line-height:1.8}
 .hero-cta{margin-top:10px;padding:10px 0;min-height:44px;font-size:14px}
 .hero-scene{top:0;height:100%;width:100%}
 .hero-scene img{object-position:55% 43%;filter:saturate(.55) brightness(.88)}
 .hero-v2:after{background:linear-gradient(180deg,#0b2429f5 0%,#0b2429db 25%,#0b242952 65%,#0b2429b8 100%),linear-gradient(90deg,#0b24297a,transparent 80%)}
 .field-card{position:relative;inset:auto;margin:100px 22px 0;padding:11px 13px;max-width:none;animation:none;background:#102a2edb}
 .field-card .eyebrow{display:none}
 .field-card p{margin:0 0 4px;font-size:14px;line-height:1.6}
 .field-card small{font-size:12px;line-height:1.6}
 .hero-scroll{display:none}
 .expertise-strip{padding:20px 22px}
 .expertise-intro{margin-bottom:14px}
 .expertise-number{margin-bottom:6px}
 .home-page .about-section{padding-top:45px}
}
@media(max-width:760px){.expertise-strip small{display:none}.expertise-strip>a{padding-bottom:5px}}
/* Interior pages — editorial hierarchy aligned with the home page */
body:not(.home-page) header{background:#10282c;color:#f1f4ee;border-bottom:1px solid #ffffff20;height:88px}body:not(.home-page) header .symbol{color:white}body:not(.home-page) header .symbol span{color:var(--accent)}body:not(.home-page) .nav-contact{background:var(--accent);color:#17332e}body:not(.home-page) nav>a:after{background:var(--accent)}body:not(.home-page) .proposal-bar{background:#0a2024;color:#b7c7c2}
.page-intro.wrap{width:100%;padding:26px max(50px,calc((100vw - 1180px)/2)) 55px;background:#10282c;color:#f5f7f0;border:0;position:relative;isolation:isolate}.page-intro:after{content:'';position:absolute;right:7%;top:55px;width:130px;height:130px;border:1px solid #c5dca033;border-radius:50%;z-index:-1}.page-intro:before{content:'';position:absolute;right:10%;top:75px;width:130px;height:130px;border:1px solid #c5dca01a;border-radius:50%;z-index:-1}.page-breadcrumb{display:flex;gap:15px;align-items:center;color:#b7c9c0;font:12px/1.6 Arial,sans-serif;letter-spacing:.05em;margin-bottom:35px}.page-breadcrumb a{text-decoration:underline;text-underline-offset:5px}.page-intro .eyebrow{color:var(--accent);font-size:12px;margin-bottom:15px}.page-intro h1{font-size:clamp(30px,3.4vw,46px);line-height:1.5;max-width:1000px;margin-bottom:20px}.page-intro>p:last-child{font-size:15px;line-height:1.9;color:#c8d6d0;max-width:760px}
.business-index{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #ccd6cc;padding:27px 0;gap:30px}.business-index a{display:flex;align-items:center;gap:22px;font-size:17px;font-weight:500;min-height:44px}.business-index a+a{border-left:1px solid #ccd6cc;padding-left:30px}.business-index small{font:12px Arial;color:#68806d}.business-index a:hover{color:#46725b}.detail-sections article{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr;gap:15px 65px;padding:65px 0;align-items:start}.detail-sections article>.num{grid-column:2;grid-row:1;color:#4d7660;font-size:12px;letter-spacing:.13em}.detail-sections article>div:not(.technical-art){grid-column:2;grid-row:2}.detail-sections article>img,.detail-sections article>.technical-art{grid-column:1;grid-row:1 / 3;width:100%;height:410px;object-fit:cover}.detail-sections article>img{filter:saturate(.65);object-position:center 40%}.detail-sections article h2{font-size:35px;margin-bottom:18px}.detail-sections article p,.detail-sections li{font-size:15px;line-height:1.9}.detail-sections ul{list-style:none;padding:0;margin:24px 0}.detail-sections li{padding:10px 0 10px 18px;border-bottom:1px solid #dce4dc;position:relative}.detail-sections li:before{content:'';width:4px;height:4px;background:#6c8c70;position:absolute;left:0;top:23px}.technical-art{color:#c5dca0;background:#123236;background-image:linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff05 1px,transparent 1px);background-size:30px 30px;gap:12px}.technical-art svg{width:80%;height:260px}.technical-art span{font-size:12px;letter-spacing:.14em}.faq{padding:45px 35px;margin-top:25px;margin-bottom:65px;background:#f0f3ec;max-width:1180px}.faq h2{font-size:29px}.faq summary{font-size:16px}.faq p{font-size:15px}
body:not(.home-page) .work-section{padding-top:35px;padding-bottom:65px}body:not(.home-page) .filters{gap:10px}body:not(.home-page) .filters button{min-height:44px;padding:10px 27px;border-color:#c6d2c7}body:not(.home-page) .filters button[aria-pressed=true]{background:#153a36;border-color:#153a36}body:not(.home-page) .works-grid{grid-template-columns:repeat(2,1fr);gap:40px 30px}body:not(.home-page) .work-card{padding-top:0;border-bottom:1px solid #d4ded3;padding-bottom:22px}body:not(.home-page) .work-card:first-child{grid-column:1/-1}body:not(.home-page) .work-card:first-child .work-image{height:410px}body:not(.home-page) .work-image{height:320px}body:not(.home-page) .work-image img{object-position:center 42%}body:not(.home-page) .work-card h3{font-size:22px}body:not(.home-page) .meta{margin-top:18px}body:not(.home-page) .works-grid:has([hidden]){grid-template-columns:repeat(2,1fr)}body:not(.home-page) .works-grid:has([hidden]) .work-card{grid-column:auto}
.project-detail{padding:55px 0;gap:55px;grid-template-columns:1.1fr 1fr}.project-detail>img{max-height:660px;background:#edf1e9;object-fit:contain}.project-detail>div{padding:30px;background:#f0f3ec}.project-detail dl{grid-template-columns:120px 1fr;gap:0}.project-detail dt,.project-detail dd{padding:16px 0;border-bottom:1px solid #cfdacd}.project-detail dt{color:#60766b;font-size:13px}.project-detail dd{font-size:15px}.project-detail .text-link{font-size:14px}.project-detail .button{display:flex;margin-top:26px;width:max-content}.back a{display:inline-block;border-bottom:1px solid #7e9684;padding:12px 0;font-size:14px}.company-layout{padding:60px 0}.company-table dt{font-size:14px;color:#56715e}.company-table dd{line-height:1.9}.company-table dt,.company-table dd{border-color:#d3ddd0}.recruit-layout{padding:55px 0;gap:55px}.recruit-layout>img{height:550px;object-position:center 38%;filter:saturate(.65)}.recruit-layout p{font-size:15px}.contact-layout{padding:55px 0;gap:60px}.contact-layout>div+div{background:#f0f3ec;padding:30px}.contact-layout input,.contact-layout select,.contact-layout textarea{background:white;border-color:#bdcdbd;font-size:16px}.contact-layout h2{font-size:28px}.contact-layout form label{font-size:15px}
@media(max-width:760px){
 body:not(.home-page) header{height:68px}body:not(.home-page) .menu{color:white}body:not(.home-page) nav{top:68px;background:#10282c;border-color:#36504b}body:not(.home-page) nav a{border-color:#ffffff22}
 .page-intro.wrap{padding:19px 22px 30px}.page-breadcrumb{gap:10px;margin-bottom:24px;font-size:12px;flex-wrap:wrap}.page-intro .eyebrow{margin-bottom:12px;font-size:12px}.page-intro h1{font-size:28px;line-height:1.5;margin-bottom:15px;letter-spacing:0;overflow-wrap:anywhere}.page-intro>p:last-child{font-size:14px;line-height:1.85}.page-intro:after,.page-intro:before{width:75px;height:75px;top:52px}
 .business-index{padding:16px 0;gap:0}.business-index a{font-size:14px;display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:0 12px}.business-index a:first-child{padding-left:0}.business-index a+a{padding-left:17px}.business-index small{font-size:12px}
 .detail-sections article{grid-template-columns:1fr;grid-template-rows:auto auto auto;gap:18px;padding:32px 0;scroll-margin-top:90px}.detail-sections article>.num{grid-column:1;grid-row:1}.detail-sections article>img,.detail-sections article>.technical-art{grid-column:1;grid-row:2;height:225px;object-position:center 42%}.detail-sections article>div:not(.technical-art){grid-column:1;grid-row:3}.detail-sections article h2{font-size:27px;margin-bottom:12px}.detail-sections article p,.detail-sections li{font-size:15px;line-height:1.9}.detail-sections ul{margin:18px 0}.detail-sections article .text-link{min-height:44px}.technical-art{gap:0}.technical-art svg{height:170px}.technical-art span{font-size:12px}.faq{padding:28px 20px;margin-top:25px;margin-bottom:40px}.faq h2{font-size:25px;margin-bottom:23px}.faq summary{font-size:15px;line-height:1.8}.faq details{padding:17px 0}.faq p{font-size:15px}
 body:not(.home-page) .work-section{padding:24px 0 38px}body:not(.home-page) .filters{gap:8px}body:not(.home-page) .filters button{padding:10px 18px;font-size:14px}body:not(.home-page) .works-grid,body:not(.home-page) .works-grid:has([hidden]){grid-template-columns:1fr;gap:27px}body:not(.home-page) .work-card:first-child{grid-column:auto}body:not(.home-page) .work-image,body:not(.home-page) .work-card:first-child .work-image{height:240px}body:not(.home-page) .work-card h3{font-size:18px;line-height:1.6}body:not(.home-page) .meta{font-size:12px;margin:14px 0 7px}.meta span{float:none;display:block;margin-top:3px}body:not(.home-page) .work-card{padding-bottom:20px}.work-image span{font-size:12px;padding:7px 10px;bottom:12px;right:12px}
 .project-detail{padding:30px 0;gap:24px;grid-template-columns:1fr}.project-detail>img{height:auto;width:100%;max-height:430px;object-fit:contain;background:#e9eee6}.project-detail>div{padding:22px 18px}.project-detail dl{grid-template-columns:96px 1fr}.project-detail dd{font-size:14px}.project-detail dt{font-size:13px}.project-detail .button{width:100%;justify-content:center}.back{padding-bottom:38px}
 .company-layout{padding:35px 0;gap:20px}.company-table{grid-template-columns:95px 1fr}.company-table dt,.company-table dd{padding:16px 0;font-size:14px}.company-layout+.narrow{padding-top:20px;padding-bottom:40px}.recruit-layout{padding:30px 0;gap:20px}.recruit-layout>img{height:260px}.recruit-layout article{padding:14px 0 28px}.recruit-layout article+article{padding-top:28px}.recruit-layout h2{font-size:25px}.contact-layout{padding:32px 0;gap:28px}.contact-layout>div+div{padding:25px 18px}.contact-layout h2{font-size:24px}.contact-layout .phone{font-size:29px}.contact-layout form label{font-size:15px}.contact-layout .button{width:100%;justify-content:center}.proposal-content{padding-top:10px}.contact-band{padding:35px 22px}.contact-band p:not(.eyebrow){font-size:14px}.contact-band .button{margin-top:20px}
}
.page-intro h1{text-wrap:balance}
/* Final mobile rhythm and semantic heading breaks */
.heading-phrase{display:inline-block}.fax-number{display:inline-block;margin-left:10px}.fax-number:before{content:'/ ';}
@media(max-width:760px){
 :root{--mobile-space:36px;--mobile-gutter:22px}
 .page-intro h1{font-size:27px;text-wrap:wrap;line-height:1.55;overflow-wrap:normal}
 .page-intro h1 .heading-phrase{display:block}
 .page-intro{padding-bottom:28px!important}
 .page-intro>p:last-child{line-height:1.85}
 .contact-band h2{font-size:21px;line-height:1.65}
 .contact-band h2 .heading-phrase{display:block;white-space:nowrap}
 .home-page .section-heading h2,.join-inner h2{font-size:26px;line-height:1.65}
 .home-page .section-heading h2 .heading-phrase,.join-inner h2 .heading-phrase{white-space:nowrap}
 .home-page .work-section,.home-page .services,.home-page .join-section{padding-top:40px;padding-bottom:40px}
 .home-page .about-section{padding-top:40px;padding-bottom:40px;gap:24px}
 .home-page .about-section:before{display:none}
 .home-page .section-heading{margin-bottom:26px}
 .home-page .works-grid{gap:28px}
 .home-page .work-image,body:not(.home-page) .work-image,body:not(.home-page) .work-card:first-child .work-image{height:auto;aspect-ratio:4/3}
 .work-image img{height:100%;object-fit:cover}
 .work-image img[src*="factory"]{object-position:50% 40%!important}
 .work-image img[src*="aircon"]{object-position:50% 27%!important}
 .work-image img[src*="house"]{object-position:50% 46%!important}
 .detail-sections article>img,.detail-sections article>.technical-art{height:auto;aspect-ratio:4/3}
 .detail-sections article>img[src*="aircon"]{object-position:50% 27%}
 .detail-sections article>img[src*="factory"]{object-position:50% 40%}
 .detail-sections article{padding:32px 0;gap:16px}
 .detail-sections article p{margin-bottom:18px}
 .project-detail{padding-top:32px;padding-bottom:32px;gap:24px}
 .project-detail>img{height:auto;max-height:440px;object-fit:contain}
 .project-detail dl{grid-template-columns:84px minmax(0,1fr);column-gap:12px}
 .project-detail dt,.project-detail dd{padding:14px 0;line-height:1.85}
 .project-detail dt{white-space:nowrap}
 .project-detail dd{overflow-wrap:anywhere}
 .project-detail .note{margin:20px 0}
 .company-layout,.recruit-layout,.contact-layout{padding-top:32px;padding-bottom:32px}
 .company-layout{gap:16px}.company-layout p{margin-bottom:8px}
 .company-table{grid-template-columns:88px minmax(0,1fr);column-gap:12px}
 .company-table dd a[href^="tel:"]{white-space:nowrap}
 .fax-number{display:block;white-space:nowrap;margin:4px 0 0}.fax-number:before{content:''}
 .recruit-layout>img{height:auto;aspect-ratio:4/3;object-fit:cover;object-position:50% 40%}
 .recruit-layout article{padding-bottom:24px}.recruit-layout article+article{padding-top:24px}
 .contact-layout>div+div{padding:24px 18px}.contact-layout .text-link{margin:12px 0}
 .contact-band{padding:32px 22px}.contact-band p:not(.eyebrow){line-height:1.9}
 .contact-band .button{margin-top:20px}
 .proposal-content{padding-bottom:40px}.proposal-content>h2{margin-top:32px;margin-bottom:18px;line-height:1.6}
 .proposal-content p{line-height:1.9}.audit-table{gap:8px}.audit-table h3{text-wrap:balance;line-height:1.7}
 .service-grid .eyebrow{display:block;margin-top:15px}
 footer{padding:32px 22px 24px}.footer-top{gap:24px}.footer-bottom{margin-top:24px;padding-top:18px}
}
@media(max-width:760px){.heading-separator{display:none}}
/* Daylight palette — warm paper, sky blue and copper accents */
:root{--ink:#203f55;--navy:#225576;--paper:#f1f6f8;--muted:#526c7c;--line:#d4e1e6;--accent:#f3b273}
body{background:#fcfdfb;color:var(--ink)}.brand-mark{width:42px;height:42px;flex-shrink:0}.home-page header,body:not(.home-page) header{background:#fcfdfbf5;color:#203f55;border-bottom:1px solid #dbe5e7;backdrop-filter:blur(12px)}.home-page .proposal-bar,body:not(.home-page) .proposal-bar{background:#eaf2f6;color:#466474}.home-page .nav-contact,body:not(.home-page) .nav-contact{background:#225576;color:#fff}.home-page nav>a:not(.nav-contact):after,body:not(.home-page) nav>a:after{background:#225576}
.home-page .hero-v2{background:#f6f8f3;color:#203f55}.hero-scene img{filter:saturate(.8) brightness(1.08)}.hero-v2:after{background:linear-gradient(90deg,#f6f8f3 0%,#f6f8f3f5 21%,#f6f8f3ce 40%,#f6f8f31a 73%),linear-gradient(0deg,#edf5f44d,transparent 55%)}.hero-grid{opacity:.3;background:linear-gradient(90deg,transparent 25%,#6c9ab51a 25.1%,transparent 25.2%,transparent 50%,#6c9ab51a 50.1%,transparent 50.2%)}.hero-v2 .eyebrow{color:#3b657c}.eyebrow i{background:#d38846}.accent-word{color:#2f7f9c}.hero-statement{color:#5d7c8b}.hero-action p{color:#365666}.hero-cta{color:#225576;border-color:#668fa3;font-weight:700}.hero-scroll{color:#45677a;border-color:#92adbb}.hero-side-label{color:#365666}.field-card{background:#fffffff0;color:#203f55;border-color:#ffffff;box-shadow:0 8px 35px #22455912}.field-card .eyebrow{color:#547c8f}.field-card small{color:#516a78}.field-cross{color:#c9823e}
.expertise-strip{background:#eaf3f7;border-color:#d0e0e7}.expertise-strip>a{border-color:#c9dae3}.expertise-strip>a:hover{background:#dcecf4}.expertise-intro>span,.expertise-number,.expertise-strip small{color:#567787}.services{background:#f1f6f8}.service-grid{border-color:#c8dce5}.service-grid>a+a{border-color:#c8dce5}.service-grid>a:hover{background:#e8f1f5}.service-illustration{display:block;width:190px;height:142px;object-fit:contain;margin:24px 0 18px}.service-grid .eyebrow{color:#567787}.service-grid p:not(.eyebrow){color:#526c7c}.work-image img{filter:saturate(.8)}.work-image span{background:#fffffff0;color:#225576}.meta,.meta span{color:#536f7f}.join-section{background:#eaf3f7}.contact-band{background:#e5f0f6;color:#203f55}.contact-band .eyebrow{color:#47728a}.contact-band p:not(.eyebrow){color:#4c6b7b}.contact-band .button.light{background:#225576;color:white;border-color:#225576}.button:hover{background:#337799}.button.light:hover{background:#e1eff6;color:#225576}.text-link:hover{color:#2c7b9d}.text-link{border-color:#8cabbc}footer{background:#f7f9f6}.footer-top p,.footer-bottom{color:#526d7a}
.page-intro.wrap{background:#eaf3f7;color:#203f55}.page-intro .eyebrow{color:#386a86}.page-intro>p:last-child,.page-breadcrumb{color:#486b7f}.page-intro:after{border-color:#9cc6d280}.page-intro:before{border-color:#a5cad65e}.business-index,.business-index a+a{border-color:#cbdde5}.business-index small,.detail-sections article>.num{color:#477792}.business-index a:hover{color:#2c7b9d}.detail-sections article p,.detail-sections li{color:#4d6879}.detail-sections li:before{background:#d49b61}.detail-sections li{border-color:#d9e5ea}.detail-sections article>img,.recruit-layout>img{filter:saturate(.8)}.technical-art{background:#edf5f9;background-image:linear-gradient(#9bb9ca14 1px,transparent 1px),linear-gradient(90deg,#9bb9ca14 1px,transparent 1px);background-size:26px 26px;color:#426b84}.technical-art img{width:80%;height:300px;object-fit:contain}.technical-art span{color:#426b84}.faq,.project-detail>div,.contact-layout>div+div{background:#edf4f7}.filters button[aria-pressed=true],body:not(.home-page) .filters button[aria-pressed=true]{background:#225576;border-color:#225576;color:white}.project-detail dt,.company-table dt{color:#4d7085}.project-detail dt,.project-detail dd,.company-table dt,.company-table dd{border-color:#cfdee6}.company-layout p,.note,.proposal-content p{color:#526c7b}.audit-table span{color:#a16d36}.contact-layout input,.contact-layout select,.contact-layout textarea{border-color:#b9cfdc}.required{color:#95632f}
@media(max-width:760px){
 .brand-mark{width:36px;height:36px}.home-page .menu,body:not(.home-page) .menu{color:#203f55}.home-page nav,body:not(.home-page) nav{background:#fcfdfb;color:#203f55;border-color:#ccdfe8}.home-page nav a,body:not(.home-page) nav a{border-color:#d9e4e8}
 .hero-scene img{filter:saturate(.8) brightness(1.08)}.hero-v2:after{background:linear-gradient(180deg,#f6f8f3f7 0%,#f6f8f3e8 27%,#f6f8f37d 54%,#f6f8f300 76%,#edf5f447 100%),linear-gradient(90deg,#f6f8f34d,transparent 90%)}.hero-action p{color:#294d63}.field-card{background:#fffffff2;border-color:#e4ebeb}.hero-v2 .eyebrow{color:#3b657c}.service-illustration{position:absolute;right:0;top:15px;width:104px;height:78px;margin:0}.service-grid .eyebrow{max-width:calc(100% - 110px);padding-top:3px;font-size:12px;letter-spacing:.04em;overflow-wrap:anywhere}.service-grid h3{margin-top:8px}.service-grid p:not(.eyebrow){margin-top:20px}.technical-art img{height:calc(100% - 32px);max-height:205px;width:85%}.technical-art span{font-size:12px;letter-spacing:.04em}.contact-band .button.light{background:#225576;color:white}.page-intro h1{color:#203f55}
}
.hero-v2 .hero-copy,.field-card{animation:none}
/* Final cross-page readability and image balance */
:root{--muted:#435f71}
.hero-statement,.hero-v2 .eyebrow,.field-card .eyebrow,.field-card small,.expertise-intro>span,.expertise-number,.expertise-strip small,.service-grid .eyebrow,.service-grid p:not(.eyebrow),.meta,.meta span,.note,.company-layout p,.proposal-content p,.footer-top p,.footer-bottom,.page-breadcrumb,.page-intro>p:last-child,.detail-sections article p,.detail-sections li,.contact-band p:not(.eyebrow),.project-detail dt,.company-table dt{color:#435f71}
.meta,.meta span,.note,.footer-top p,.footer-top>div,.footer-bottom,.field-card small,.expertise-strip small,.service-grid .eyebrow,.page-breadcrumb{font-size:13px;line-height:1.85}
.company-layout p,.contact-layout>div>p:not(.eyebrow),.proposal-content p{font-size:15px;line-height:1.95}
.home-page .about-section:before{display:none}
.hero-scene img{filter:saturate(.85) brightness(1.03)}
.work-image img[src*="factory"]{object-position:50% 40%}
.work-image img[src*="aircon"]{object-position:50% 27%}
.work-image img[src*="house"]{object-position:50% 46%}
.technical-art img{width:76%;height:260px;object-fit:contain}
input::placeholder,textarea::placeholder{color:#536b79;opacity:1}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #225576;outline-offset:4px}
@media(min-width:761px){
 body:not(.home-page) .works-grid,body:not(.home-page) .works-grid:has([hidden]){grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
 body:not(.home-page) .work-card:first-child{grid-column:auto}
 body:not(.home-page) .work-image,body:not(.home-page) .work-card:first-child .work-image{height:auto;aspect-ratio:4/5}
 body:not(.home-page) .work-card h3{font-size:20px;line-height:1.7}
 .meta span{float:none;display:block;margin-top:3px}
 nav{font-size:13px}
}
@media(max-width:1050px) and (min-width:761px){nav{gap:15px}.brand{font-size:15px}.brand small{letter-spacing:.12em}}
@media(max-width:760px){
 .technical-art img{width:74%;height:calc(100% - 44px);max-height:200px}
 .service-grid .eyebrow{font-size:12px}
 .footer-bottom{gap:12px;line-height:1.8}
 .field-card small{font-size:12px}
 .company-layout p,.contact-layout>div>p:not(.eyebrow),.proposal-content p{font-size:15px}
}
.detail-sections article .technical-art img{width:76%;height:260px;object-fit:contain;flex-shrink:0}
@media(max-width:760px){.detail-sections article .technical-art img{width:74%;height:calc(100% - 44px);max-height:200px}}
/* Editorial first view, with legible typography throughout */
.hero-new{background:#f5f8f5;display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:40px max(4%,calc((100vw - 1380px)/2)) 52px;overflow:hidden;align-items:center}
.hero-new-copy{padding:20px 0 22px;position:relative;z-index:2}
.hero-kicker{display:flex;align-items:center;gap:12px;color:#3d6174;font-size:14px;font-weight:600;letter-spacing:.04em;margin-bottom:30px}
.hero-kicker>span{width:25px;height:2px;background:#ba7942;flex-shrink:0}
.hero-new h1{font-size:clamp(36px,4.6vw,68px);line-height:1.55;letter-spacing:-.035em;white-space:nowrap;font-weight:800;color:#203f55}
.hero-new h1 span{color:#277e99;position:relative}
.hero-new h1 span:after{content:'';position:absolute;left:0;right:0;bottom:0;height:5px;background:#d0e4e6}
.hero-new-lead{font-size:18px;line-height:2;letter-spacing:.04em;margin:28px 0 30px;color:#365467}
.hero-new-actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap}
.hero-new-actions .button{padding:17px 24px;font-size:16px}
.hero-new-actions .text-link{font-size:16px;white-space:nowrap}
.hero-specialties{display:flex;gap:0;margin-top:38px;font-size:15px;color:#435f71}
.hero-specialties span{padding:0 19px;border-left:1px solid #bccfd7;line-height:1.4}
.hero-specialties span:first-child{border:0;padding-left:0}
.hero-new-visual{position:relative;padding:0 24px 35px 40px;min-width:0}
.hero-main-photo{margin:0;position:relative;background:#dce8eb;overflow:hidden;border-radius:100px 0 0 0;height:590px}
.hero-main-photo>img{width:100%;height:100%;object-fit:cover;object-position:50% 38%}
.hero-main-photo:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#122a36c7)}
.hero-main-photo figcaption{position:absolute;bottom:24px;left:24px;right:18px;z-index:1;color:white;text-align:right}
.hero-main-photo figcaption>span{display:block;font-size:16px;font-weight:600}
.hero-main-photo figcaption small{display:block;font-size:14px;margin-top:5px;color:#fff}
.hero-inset{position:absolute;bottom:0;left:0;width:180px;background:white;padding:8px;box-shadow:0 10px 35px #173e4917}
.hero-inset img{width:100%;height:182px;object-fit:cover;object-position:50% 42%}
.hero-inset span{display:block;font-size:13px;font-weight:600;padding:7px 2px 1px;line-height:1.6}
.hero-vertical{position:absolute;right:0;top:40px;writing-mode:vertical-rl;font-size:12px;letter-spacing:.15em;color:#486778}
.eyebrow,.num,.page-intro .eyebrow,.detail-sections article>.num{font-size:14px}
nav{font-size:15px;gap:22px}
.button,.text-link,.filters button,body:not(.home-page) .filters button{font-size:16px}
.service-grid p:not(.eyebrow),.detail-sections article p,.detail-sections li,.join-inner p:not(.eyebrow),.contact-band p:not(.eyebrow),.page-intro>p:last-child,.company-layout p,.company-table dd,.recruit-layout p,.contact-layout>div>p:not(.eyebrow),.proposal-content p,.home-page .about-section p:not(.eyebrow):not(.lead){font-size:16px;line-height:1.95}
.meta,.meta span,.note,.footer-top p,.footer-top>div,.footer-bottom,.page-breadcrumb,.project-detail dt,.company-table dt,.expertise-strip small{font-size:14px;line-height:1.85}
.project-detail dd{font-size:16px}.service-grid .eyebrow{font-size:14px;letter-spacing:.04em}
.work-image span{font-size:14px}.expertise-intro p{font-size:16px}.expertise-intro>span{font-size:14px}
.footer-top{grid-template-columns:1.1fr 1.2fr .7fr}.footer-bottom{flex-wrap:wrap;gap:14px}
@media(max-width:1100px) and (min-width:761px){
 header{padding-left:3%;padding-right:3%}nav{gap:13px;font-size:14px}.brand{font-size:16px}.nav-contact{padding:12px}
 .hero-new{gap:12px;padding:30px 4% 38px}.hero-new-visual{padding-left:24px}.hero-main-photo{height:520px;border-radius:70px 0 0 0}.hero-inset{width:148px}.hero-inset img{height:150px}.hero-inset span{font-size:12px}.hero-main-photo figcaption{bottom:95px;left:16px;right:16px}.hero-kicker{font-size:12px;gap:8px}.hero-new-lead{font-size:16px}.hero-new-actions{gap:15px}.hero-new-actions .button{padding:14px 18px;font-size:15px}.hero-new-actions .text-link{font-size:15px}
 .expertise-strip small{font-size:12px}
}
@media(max-width:760px){
 .hero-new{display:flex;flex-direction:column;gap:22px;padding:27px 22px 24px;align-items:stretch}
 .hero-new-copy{padding:0}.hero-kicker{font-size:12px;letter-spacing:0;gap:9px;margin-bottom:17px}.hero-kicker>span{width:17px}
 .hero-new h1{font-size:clamp(29px,8.6vw,46px);line-height:1.48;letter-spacing:-.04em}.hero-new h1 span:after{height:3px}
 .hero-new-lead{font-size:15px;line-height:1.85;letter-spacing:0;margin:18px 0}
 .hero-new-actions{gap:17px;flex-wrap:nowrap}.hero-new-actions .button{padding:12px 14px;font-size:14px;white-space:nowrap}.hero-new-actions .text-link{font-size:14px;padding:10px 0}
 .hero-specialties{display:none}
 .hero-new-visual{padding:0 0 20px 29px}.hero-main-photo{height:252px;border-radius:60px 0 0 0}.hero-main-photo>img{object-position:50% 31%}
 .hero-inset{width:104px;padding:5px}.hero-inset img{height:115px}.hero-inset span{display:none}.hero-vertical{display:none}
 .hero-main-photo figcaption{left:72px;right:12px;bottom:14px;text-align:right}.hero-main-photo figcaption>span{font-size:13px}.hero-main-photo figcaption small{font-size:12px;margin-top:2px}
 .service-grid .eyebrow{font-size:13px;max-width:calc(100% - 108px)}
 .footer-top>div{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px}
 .footer-bottom{font-size:13px}.page-intro>p:last-child{font-size:16px}
 .project-detail dt,.company-table dt{font-size:14px}.project-detail dd,.company-table dd{font-size:15px}
 .contact-band p:not(.eyebrow),.join-inner p:not(.eyebrow){font-size:16px}
 .expertise-intro p{font-size:16px}.expertise-strip>a{font-size:16px}
}
@media(max-width:359px){.hero-new{padding-left:18px;padding-right:18px}.hero-kicker{font-size:11px;gap:6px}.hero-kicker>span{width:12px}.hero-new-actions{gap:13px}.hero-new-actions .button{padding:12px 10px;font-size:13px}.hero-new-actions .text-link{font-size:13px}.hero-main-photo figcaption>span{font-size:12px}.hero-main-photo figcaption small{font-size:11px}}
@media(max-width:760px){.hero-kicker{font-size:14px;line-height:1.6}.hero-main-photo figcaption{left:84px}.hero-main-photo figcaption>span{font-size:14px}.hero-main-photo figcaption small{font-size:13px}}
@media(max-width:359px){.hero-kicker{font-size:13px}.hero-main-photo figcaption>span{font-size:13px}.hero-main-photo figcaption small{font-size:12px}}
@media(max-width:1050px) and (min-width:761px){.footer-top{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.footer-top{grid-template-columns:minmax(0,1fr);gap:24px}.footer-top>div{grid-column:auto}.footer-top p{margin-bottom:0}}
