/* Direct React/Vite CSS port: src/styles.css, reference.css, responsive.css, focus.css and page styles. */
:root{font-family:"IBM Plex Sans Thai","IBM Plex Sans",system-ui,sans-serif;color:#17233a;background:#fff;font-synthesis:none;line-height:1.6;--page-max:1180px;--gutter:16px;--control-min:44px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;overflow-x:hidden}a{color:inherit}button,input,select,textarea{font:inherit}.shell,.section-shell{width:min(var(--page-max),calc(100% - (var(--gutter) * 2)));margin:auto}:where(a,button,input,select,textarea):focus-visible{outline:3px solid #77b6fa;outline-offset:3px}
.header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);border-bottom:1px solid #dbe3ee;backdrop-filter:blur(10px)}.nav-row{height:80px;display:flex;align-items:center;gap:18px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;margin-right:auto}.brand-mark{display:grid;place-items:center;width:40px;height:40px;background:#103864;color:#fff;font-size:.78rem;font-weight:700}.brand strong,.brand small{display:block;line-height:1.15}.brand strong{color:#12365e;font-size:1.1rem;letter-spacing:.035em}.brand small{font-size:.64rem;letter-spacing:0;color:#6a7787;margin-top:3px}.desktop-nav,.desktop-nav .menu-list{display:flex;gap:2px;margin:0;padding:0;list-style:none}.desktop-nav a,.mobile-nav a{text-decoration:none;padding:9px 10px;font-size:.89rem;color:#3f4c5e}.desktop-nav a:hover,.desktop-nav .current-menu-item>a{color:#0059b8;background:#edf5ff}.nav-phone{font-size:.85rem;text-decoration:none;display:flex;align-items:center;gap:6px;border:1px solid #d7e0ea;padding:8px 10px}.quote-button,.primary-button{border:0;background:#0872d1;color:#fff;text-decoration:none;font-weight:700;border-radius:0;padding:11px 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;min-height:var(--control-min)}.quote-button:hover,.primary-button:hover{background:#004a9b}.menu-button{display:none;border:1px solid #ced8e5;background:white;border-radius:0;padding:7px;min-height:var(--control-min);min-width:var(--control-min)}.menu-close-icon{display:none}.mobile-nav{display:none}.mobile-nav .menu-list{margin:0;padding:0;list-style:none}.mobile-nav .menu-list{display:grid}.mobile-nav a{border-bottom:1px solid #e5edf5}.mobile-quote{margin-top:12px;background:#0872d1;color:#fff!important;text-align:center;font-weight:700}.floating-actions{position:fixed;right:18px;bottom:18px;display:grid;gap:9px;z-index:10}.floating-actions a,.floating-actions button{display:grid;place-items:center;width:45px;height:45px;border:0;border-radius:50%;background:#0066c9;color:#fff;box-shadow:0 8px 20px rgba(0,50,115,.25)}.floating-actions a:first-of-type{background:#0b2d5c}.floating-actions button{display:none;background:#fff;color:#0d2c5c;border:1px solid #dbe3ee}.floating-actions.is-visible button{display:grid}
.home-page{color:#1a2c49;background:#fff;overflow:hidden}.home-hero{position:relative;min-height:620px;display:grid;align-items:center;isolation:isolate;overflow:hidden;color:#fff;background:#071d3e}.home-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.home-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,23,51,.93),rgba(6,29,63,.8) 43%,rgba(7,29,62,.35));z-index:-1}.home-hero-content{padding:86px 0}.home-kicker,.home-eyebrow{margin:0 0 13px;color:#1674dc;font-size:12px;font-weight:600;letter-spacing:.14em}.home-kicker{color:#96c6ff}.home-hero h1{max-width:740px;margin:0;font-size:clamp(40px,4.2vw,60px);line-height:1.25}.home-hero-copy{max-width:600px;margin:24px 0 0;color:#e3edf9;font-size:17px;line-height:1.75}.home-hero-actions{display:flex;gap:12px;margin-top:32px}.home-primary-button,.home-secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 21px;border-radius:5px;font-size:14px;font-weight:600;text-decoration:none}.home-primary-button{color:#fff;background:#1269cc;border:1px solid #1269cc}.home-secondary-button{color:#fff;border:1px solid rgba(255,255,255,.62)}.home-strengths{padding:106px 0 112px}.home-section-heading h2{margin:0;color:#102d56;font-size:30px}.centered-heading{text-align:center}.home-section-heading>p:not(.home-eyebrow){max-width:610px;margin:14px auto 0;color:#63738b}.home-strength-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:45px}.home-strength-card{padding:29px 24px;min-height:219px;border:1px solid #e4eaf1;border-radius:8px;box-shadow:0 9px 28px rgba(16,45,86,.055)}.home-icon-wrap{display:grid;place-items:center;width:48px;height:48px;margin-bottom:20px;color:#1269cc;background:#eaf4ff}.home-strength-card h3{margin:0;font-size:18px}.home-strength-card p,.home-service-copy{color:#6a7990;font-size:14px;line-height:1.65}.home-services{padding:104px 0 112px;background:#f3f7fb}.home-heading-row{display:flex;align-items:end;justify-content:space-between;gap:32px}.home-text-link,.home-service-card a,.home-project-body a{color:#1269cc;font-size:13px;font-weight:600;text-decoration:none}.home-service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:42px}.home-service-card{position:relative;display:flex;min-width:0;min-height:328px;overflow:hidden;border-radius:8px;color:#fff;isolation:isolate;background:#0a2651}.home-service-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.home-service-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,22,51,.16),rgba(4,25,56,.94));z-index:-1}.home-service-body{align-self:end;padding:32px;min-width:0}.home-service-icon{display:grid;place-items:center;width:44px;height:44px;margin-bottom:22px;border:1px solid rgba(255,255,255,.45)}.home-service-en{color:#a8cff9;font-size:11px}.home-service-card h3{font-size:22px}.home-service-copy{color:#e1eaf5}.home-service-card h3,.home-service-copy{overflow-wrap:anywhere}.home-service-card a{color:#fff}.home-projects{padding:107px 0 0}.home-project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:42px}.home-project-card{overflow:hidden;border:1px solid #e4eaf1;border-radius:8px;box-shadow:0 8px 27px rgba(16,45,86,.06)}.home-project-card img{display:block;width:100%;height:218px;object-fit:cover}.home-project-body{padding:20px}.home-project-body h3{min-height:54px;font-size:17px}.home-stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:64px;border-top:1px solid #dae3ed;border-bottom:1px solid #dae3ed}.home-stats div{padding:27px 30px}.home-stats div+div{border-left:1px solid #dae3ed}.home-stats strong{font-size:21px}.home-stats span{display:block;color:#6a7990;font-size:13px}.home-closing-cta{margin-top:112px;padding:91px 0 96px;color:#fff;background:linear-gradient(120deg,#08244e,#1269cc)}.home-closing-inner{text-align:center}.home-closing-cta h2{font-size:42px}.home-closing-cta p{max-width:615px;margin:17px auto 29px;color:#dceafa}.home-closing-cta .home-primary-button{background:#fff;border-color:#fff;color:#1260bd}
.about-page,.services-page,.projects-page{color:#102d56;background:#fff;overflow:hidden}.about-intro,.services-intro,.projects-intro{color:#fff;background:#0b2d5c}.about-intro-inner{padding:74px 0 76px}.services-intro-inner{padding:72px 0 74px}.projects-intro-inner{padding:70px 0 72px}.about-intro p,.about-label,.services-intro p,.projects-intro p{margin:0 0 14px;color:#64a9ed;font-size:12px;font-weight:600;letter-spacing:.08em}.about-intro h1,.services-intro h1,.projects-intro h1{max-width:720px;margin:0;font-size:clamp(40px,4.1vw,58px);font-weight:700;line-height:1.2;letter-spacing:-.03em}.about-intro span,.services-intro span,.projects-intro span{display:block;max-width:690px;margin-top:21px;color:#d5e4f6;font-size:16px;line-height:1.72}.about-profile{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding:99px 0 100px}.about-profile h2,.about-commitments>h2{margin:0;color:#102445;font-size:30px;line-height:1.2}.about-profile-copy>p:not(.about-label){max-width:535px;margin:21px 0 0;color:#64748a;font-size:15px;line-height:1.8}.about-facts{margin:28px 0 0;border-top:1px solid #dbe3ee}.about-facts>div{display:grid;grid-template-columns:168px minmax(0,1fr);gap:18px;padding:15px;border-right:1px solid #dbe3ee;border-bottom:1px solid #dbe3ee;border-left:1px solid #dbe3ee}.about-facts dt{font-size:14px;font-weight:700;color:#17375e}.about-facts dd{margin:0;color:#66768d;font-size:14px;line-height:1.55}.about-figure{align-self:start;margin:0}.about-figure img{display:block;width:100%;height:342px;object-fit:cover}.about-figure figcaption{margin-top:7px;color:#718197;font-size:12px}.about-principles{padding:84px 0;background:#f1f6fb}.about-principles-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.about-principles article{min-height:212px;padding:32px 30px;background:#fff;border:1px solid #e0e8f0;box-shadow:0 11px 22px rgba(16,45,86,.08)}.about-principles svg{color:#0a70d3}.about-principles h2{margin:17px 0 0;color:#112d52;font-size:22px;line-height:1.3}.about-principles p,.about-principles ul{max-width:505px;margin:13px 0 0;color:#67768c;font-size:14px;line-height:1.72}.about-principles ul{display:grid;gap:8px;padding:0;list-style:none}.about-principles li{display:flex;gap:8px}.about-commitments{padding:97px 0 111px}.about-commitment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:33px}.about-commitment-grid article{min-height:148px;padding:26px 24px;border:1px solid #dfe7ef;box-shadow:0 8px 20px rgba(16,45,86,.05)}.about-commitment-grid h3{margin:0;color:#153257;font-size:18px}.about-commitment-grid p{margin:10px 0 0;color:#6c7b90;font-size:14px;line-height:1.65}
.services-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding-top:72px;padding-bottom:104px}.services-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid #dfe7ef;background:#fff;box-shadow:0 9px 24px rgba(16,45,86,.075);transition:transform .22s ease,box-shadow .22s ease}.services-card:hover{transform:translateY(-4px);box-shadow:0 17px 30px rgba(16,45,86,.13)}.services-card>img{display:block;width:100%;height:185px;object-fit:cover}.services-card-body{display:flex;flex:1;flex-direction:column;padding:23px 23px 21px}.services-card h2{margin:0;color:#122e53;font-size:21px;line-height:1.35}.services-description{min-height:67px;margin:13px 0 0;color:#68778c;font-size:14px;line-height:1.64}.services-card ul{display:grid;gap:8px;margin:17px 0 16px;padding:0;list-style:none;color:#5f6f85;font-size:14px;line-height:1.45}.services-card li{display:flex;gap:8px}.services-note{margin:0 0 17px;padding:7px 10px;background:#f0f5fb;color:#78879a;font-size:12px;line-height:1.4}.services-card a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:40px;margin-top:auto;color:#fff;background:#0872d1;font-size:14px;font-weight:700;text-decoration:none;transition:background-color .2s ease}.services-card a:hover{background:#0759ac}
.projects-intro h1{max-width:none}.projects-content{padding:58px 0 108px}.project-filters{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:29px}.project-filters button{border:1px solid #dce4ed;background:#fff;color:#233b5c;padding:9px 14px;font-size:14px;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s}.project-filters button:hover,.project-filters button.active{background:#103864;border-color:#103864;color:#fff}.projects-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.projects-card{overflow:hidden;border:1px solid #dfe7ef;background:#fff;box-shadow:0 8px 21px rgba(16,45,86,.07);transition:transform .2s ease,box-shadow .2s ease}.projects-card:hover{transform:translateY(-4px);box-shadow:0 15px 28px rgba(16,45,86,.12)}.projects-card>img{display:block;width:100%;height:196px;object-fit:cover}.projects-card>div{padding:18px 19px 20px}.projects-card p{margin:0}.projects-category{color:#1875d0;font-size:12px;font-weight:700}.projects-card h2{min-height:54px;margin:8px 0 3px;color:#122e53;font-size:19px;line-height:1.4}.projects-location{color:#738299;font-size:13px}.projects-excerpt{min-height:47px;margin-top:10px!important;color:#68778d!important;font-size:13px;line-height:1.55}.projects-card a{display:inline-flex;align-items:center;gap:7px;margin-top:13px;color:#0872d1;font-size:13px;font-weight:700;text-decoration:none}.projects-empty,.empty-state{padding:42px;background:#f1f6fb;color:#66768c;text-align:center}
.page-hero{background:#0d2c5c;color:#fff;padding:75px 0}.page-hero h1{font-size:clamp(2.2rem,4vw,3.8rem);line-height:1.2;margin:0}.page-hero p{max-width:720px;color:#d4e1f4;font-size:1.08rem}.section{padding:88px 0}.split{display:grid;grid-template-columns:1.2fr 1fr;gap:56px}.split p{color:#536275}.detail-image{width:100%;height:390px;object-fit:cover;border-radius:10px}.side-cta{padding:28px;border-radius:12px;background:#f1f6fb;height:max-content}.side-cta .primary-button{margin-top:12px}.article{max-width:820px}.article time{color:#65758a}.article-content{margin-top:28px}.article>p{font-size:1.1rem;color:#3e4c60}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.news-card{border:1px solid #dbe3ee;background:#fff;border-radius:12px;padding:22px}.news-card>span{font-size:.77rem;color:#24578e;font-weight:bold}.news-card time{font-size:.85rem;color:#65758a;margin-left:10px}.news-card h2{font-size:1.3rem;line-height:1.35}.news-card p{color:#56657a;font-size:.94rem}.news-card a,.text-link{color:#0059b8;font-weight:bold;text-decoration:none;display:inline-flex;align-items:center;gap:6px}.text-link{margin-top:28px}
.contact-reference-page{background:#fff;color:#112d53}.contact-reference-hero{background:#0b2d5c;color:#fff}.contact-reference-hero .shell{padding:70px 0}.contact-reference-hero p{margin:0 0 13px;color:#9dc8f2;font-size:12px;font-weight:700}.contact-reference-hero h1{margin:0;font-size:clamp(36px,4vw,56px);line-height:1.18}.contact-reference-hero span{display:block;max-width:680px;margin-top:20px;color:#d8e6f5;font-size:16px}.contact-reference-main{display:grid;grid-template-columns:.75fr 1.25fr;gap:48px;padding:70px 0 88px}.contact-reference-info h2,.contact-reference-form h2{margin:0 0 22px;font-size:23px}.contact-reference-info>p{display:flex;gap:12px;align-items:flex-start;color:#52657f}.contact-reference-info svg{flex:none;color:#0872d1}.contact-reference-info a{color:inherit}.contact-reference-actions{display:flex;flex-wrap:wrap;gap:12px;margin:25px 0}.contact-reference-actions a{display:inline-flex;flex:1 1 max-content;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 15px;border:1px solid #d6e0eb;color:#27435f;text-decoration:none;font-weight:700;white-space:nowrap}.contact-reference-actions a:first-child{background:#0872d1;border-color:#0872d1;color:#fff}.contact-reference-info iframe{width:100%;height:240px;border:0}.contact-reference-form{border:1px solid #dce5ef;padding:32px;background:#fff;box-shadow:0 5px 18px rgba(16,45,86,.05)}.contact-reference-form>p{margin:-12px 0 22px;color:#6b7b91}.quote-form{margin-top:20px}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:grid;gap:6px;margin-bottom:14px;font-size:.92rem;font-weight:600}.field input,.field select,.field textarea{width:100%;max-width:100%;min-width:0;border:1px solid #bdcada;background:#fff;padding:10px;border-radius:7px;color:#1e2f47}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid #bfddfb;border-color:#0066c9}.field input,.field select{min-height:var(--control-min)}.field textarea{min-height:120px}.hp-field{position:absolute!important;overflow:hidden!important;width:1px!important;height:1px!important;clip:rect(1px,1px,1px,1px)!important}.form-notice{padding:12px;border-radius:8px}.form-notice.success{background:#edf9f0;color:#165b31}.form-notice.error{background:#fff0ef;color:#8d251c}
.footer{color:#e2ebf7;background:#0a213f;margin-top:0}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr .7fr;gap:45px;padding:60px 0}.footer h2{font-size:1rem;margin-top:0}.footer-brand{font-size:1.5rem;font-weight:bold;letter-spacing:.08em;margin-top:0}.footer p{display:flex;gap:9px;align-items:flex-start;font-size:.9rem}.footer p svg{flex:none;margin-top:3px}.footer a{color:#e2ebf7}.muted-on-dark{color:#a8bad2}.footer-links{display:grid;gap:8px;font-size:.9rem}.footer-links a{min-height:44px;display:inline-flex;align-items:center}.copyright{border-top:1px solid #274667;padding:18px 0;color:#a8bad2;font-size:.78rem}.not-found{min-height:65vh;display:grid;place-items:center;text-align:center;padding:50px 20px}.not-found p{font-size:5rem;font-weight:bold;color:#0066c9;margin:0}.not-found h1{margin:0}.not-found span{display:block;color:#536275;margin:8px 0 20px}
@media(min-width:480px){:root{--gutter:20px}}@media(min-width:768px){:root{--gutter:28px}.menu-button,.mobile-nav{display:none!important}}@media(min-width:1024px){:root{--gutter:40px}}@media(min-width:1440px){.shell,.section-shell{max-width:1280px}}@media(max-width:930px){.desktop-nav,.nav-phone{display:none}.menu-button{display:grid;place-items:center}.mobile-nav:not([hidden]){display:grid;padding:12px 0 16px}.menu-button[aria-expanded=true] .menu-open-icon{display:none}.menu-button[aria-expanded=true] .menu-close-icon{display:block}.footer-grid{grid-template-columns:1fr 1fr}.split{grid-template-columns:1fr;gap:30px}.news-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.home-strength-grid,.home-project-grid{grid-template-columns:repeat(2,1fr)}.home-project-card:last-child{grid-column:span 2}.about-profile{gap:34px;padding-top:78px;padding-bottom:78px}.about-figure img{height:300px}.about-commitment-grid,.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-commitment-grid article:last-child{grid-column:span 2}.contact-reference-main{grid-template-columns:1fr;gap:36px}.services-list{padding-top:58px;padding-bottom:78px;gap:16px}}@media(max-width:640px){.nav-row{height:66px;gap:9px}.quote-button{display:none}.home-hero{min-height:590px}.home-hero h1{font-size:38px}.home-hero-actions{display:grid;grid-template-columns:1fr}.home-primary-button,.home-secondary-button{width:100%}.home-strengths,.home-services{padding:65px 0}.home-strength-grid,.home-service-grid,.home-project-grid,.home-stats,.services-list,.projects-grid,.about-principles-grid,.about-commitment-grid,.two-cols,.news-grid,.footer-grid{grid-template-columns:1fr}.home-service-card{min-height:315px}.home-project-card:last-child,.about-commitment-grid article:last-child{grid-column:auto}.home-stats div+div{border-top:1px solid #dae3ed;border-left:0}.home-closing-cta{margin-top:65px;padding:66px 0 72px}.home-closing-cta h2{font-size:34px}.about-intro-inner,.services-intro-inner,.projects-intro-inner{padding:62px 0 65px}.about-intro h1,.services-intro h1,.projects-intro h1{font-size:38px;line-height:1.27}.about-profile{grid-template-columns:1fr;padding-top:64px;padding-bottom:64px}.about-facts>div{grid-template-columns:1fr;gap:5px;padding:14px}.about-figure img{height:260px}.about-principles{padding:62px 0}.about-principles article{min-height:0;padding:26px 23px}.about-commitments{padding-top:65px;padding-bottom:67px}.about-commitment-grid article{min-height:0;padding:23px 21px}.services-list{padding-top:47px;padding-bottom:65px;gap:17px}.services-card>img{height:190px}.services-card-body{padding:21px}.services-card h2{font-size:20px}.projects-content{padding-top:43px;padding-bottom:66px}.projects-card>img{height:210px}.projects-card h2,.projects-excerpt{min-height:0}.page-hero{padding:55px 0}.section{padding:58px 0}.detail-image{height:260px}.contact-reference-hero .shell{padding:52px 0}.contact-reference-hero h1{font-size:34px}.contact-reference-main{padding:48px 0 60px}.contact-reference-actions{display:grid;grid-template-columns:1fr}.contact-reference-form{padding:22px}.contact-reference-info iframe{height:210px}.footer-grid{gap:27px;padding:45px 0}.primary-button{width:100%}.floating-actions{right:var(--gutter);bottom:var(--gutter)}}@media(prefers-reduced-motion:reduce){.about-page *,.services-page *,.projects-page *{transition:none!important}}
/* Contact 375px measured parity: direct React computed geometry. */
@media(max-width:640px){.nav-row{height:80px}.footer-links a{min-height:0}.contact-reference-form .primary-button{margin-top:4px}}
@media(max-width:640px){.projects-grid{gap:16px}.services-card a{min-height:44px}.about-profile h2{font-size:28px;line-height:33.6px}}
@media(max-width:640px){.services-intro-inner{padding:62px 0 65px}.services-intro h1{font-size:38px;line-height:1.27}.services-intro span{font-size:15px;margin-top:18px}.services-description{min-height:0;margin-top:11px}.services-card ul,.services-scope-list{margin:15px 0}}
/* React DOM-equivalent bilingual nodes are nested spans in WordPress. Keep
 * semantic card labels scoped to their direct React-equivalent element. */
.news-card>span{font-size:.77rem;color:#24578e;font-weight:bold}.news-card h2 [data-polsiam-th],.news-card h2 [data-polsiam-en]{font:inherit}
.about-principles ul{max-width:505px;margin:13px 0 0;color:#67768c;font-size:14px;line-height:1.5}.about-commitment-grid h3{line-height:1.35}
@media (min-width:641px) and (max-width:900px){.services-card>img{height:170px}.services-card-body{padding:21px}.services-description{min-height:0}}
@media (min-width:641px) and (max-width:900px){.projects-card>img{height:190px}}
@media (min-width:641px) and (max-width:900px){.about-profile{gap:34px;padding-top:78px;padding-bottom:78px}.about-figure img{height:300px}.about-principles{padding:70px 0}.about-commitments{padding-top:78px;padding-bottom:80px}.about-commitment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-commitment-grid article:last-child{grid-column:span 2}}
@media (max-width:640px){.project-filters{gap:8px}.project-filters button{padding:8px 11px;font-size:13px}}
@media(min-width:641px) and (max-width:900px){.section-shell{width:min(1180px,calc(100% - 48px))}}
/* React footer links are 23px visual and pointer boxes with no expanded hit target. */
.footer-links li{list-style:none}
.home-hero{min-height:590px}.home-primary-button,.home-secondary-button{min-height:44px}.split h2{margin-top:28px}.split li{margin-bottom:7px;color:#536275}@media(max-width:640px){.home-closing-cta h2{font-size:42px}}
@media(max-width:600px){.shell{width:min(100% - 28px,1180px)}.brand small{font-size:.55rem}}

/* Supplied POLSIAM mark; the text inside the existing aria-hidden fallback remains non-semantic. */
.brand-mark{width:62px;height:46px;background:transparent url('../images/logo-polsiam-white-v01.png') center/contain no-repeat;color:transparent}

/* Keep the original site palette; only the primary navigation surface is navy. */
.header{background:#0b2d5c;border-bottom-color:#0b2d5c;backdrop-filter:none}
.brand strong{color:#fff}.brand small{color:#d5e4f6}
.desktop-nav a{color:#e2ebf7}.desktop-nav a:hover,.desktop-nav .current-menu-item>a{color:#fff;background:#103864}
.nav-phone{color:#e2ebf7;border-color:#274667}
.language-switch{border-color:#274667}.language-switch button{background:#0b2d5c;color:#e2ebf7}.language-switch button.active{background:#103864;color:#fff}
.menu-button{color:#fff;border-color:#6c87a6;background:transparent}
@media(max-width:930px){.mobile-nav{background:#0b2d5c}.mobile-nav a{color:#e2ebf7;border-bottom-color:#274667}.mobile-language{background:#0b2d5c}}
@media(min-width:768px) and (max-width:1023px){.shell{width:min(1180px,calc(100% - 40px))}.section-shell{width:min(1180px,calc(100% - 48px))}}
@media(min-width:1024px) and (max-width:1439px){.shell{width:min(1180px,calc(100% - 40px))}}
@media(min-width:1024px){.section-shell{width:min(1180px,calc(100% - 48px))}}
@media(min-width:768px) and (max-width:930px){.menu-button{display:grid!important}.mobile-nav:not([hidden]){display:grid!important;padding:12px 0 16px}.mobile-nav .menu-list>li>a{display:block}}
@media(max-width:640px){.footer-grid{gap:24px}}
.footer-links a{min-height:0;width:100%}
@media(max-width:640px){.projects-intro h1{line-height:1.2}.projects-intro span{margin-top:18px;font-size:15px}.about-intro p{margin-bottom:15px}.about-intro span{margin-top:18px;font-size:15px}.about-figure{margin-top:-9px}.about-principles-grid,.about-commitment-grid{gap:14px}}
@media(min-width:641px) and (max-width:900px){.projects-content{padding:48px 0 80px}}

/* Premium scroll depth: hero media only; copy and controls keep their fixed composition. */
@media (min-width:768px) and (prefers-reduced-motion:no-preference){
	.home-hero[data-polsiam-parallax-ready="true"]>img,
	.home-hero[data-polsiam-parallax-ready="true"]>.premium-v01-hero-media img{transform:translate3d(0,var(--polsiam-hero-parallax-y,0px),0) scale(1.08);transform-origin:center center}
	.home-hero[data-polsiam-parallax-active="true"]>img,
	.home-hero[data-polsiam-parallax-active="true"]>.premium-v01-hero-media img{will-change:transform}
}

/* Kinetic Engineering: ambient light runs only while Hero or CTA is in view. */
.home-hero,.home-closing-cta{position:relative;isolation:isolate;overflow:hidden}
.home-hero::before,.home-closing-cta::before{position:absolute;inset:-15%;z-index:0;content:"";pointer-events:none;opacity:.52;background:linear-gradient(118deg,transparent 0 37%,rgba(142,202,255,0) 37.1%,rgba(142,202,255,.5) 37.25%,rgba(142,202,255,0) 37.45% 100%),linear-gradient(118deg,transparent 0 62%,rgba(80,163,255,0) 62.1%,rgba(80,163,255,.38) 62.25%,rgba(80,163,255,0) 62.45% 100%);transform:translate3d(-2%,0,0)}
.home-hero-content,.home-closing-inner{position:relative;z-index:1}
@keyframes polsiam-engineering-flow{0%,100%{transform:translate3d(-2%,0,0);opacity:.35}50%{transform:translate3d(2%,0,0);opacity:.72}}

/* One-time reading-path reveals shared by Home, About, Services, Projects, News and Contact. */
@media (prefers-reduced-motion:no-preference){
	html.polsiam-motion-ready [data-polsiam-reveal]{opacity:0;transform:translate3d(0,22px,0);transition:opacity .52s cubic-bezier(.16,1,.3,1) var(--polsiam-reveal-delay,0ms),transform .52s cubic-bezier(.16,1,.3,1) var(--polsiam-reveal-delay,0ms)}
	html.polsiam-motion-ready [data-polsiam-reveal].is-visible{opacity:1;transform:translate3d(0,0,0)}
	html.polsiam-motion-ready [data-polsiam-reveal="line"]{clip-path:inset(0 0 100% 0);transform:translate3d(0,14px,0);transition:clip-path .64s cubic-bezier(.16,1,.3,1) var(--polsiam-reveal-delay,0ms),opacity .44s ease var(--polsiam-reveal-delay,0ms),transform .64s cubic-bezier(.16,1,.3,1) var(--polsiam-reveal-delay,0ms)}
	html.polsiam-motion-ready [data-polsiam-reveal="line"].is-visible{clip-path:inset(0);transform:translate3d(0,0,0)}
	.home-hero.is-ambient-active::before,.home-closing-cta.is-ambient-active::before{animation:polsiam-engineering-flow 18s cubic-bezier(.45,0,.55,1) infinite}
	.home-primary-button,.home-secondary-button,.quote-button,.primary-button,.services-card a,.floating-actions a,.floating-actions button{transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease}
	.home-primary-button:hover,.home-secondary-button:hover,.quote-button:hover,.primary-button:hover,.services-card a:hover,.floating-actions a:hover,.floating-actions button:hover{transform:translate3d(0,-2px,0)}
	.home-primary-button svg,.home-text-link svg,.projects-card a svg,.news-card a svg,.text-link svg{transition:transform .18s ease}
	.home-primary-button:hover svg,.home-text-link:hover svg,.projects-card a:hover svg,.news-card a:hover svg,.text-link:hover svg{transform:translate3d(3px,0,0)}
}
@media (hover:hover) and (prefers-reduced-motion:no-preference){
	.home-service-card,.home-project-card,.services-card,.projects-card,.news-card{transition:transform .32s cubic-bezier(.16,1,.3,1),box-shadow .32s cubic-bezier(.16,1,.3,1)}
	html.polsiam-motion-ready .home-service-card:hover,html.polsiam-motion-ready .home-service-card:focus-within,html.polsiam-motion-ready .home-project-card:hover,html.polsiam-motion-ready .home-project-card:focus-within,html.polsiam-motion-ready .services-card:hover,html.polsiam-motion-ready .services-card:focus-within,html.polsiam-motion-ready .projects-card:hover,html.polsiam-motion-ready .projects-card:focus-within,html.polsiam-motion-ready .news-card:hover,html.polsiam-motion-ready .news-card:focus-within{transform:translate3d(0,-6px,0);box-shadow:0 20px 36px rgba(16,45,86,.15)}
	.home-service-card>img,.home-service-card>.premium-v01-picture img,.home-project-card>img,.home-project-card>.premium-v01-picture img,.services-card>img,.services-card>.premium-v01-picture img,.projects-card>img,.projects-card>.premium-v01-picture img{transition:transform .5s cubic-bezier(.16,1,.3,1)}
	.home-service-card:hover>img,.home-service-card:hover>.premium-v01-picture img,.home-project-card:hover>img,.home-project-card:hover>.premium-v01-picture img,.services-card:hover>img,.services-card:hover>.premium-v01-picture img,.projects-card:hover>img,.projects-card:hover>.premium-v01-picture img{transform:scale(1.035)}
	.home-service-shade{transition:opacity .32s ease}.home-service-card:hover .home-service-shade{opacity:.84}
	.home-service-icon{transition:transform .28s cubic-bezier(.16,1,.3,1),border-color .28s ease}.home-service-card:hover .home-service-icon{transform:translate3d(0,-3px,0) scale(1.05);border-color:rgba(255,255,255,.78)}
	.footer-links a{transition:color .18s ease,transform .18s ease}.footer-links a:hover,.footer-links a:focus-visible{transform:translate3d(3px,0,0)}
}
@media (prefers-reduced-motion:reduce){
	[data-polsiam-reveal]{opacity:1!important;clip-path:none!important;transform:none!important;transition:none!important}
	.home-hero::before,.home-closing-cta::before{animation:none!important}
}
