:root{--ink:#32373a;--page:#f0f1f1;--section:#e7edf0;--card:#e4e7e8;--accent:#71808a;--border:#c9ced1;--muted:#606a70;--deep:#26333a;--white:#f9faf9;--max:1360px;--radius:12px}
:root{--color-card:var(--card);--color-border:var(--border);--color-ink:var(--ink);--color-accent:var(--accent);--color-muted:var(--muted);--color-section:var(--section)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--page);color:var(--ink);font-family:Inter,"Noto Sans SC","PingFang SC","Microsoft YaHei",ui-sans-serif,system-ui,sans-serif;font-size:16px;line-height:1.68;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button{font:inherit}
button,a,summary{-webkit-tap-highlight-color:transparent}
::selection{background:#a9b9c4;color:#14242d}
.shell{width:min(calc(100% - 112px),var(--max));margin-inline:auto}
.site-header{position:sticky;top:0;z-index:100;background:rgba(240,241,241,.94);backdrop-filter:blur(18px);border-bottom:1px solid var(--border)}
.microbar{height:28px;background:var(--deep);color:#c9d3d8;font-size:9px;letter-spacing:.17em;font-weight:700}
.micro-inner{display:flex;justify-content:space-between;align-items:center;height:100%}
.nav-inner{height:78px;display:flex;align-items:center;justify-content:space-between;gap:42px}
.brand{display:inline-flex;align-items:center;gap:11px;flex:none;color:var(--deep)}
.brand-glyph{display:inline-block;width:27px;height:26px;position:relative;flex:none;transform:skew(-12deg)}
.brand-glyph i{position:absolute;display:block;background:#7d8f9a;width:5px;border-radius:2px;bottom:3px;transform:rotate(25deg)}
.brand-glyph i:nth-child(1){height:12px;left:4px}
.brand-glyph i:nth-child(2){height:21px;left:12px;background:#384a54}
.brand-glyph i:nth-child(3){height:16px;left:20px}
.brand-name{font-size:33px;line-height:1;letter-spacing:-.095em;font-weight:650;font-family:Arial,Helvetica,sans-serif;transform:scaleX(.98);transform-origin:left}
.brand-period{color:#8196a1}
.desktop-links{display:flex;align-items:center;gap:clamp(22px,2.7vw,42px);font-size:13px;font-weight:600}
.desktop-links>a:not(.nav-contact){transition:color .2s;position:relative}
.desktop-links>a:not(.nav-contact):hover,.desktop-links>a[aria-current=page]{color:#738b9a}
.desktop-links>a[aria-current=page]:after{content:"";position:absolute;height:2px;background:var(--accent);bottom:-11px;left:0;right:0}
.nav-contact{display:inline-flex;align-items:center;gap:22px;background:var(--deep);color:#f5f7f8;padding:14px 19px;border:1px solid var(--deep);transition:background .2s,transform .2s}
.nav-contact:hover,.btn-dark:hover{background:#485b65;transform:translateY(-2px)}
.nav-contact span{font-size:18px;font-weight:400}
.menu-toggle,.mobile-menu{display:none}
.eyebrow{font-size:11px;line-height:1.3;letter-spacing:.19em;font-weight:750;color:var(--accent);text-transform:uppercase;margin:0 0 22px}
.eyebrow-dot{display:inline-block;width:6px;height:6px;background:#7d9ca8;border-radius:50%;vertical-align:2px;margin-right:9px}
.hero{min-height:695px;display:grid;grid-template-columns:1.05fr .95fr;gap:26px;align-items:center;padding-top:74px;padding-bottom:58px}
.hero-left{position:relative;z-index:1}
h1,h2,h3,p{overflow-wrap:anywhere}
h1,h2,h3{line-height:1.22;letter-spacing:-.04em}
.hero h1{font-size:clamp(39px,4.25vw,70px);font-weight:600;line-height:1.24;margin:0 0 32px;letter-spacing:-.055em}
.hero h1 em,.page-intro h1 em,.section h2 em{font-style:normal;color:#83939d}
.hero-lead{font-size:19px;line-height:1.7;font-weight:550;margin:0 0 15px;max-width:600px}
.hero-copy{color:var(--muted);font-size:14px;line-height:2;max-width:595px;margin:0}
.hero-actions{display:flex;align-items:center;gap:36px;margin-top:34px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;padding:16px 22px;font-weight:700;font-size:13px;min-height:54px;transition:.2s}
.btn-dark{background:var(--deep);color:#fff}
.btn span{font-size:19px;font-weight:400}
.text-link{font-size:13px;letter-spacing:.01em;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:6px;display:inline-flex;gap:15px;align-items:center;transition:gap .2s}
.text-link:hover{gap:24px}
.hero-bottom{display:flex;gap:34px;margin-top:65px;color:#929fa6;font-size:9px;font-weight:750;letter-spacing:.16em}
.hero-right{height:570px;display:grid;place-items:center;min-width:0}
.bridge-graphic{width:min(100%,570px);height:520px;position:relative;overflow:hidden;background:radial-gradient(circle at center,rgba(250,252,252,.86) 0,rgba(240,241,241,.1) 62%);border:1px solid rgba(201,206,209,.55)}
.bridge-graphic:before{content:"";position:absolute;inset:0;background:linear-gradient(to right,rgba(104,128,142,.07) 1px,transparent 1px),linear-gradient(to bottom,rgba(104,128,142,.07) 1px,transparent 1px);background-size:47px 47px;mask-image:linear-gradient(to bottom,transparent,#000 20%,#000 80%,transparent)}
.bridge-graphic:after{content:"";position:absolute;width:380px;height:380px;border:1px dashed #b3bdc4;border-radius:50%;top:63px;left:50%;transform:translateX(-50%)}
.graph-axis{position:absolute;background:#becbd1;z-index:1}
.graph-axis-x{height:1px;left:7%;right:7%;top:50%}
.graph-axis-y{width:1px;top:12%;bottom:12%;left:50%}
.graph-circle{position:absolute;width:198px;height:198px;border:1px solid #95a7b1;border-radius:50%;top:145px;z-index:2;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;background:rgba(237,243,245,.88);box-shadow:0 0 0 16px rgba(227,235,240,.32),0 0 0 32px rgba(227,235,240,.15)}
.graph-circle.circle-left{left:7%}.graph-circle.circle-right{right:7%}
.graph-overline{font-size:8px;color:#7c939f;font-weight:700;letter-spacing:.19em;margin-bottom:8px}
.graph-circle strong{font-size:30px;line-height:1.2;font-weight:600;letter-spacing:.05em}
.graph-circle small{font-size:9px;color:#83959e;letter-spacing:.23em;margin-top:11px}
.graph-center{position:absolute;z-index:5;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;flex-direction:column;gap:8px;background:#344750;border:1px solid #718995;color:#fff;padding:17px 20px 13px;box-shadow:0 8px 32px #26333a28;min-width:157px}
.graph-center span{font-family:Arial,sans-serif;letter-spacing:-.065em;font-size:28px;font-weight:650}
.graph-center small{font-size:7px;letter-spacing:.17em;color:#c9d3d8}
.graph-caption{position:absolute;bottom:36px;left:8%;right:8%;display:flex;justify-content:space-between;letter-spacing:.18em;font-weight:750;font-size:10px;color:#718693}
.value-strip{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#e9eef0}
.value-inner{display:grid;grid-template-columns:1.05fr repeat(3,1fr);min-height:96px;align-items:center}
.value-inner>p{font-weight:650;font-size:19px;margin:0}
.value-inner>div{display:flex;gap:17px;align-items:center;height:42px;border-left:1px solid var(--border);padding-left:30px}
.value-inner b{font-size:10px;color:#7f959f;letter-spacing:.12em}.value-inner span{font-size:13px;font-weight:600}
.section{padding-top:125px;padding-bottom:125px}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:46px}
.section-head h2{font-size:clamp(34px,3.55vw,56px);font-weight:600;margin:0;line-height:1.24}
.section-head>p{max-width:386px;font-size:14px;line-height:1.95;color:var(--muted);margin:0 0 5px}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.service-card{min-height:340px;display:flex;flex-direction:column;justify-content:space-between;padding:28px;background:#e8ebec;border:1px solid #cbd2d5;transition:background .25s,transform .25s,border-color .25s;position:relative;overflow:hidden}
.service-card:hover{background:#f9fbfa;border-color:#7e929d;transform:translateY(-4px)}
.service-card--featured{grid-column:span 2;background:#dce6eb}
.service-card--featured:after{content:"";position:absolute;right:-80px;bottom:-150px;width:350px;height:350px;border:1px solid #99afb9;border-radius:50%;box-shadow:0 0 0 37px #d3e0e65e,0 0 0 74px #cbdce450}
.service-card-top{display:flex;justify-content:space-between;position:relative;z-index:1;color:#8a9da7;font-size:11px;font-weight:750;letter-spacing:.12em}
.card-arrow{font-size:19px;font-weight:400;color:#4d626e}
.card-main{position:relative;z-index:1}
.card-main small{font-size:10px;font-weight:750;letter-spacing:.17em;color:#8094a0}
.card-main h3{font-size:27px;font-weight:600;margin:12px 0}
.card-main p{max-width:465px;color:#606d74;font-size:13px;line-height:1.85;margin:0}
.card-tags{display:flex;gap:12px;flex-wrap:wrap;position:relative;z-index:1;margin-top:23px}.card-tags span{color:#7b8c95;font-size:10px;letter-spacing:.04em}
.below-grid{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-top:30px}
.below-grid p{color:var(--muted);font-size:13px}
.flow-section{background:#dfe7eb}
.flow-layout{display:grid;grid-template-columns:.88fr 1.12fr;gap:clamp(70px,8vw,170px)}
.flow-intro h2{font-size:clamp(36px,3.6vw,56px);margin:0 0 23px;font-weight:600;line-height:1.37}
.flow-intro>p:not(.eyebrow){color:#64747c;font-size:14px;line-height:1.9;max-width:380px}
.outline-button{border:1px solid #8a9ba4;padding:16px 18px;display:inline-flex;align-items:center;justify-content:space-between;gap:28px;font-size:13px;font-weight:700;margin-top:27px;transition:.2s}
.outline-button:hover{background:#f0f4f6}
.steps{border-top:1px solid #b6c4ca}
.step-row{border-bottom:1px solid #b6c4ca;display:grid;grid-template-columns:52px 1fr 25px;gap:18px;align-items:start;padding:28px 2px}
.step-no{font-size:12px;font-weight:750;color:#869ca7}.step-row h3{font-size:23px;margin:0 0 9px;font-weight:600}.step-row p{font-size:13px;line-height:1.85;color:#65757d;margin:0}.step-plus{color:#879da7;font-size:20px}
.marketing-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:20px 0 32px}
.marketing-tiles a{min-height:260px;background:#e7eaeb;border:1px solid var(--border);padding:25px;display:flex;flex-direction:column;transition:.2s}
.marketing-tiles a:hover{background:#dce6ea;transform:translateY(-3px)}
.marketing-tiles span{font-size:11px;color:#81959f;font-weight:700}.marketing-tiles h3{font-size:24px;font-weight:600;margin:30px 0 12px}.marketing-tiles p{font-size:13px;line-height:1.85;color:#64737b;margin:0}.marketing-tiles b{margin-top:auto;align-self:flex-end;font-size:19px;font-weight:400}
.about-band{background:#2e3d46;color:#eef3f5;overflow:hidden}
.about-band-inner{min-height:570px;display:grid;grid-template-columns:.95fr 1.05fr;gap:110px;align-items:center}
.about-band .eyebrow{color:#9bb1bc}.about-band h2{font-size:clamp(36px,3.8vw,59px);font-weight:600;line-height:1.38;margin:0 0 26px}
.about-band p:not(.eyebrow){font-size:14px;line-height:2;color:#b5c5cd;max-width:585px}
.light-link{display:inline-flex;gap:30px;font-weight:650;font-size:13px;border-bottom:1px solid #8ca6b2;padding-bottom:8px;margin-top:18px}
.band-design{position:relative;height:550px;overflow:hidden}.band-ring{border:1px solid #78909e;position:absolute;width:420px;height:420px;border-radius:50%;left:14%;top:10%}.ring-two{width:290px;height:290px;left:25%;top:22%;border-color:#a5b4bd;box-shadow:0 0 0 54px #42555e4d,0 0 0 108px #42555e26}.band-cross{position:absolute;font-family:Arial,sans-serif;font-size:180px;letter-spacing:-.14em;font-weight:650;left:37%;top:24%;line-height:1;color:#d4e1e7}.band-cross span{color:#879faa}
.home-faq .faq-list{max-width:1030px;margin-left:auto}
.faq-list{border-top:1px solid var(--border)}
.faq-item{border-bottom:1px solid var(--border)}.faq-item summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:30px;font-size:20px;font-weight:550;padding:25px 0;align-items:center}.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary span{color:#80939e;font-size:21px;font-weight:400;flex:none;transition:transform .2s}.faq-item[open] summary span{transform:rotate(45deg)}
.faq-item>div{padding:0 60px 25px 0;max-width:910px;color:#637078;font-size:14px;line-height:1.9}.faq-item p{margin:0 0 12px}
.contact-banner{background:#394a54;color:#edf4f7;padding:74px 0}.banner-inner{display:flex;align-items:center;justify-content:space-between;gap:55px}.banner-inner .eyebrow{color:#9bafba}
.banner-inner h2{font-size:clamp(30px,3.2vw,48px);font-weight:600;margin:0 0 16px;line-height:1.3}.banner-inner p:not(.eyebrow){color:#c0ccd2;font-size:14px;margin:0}.btn-light{background:#eef3f5;color:#2d3e47;flex:none;min-width:240px}.btn-light:hover{background:#cbdbe3;transform:translateY(-2px)}
.banner-action{display:flex;flex:none;flex-direction:column;align-items:stretch;min-width:240px;max-width:100%}
.banner-action .btn{width:100%}
.banner-trust{display:flex;justify-content:center;align-items:center;gap:9px;text-align:center;margin-top:14px;color:#d4e0e5;font-size:11px;line-height:1.55;letter-spacing:.07em;font-weight:650}
.banner-trust:before{content:"";display:inline-block;flex:none;width:17px;height:1px;background:#a8c1cc}
.site-footer{background:#e7edf0;border-top:1px solid var(--border);padding:73px 0 0}
.footer-top{display:grid;grid-template-columns:2.2fr 1fr 1.2fr;gap:55px;padding-bottom:80px}.footer-brand .brand-name{font-size:39px}.footer-top p{max-width:330px;font-size:14px;color:#67757e;margin:25px 0}.footer-top small{font-size:11px;letter-spacing:.12em;color:#84939a}
.footer-linkgroup{display:flex;flex-direction:column;gap:11px;font-size:13px}.footer-linkgroup>span{font-size:10px;font-weight:750;letter-spacing:.14em;color:#8a9ba5;margin-bottom:12px}.footer-linkgroup>a:hover{color:#718995}.footer-linkgroup .email{font-weight:650}
.footer-bottom{border-top:1px solid var(--border);min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:22px;color:#87949a;font-size:10px;letter-spacing:.01em}
/* Two localized service entrances in the brand information column, between
   the positioning line and the Montreal location. */
.footer-top>div:first-child>p{margin-bottom:12px}
.footer-market-links{display:flex;flex-direction:column;align-items:flex-start;gap:5px;margin:0 0 14px;max-width:330px}
.footer-market-links a{display:inline-block;color:#455b67;text-decoration:none;font-weight:600;border-bottom:1px solid #a8b7be;transition:color .2s,border-color .2s}
.footer-market-links a:hover{color:#202f38;border-bottom-color:#526d7c}
.footer-market-links a:focus-visible{outline:2px solid #637c8a;outline-offset:3px}
html[dir="rtl"] .footer-market-links{align-items:flex-start;text-align:right}
.back-top{position:fixed;bottom:25px;right:28px;width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--border);background:rgba(243,246,247,.95);color:#536773;z-index:80;opacity:0;pointer-events:none;transition:opacity .2s}.back-top.is-visible{opacity:1;pointer-events:auto}
.page-intro{padding-top:64px;padding-bottom:80px;border-bottom:1px solid var(--border)}
.crumb{font-size:11px;color:#81919a;display:flex;align-items:center;gap:10px;margin-bottom:85px}.crumb a:hover{text-decoration:underline}
.page-intro h1{font-size:clamp(39px,5.3vw,78px);font-weight:600;line-height:1.25;margin:0 0 30px;max-width:1060px}
.page-intro>p:not(.eyebrow){font-size:17px;max-width:760px;color:#68777e;line-height:1.9;margin:0}
.services-listing{padding-top:78px}
.service-title-grid{display:grid;grid-template-columns:1.35fr .65fr;align-items:center;gap:60px}
.service-title-grid h1{margin-bottom:24px}.service-title-grid p{max-width:760px;color:#68777e;font-size:17px;line-height:1.9}.service-title-grid .text-link{margin-top:16px}
.service-figure{height:275px;border:1px solid #bac8cd;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle,#e2ebef,#f0f1f1 70%)}
.service-figure:before,.service-figure:after{content:"";position:absolute;border:1px solid #a9bcc4;border-radius:50%;width:220px;height:220px}.service-figure:after{width:350px;height:350px;border-style:dashed;opacity:.6}
.service-figure>span{font-size:105px;letter-spacing:-.09em;font-weight:500;color:#7a909c;z-index:1}.service-figure i{position:absolute;width:1px;height:100%;background:#a2b4bd;transform:rotate(40deg)}.service-figure b{font-size:9px;letter-spacing:.14em;position:absolute;right:15px;bottom:12px;color:#8198a3}
.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:92px;align-items:start}
.detail-content{min-width:0}.detail-chapter{border-bottom:1px solid var(--border);padding:0 0 55px;margin-bottom:62px;scroll-margin-top:150px}.detail-chapter:last-child{border:0;margin:0}
.chapter-title{display:flex;gap:23px;align-items:baseline;margin-bottom:23px}.chapter-title>span{font-size:11px;color:#8aa0ac;font-weight:700}.chapter-title h2{font-size:28px;line-height:1.4;font-weight:600;margin:0}
.chapter-content{margin-left:43px;color:#58676f;font-size:15px;line-height:1.95;max-width:750px}.chapter-content p{margin:0 0 22px}.chapter-content .detail-subtitle{color:#8498a2;font-size:12px;font-weight:700;letter-spacing:.02em}.detail-bullets{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 22px;margin:14px 0 27px;padding:0}.detail-bullets li{position:relative;padding:9px 8px 9px 22px;border-bottom:1px solid #d6dcdf;font-size:14px}.detail-bullets li:before{content:"";position:absolute;left:1px;top:20px;width:5px;height:5px;background:#97acb7;border-radius:50%}
.detail-side{position:sticky;top:146px}.detail-side>div{padding:25px;background:#e6eaec;border:1px solid var(--border)}.detail-side p{font-size:11px;font-weight:800;letter-spacing:.12em;color:#899ba5;margin:0 0 17px}.detail-side a{display:flex;gap:12px;align-items:baseline;padding:9px 0;border-bottom:1px solid #d0d8db;font-size:12px;color:#5b6b73;line-height:1.5}.detail-side a:hover{color:#213944}.detail-side a span{font-size:10px;color:#8ca0ab}.detail-side .side-cta{background:#3f535e;color:#f2f7f8;padding:15px;margin-top:20px;justify-content:space-between;font-weight:700;border:0}
.next-services{padding-bottom:110px}.next-services h2{font-size:34px;margin:0 0 25px;font-weight:600}.next-service-links{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.next-service-links a{padding:16px 20px;border:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;font-size:13px;background:#e9edee;transition:.2s}.next-service-links a:hover{background:#dce5e9}
.marketing-hub{padding-top:93px}.marketing-index{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.marketing-index a{min-height:185px;background:#e7ebed;border:1px solid var(--border);padding:25px;display:flex;flex-direction:column;position:relative;transition:.2s}.marketing-index a:hover{background:#dce6eb;transform:translateY(-2px)}.marketing-index a span{font-size:11px;font-weight:700;color:#8a9ea8}.marketing-index a h3{font-size:22px;font-weight:600;max-width:85%;margin:auto 0 0}.marketing-index a b{position:absolute;right:27px;bottom:23px;font-weight:400;font-size:20px}
.subpage-bottom{padding-bottom:105px}.page-pagination{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:34px}.page-pagination a{background:#e5ecef;padding:26px;border:1px solid var(--border);display:flex;flex-direction:column;gap:9px}.page-pagination span{font-size:11px;color:#8296a0}.page-pagination strong{font-size:17px;font-weight:600}
.approach-steps{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.approach-step{background:#e4eaed;border:1px solid var(--border);min-height:260px;padding:28px;display:flex;justify-content:space-between;gap:30px;flex-direction:column}.large-number{font-size:76px;color:#a2b3bc;line-height:1;font-weight:350}.approach-step h2{font-size:25px;margin:0 0 12px;font-weight:600}.approach-step p{font-size:14px;color:#63737b;line-height:1.9;margin:0}
.models-section{background:#dce5e9}.models-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.model-card{padding:30px;min-height:300px;border:1px solid #b9c8ce;background:#e9eef1}.model-card>span{font-size:11px;color:#859ba6}.model-card h3{font-size:25px;font-weight:600;margin:70px 0 20px}.model-card p{font-size:14px;line-height:1.9;color:#63747c}
.about-story{display:grid;grid-template-columns:.6fr 1.4fr;gap:100px}.story-label>span{font-size:11px;color:#849aa4;letter-spacing:.17em;font-weight:700}.story-monogram{font-size:240px;letter-spacing:-.15em;line-height:1.1;font-family:Arial,sans-serif;color:#8da4b1;margin:95px 0 0}.story-monogram span{color:#afbec5}.about-story h2{font-size:clamp(33px,3.4vw,50px);font-weight:600;margin:0 0 35px}.about-story p{font-size:15px;line-height:2.1;color:#5d6d76;margin:0 0 24px}.principles-title{font-size:43px;margin:0 0 42px;font-weight:600}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.values-grid article{border-top:1px solid #99aeb8;padding:25px 10px 20px 0}.values-grid span{font-size:12px;color:#78909d}.values-grid h3{font-size:22px;font-weight:600;margin:35px 0 15px}.values-grid p{font-size:13px;line-height:1.9;color:#63737b}
.faq-full{max-width:1040px;margin:auto}.faq-full .faq-item summary{font-size:21px}
.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:13%;min-height:650px}.contact-num{font-size:11px;letter-spacing:.16em;color:#89a0ac;font-weight:700}.contact-layout h2{font-size:40px;font-weight:600;margin:30px 0 21px}.contact-layout p{color:#63727a;font-size:14px;line-height:2}.contact-address{font-size:clamp(21px,2.5vw,37px);letter-spacing:-.03em;display:inline-flex;gap:18px;border-bottom:1px solid #7c939f;margin-top:28px;padding-bottom:10px}.contact-address span{font-size:20px}.contact-location{margin-top:25px}.contact-prompt{background:#e4eaed;border:1px solid var(--border);padding:40px;align-self:start}.contact-prompt h3{font-size:27px;font-weight:600;margin:0 0 30px}.contact-prompt ol{padding-left:22px;color:#60727b;font-size:14px;line-height:2.4;margin-bottom:33px}.contact-prompt li{padding-left:8px}.contact-prompt .btn{width:100%}.contact-prompt small{color:#88979f;display:block;font-size:11px;margin-top:16px}
/* Brand uses the uploaded eight-letter geometry in wordmark.css, not a substitute font. */
.brand{display:inline-flex;align-items:center;gap:0;flex:none;min-height:36px}
.graph-center{background:#e4ebee;border-color:#9bafb9;color:#34434b;padding:18px 17px 14px;min-width:177px}
.graph-center small{color:#8299a5}
.logic-rail{display:grid;grid-template-columns:1fr 70px 1fr 70px 1fr;align-items:center;gap:12px;padding-top:28px;padding-bottom:28px;border-bottom:1px solid #cbd5d9}
.rail-title{display:flex;align-items:baseline;gap:15px}.rail-title span{font-size:9px;letter-spacing:.12em;color:#879ca7;font-weight:700}.rail-title strong{font-size:15px;font-weight:600;white-space:nowrap}.rail-arrow{color:#8ca1aa;text-align:center;font-size:22px;font-weight:300;transform:translateY(-2px)}
.structure-strip{background:#e2e9ec;border-bottom:1px solid #cbd7dc}
.structure-strip .shell{padding-top:25px;padding-bottom:26px}
.structure-top{display:flex;justify-content:space-between;color:#8a9fa9;font-size:10px;letter-spacing:.12em;font-weight:750;margin-bottom:17px}
.structure-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.structure-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.structure-grid--1{grid-template-columns:minmax(0,1fr)}
.structure-node{position:relative;display:flex;align-items:flex-start;justify-content:space-between;flex-direction:column;background:rgba(250,252,252,.52);min-height:135px;padding:18px 20px;border:1px solid #c4d0d6}
.structure-node:not(:last-child):after{content:"→";position:absolute;right:-14px;top:50%;font-size:18px;color:#839ba5;z-index:2;transform:translateY(-50%)}
.structure-node span{font-size:10px;letter-spacing:.14em;color:#8ea2ad;font-weight:700}.structure-node strong{font-size:21px;font-weight:600;letter-spacing:-.02em}.structure-node small{position:absolute;right:17px;bottom:16px;color:#96abb5}
/* New parent-site entry cards; the imported v8 pages keep their original CSS. */
.market-showcase{background:#e5ebee;border-block:1px solid #cad4d9;padding:94px 0 105px}
.market-showcase--listing{padding:88px 0 100px}
.market-showcase-heading{margin-bottom:36px}
.market-showcase-heading h2{font-size:clamp(34px,3.3vw,53px)}
.market-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.market-feature-card{position:relative;display:flex;min-height:490px;flex-direction:column;justify-content:space-between;border:1px solid #b9c8cf;padding:29px 32px 34px;overflow:hidden;transition:transform .22s,background .22s,border-color .22s}
.market-feature-card:hover{transform:translateY(-4px);border-color:#8097a4}
.market-feature-card--development{background:#d8ecf5;border-color:#b6ceda}
.market-feature-card--validation{background:#dae5eb;border-color:#b9c8cf}
.market-feature-card--development:hover{background:#cbe4f0}
.market-feature-card--validation:hover{background:#d4e3e9}
.market-feature-overview{display:flex;flex:1;min-width:0;flex-direction:column;justify-content:space-between}
.market-feature-overview:focus-visible{outline:3px solid #536f7e;outline-offset:4px}
.market-feature-top{position:relative;z-index:2;display:flex;justify-content:space-between;gap:15px;color:#7d929e;font-size:10px;font-weight:750;letter-spacing:.13em}
.market-feature-top .feature-arrow{font-size:23px;font-weight:400;color:#5e7480;line-height:1}
.market-feature-diagram{height:225px;position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:0;margin:5px auto 0;width:min(100%,435px)}
.market-feature-diagram>span{width:136px;height:136px;border:1px solid #93a9b4;border-radius:50%;display:grid;place-items:center;font-size:24px;font-weight:600;letter-spacing:.07em;flex:none;background:rgba(240,245,247,.7);box-shadow:0 0 0 13px rgba(177,195,205,.17),0 0 0 26px rgba(177,195,205,.09)}
.market-feature-diagram .connector{width:85px;height:1px;background:#91a7b2;position:relative;flex:none}
.market-feature-diagram .connector:after,.market-feature-diagram .connector:before{content:"";position:absolute;top:-3px;border:1px solid #758d9a;background:#d9e5ea;width:7px;height:7px;border-radius:50%}
.market-feature-diagram .connector:before{left:-4px}.market-feature-diagram .connector:after{right:-4px}
.market-feature-diagram .connector b{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:39px;height:39px;border:1px solid #8ea4b0;border-radius:50%;background:#e1e9ed}
.market-feature-bottom{position:relative;z-index:2}
.market-feature-bottom h3{font-size:30px;font-weight:600;margin:0 0 12px}
.market-feature-bottom p{color:#60727a;font-size:14px;line-height:1.9;margin:0 0 21px}
.market-feature-bottom strong{display:flex;align-items:center;justify-content:space-between;width:100%;padding-top:16px;border-top:1px solid #b9c8cf;font-size:13px;font-weight:750}
.market-feature-bottom strong span{font-size:18px;font-weight:400}
.home-paths{padding-top:90px;padding-bottom:105px}
.path-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #bac7ce;background:#e7edf0}
.path-option{display:flex;flex-direction:column;gap:20px;min-height:275px;padding:26px 28px;border-right:1px solid #bac7ce;transition:background .2s,transform .2s}
.path-option:last-child{border-right:none}
.path-option:hover{background:#dce6eb;transform:translateY(-3px)}
.path-option-top,.path-option strong{display:flex;justify-content:space-between;align-items:center;gap:12px}
.path-option-top{font-size:10px;letter-spacing:.1em;color:#526975;font-weight:700}
.path-option-top>span:last-child{font-size:20px;font-weight:400}
.path-option-body small{display:block;color:#6b818d;font-size:11px;letter-spacing:.18em;font-weight:700}
.path-option h3{margin:8px 0 10px;font-size:27px;font-weight:650;letter-spacing:-.035em;color:#2b3840}
.path-option p{max-width:25ch;margin:0;color:#63747d;font-size:13px;line-height:1.8}
.path-option strong{margin-top:auto;padding-top:14px;border-top:1px solid #bbc9d0;font-size:12px;color:#2d3c45}
.path-option strong span{font-size:19px;font-weight:400}
.path-options-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:18px;font-size:12px;color:#6a7b83}
:focus-visible{outline:2px solid #6c8796;outline-offset:4px}
@media(max-width:1150px){.shell{width:min(calc(100% - 64px),var(--max))}.desktop-links{gap:22px}.hero{grid-template-columns:1fr .9fr;gap:10px}.bridge-graphic{transform:scale(.9);transform-origin:center}.service-grid{grid-template-columns:repeat(2,1fr)}.flow-layout{gap:60px}.about-band-inner{gap:35px}.detail-layout{gap:45px;grid-template-columns:minmax(0,1fr) 235px}}
@media(max-width:880px){.microbar{display:none}.nav-inner{height:74px}.desktop-links{display:none}.menu-toggle{display:flex;gap:6px;flex-direction:column;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border);width:44px;height:42px;cursor:pointer}.menu-toggle span{width:18px;height:1px;background:var(--deep);display:block;transition:.2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-menu:not([hidden]){display:flex;flex-direction:column;padding:15px 32px 25px;background:#f0f1f1;border-top:1px solid var(--border)}.mobile-menu a{padding:12px 0;font-size:15px;border-bottom:1px solid var(--border)}.hero{grid-template-columns:1fr;padding-top:70px}.hero-right{height:450px}.bridge-graphic{width:580px;max-width:100%;transform:scale(.88)}.hero-bottom{margin-top:35px}.value-inner{grid-template-columns:repeat(3,1fr);gap:10px;padding:21px 0}.value-inner p{grid-column:1/-1}.value-inner>div{padding-left:12px}.section{padding-top:80px;padding-bottom:80px}.flow-layout{grid-template-columns:1fr}.steps{max-width:100%}.about-band-inner{grid-template-columns:1fr;gap:0;padding:60px 0 90px}.band-design{height:300px;order:2}.band-ring{top:-35%;left:25%}.ring-two{top:-17%;left:34%}.band-cross{top:1%;left:43%}.footer-top{grid-template-columns:1.7fr 1fr;gap:35px}.footer-top>div:last-child{grid-column:2}.footer-bottom{align-items:start;flex-direction:column;padding:18px 0;gap:5px}.section-head{align-items:start;flex-direction:column;gap:20px}.service-title-grid{grid-template-columns:1fr}.service-figure{display:none}.detail-layout{grid-template-columns:1fr}.detail-side{position:static;order:-1}.detail-side>div{padding:18px}.detail-side>div>a:not(.side-cta){display:inline-flex;width:47%;margin-right:2%;vertical-align:top}.detail-side p{margin-bottom:10px}.detail-side .side-cta{max-width:240px}.about-story{grid-template-columns:1fr;gap:40px}.story-monogram{display:none}.models-grid{grid-template-columns:1fr}.model-card{min-height:220px}.model-card h3{margin:30px 0 15px}.contact-layout{gap:35px;grid-template-columns:1fr}}
@media(max-width:600px){.shell{width:calc(100% - 36px)}.brand-name{font-size:29px}.brand-glyph{transform:scale(.85) skew(-12deg);margin-right:-5px}.hero{padding-top:48px;padding-bottom:34px}.hero h1{font-size:40px;line-height:1.34}.hero-lead{font-size:17px}.hero-copy{font-size:13px}.hero-actions{gap:21px}.hero-actions .btn{width:100%}.hero-bottom{font-size:8px;gap:20px}.hero-right{height:335px;margin-top:20px;overflow:hidden}.bridge-graphic{width:520px;max-width:none;transform:scale(.62)}.value-inner{grid-template-columns:1fr;gap:4px}.value-inner p{font-size:17px;padding-bottom:5px}.value-inner>div{border-left:0;padding:6px 0;height:auto}.section{padding-top:66px;padding-bottom:66px}.section-head h2,.flow-intro h2{font-size:34px}.service-grid,.marketing-tiles,.marketing-index{grid-template-columns:1fr}.service-card{min-height:285px;padding:23px}.service-card--featured{grid-column:span 1}.below-grid{flex-direction:column;align-items:start}.flow-section{padding-top:68px;padding-bottom:68px}.marketing-tiles a{min-height:220px}.about-band h2{font-size:34px}.about-band-inner{padding-top:75px}.band-design{height:240px}.band-ring{left:10%;top:-40%}.ring-two{left:21%;top:-20%}.band-cross{left:35%;top:10%}.faq-item summary{font-size:16px;padding:21px 0}.faq-item>div{padding-right:12px}.contact-banner{padding:66px 0}.banner-inner{flex-direction:column;align-items:stretch;gap:28px}.banner-inner h2{font-size:34px}.footer-top{grid-template-columns:1fr;padding-bottom:40px;gap:35px}.footer-top>div:last-child{grid-column:auto}.footer-bottom{font-size:9px}.page-intro{padding-top:26px;padding-bottom:55px}.crumb{margin-bottom:65px;flex-wrap:wrap}.page-intro h1{font-size:41px}.page-intro>p:not(.eyebrow){font-size:15px}.service-title-grid h1{font-size:45px}.detail-chapter{padding-bottom:36px;margin-bottom:40px}.chapter-title{gap:14px}.chapter-title h2{font-size:23px}.chapter-content{margin-left:0;font-size:14px}.detail-bullets{grid-template-columns:1fr}.detail-side>div>a:not(.side-cta){width:100%}.next-service-links,.page-pagination,.approach-steps,.values-grid{grid-template-columns:1fr}.next-services{padding-bottom:65px}.approach-step{min-height:230px}.values-grid article{padding-bottom:25px}.contact-layout{min-height:0}.contact-layout h2{font-size:34px}.contact-prompt{padding:27px}.back-top{bottom:14px;right:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media(max-width:880px){.logic-rail{grid-template-columns:1fr 25px 1fr 25px 1fr;gap:8px}.rail-title{flex-direction:column;gap:0}.rail-title span{font-size:8px}}
@media(max-width:720px){.market-card-grid{grid-template-columns:1fr}.market-feature-card{min-height:455px}.market-showcase{padding:65px 0 75px}}
@media(max-width:880px){.path-options{grid-template-columns:1fr}.path-option{min-height:230px;border-right:none;border-bottom:1px solid #bac7ce}.path-option:last-child{border-bottom:none}.path-options-footer{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.site-header .wordmark-frame{--wm-scale:.57!important}.logic-rail{grid-template-columns:1fr;gap:4px;padding-top:25px;padding-bottom:25px}.rail-title{flex-direction:row;align-items:baseline;gap:17px}.rail-arrow{font-size:16px;text-align:left;transform:rotate(90deg);transform-origin:9px center;margin-left:13px;height:20px}.structure-grid{grid-template-columns:1fr}.structure-node{min-height:90px;padding:17px}.structure-node strong{font-size:19px}.structure-node:not(:last-child):after{content:"↓";right:23px;top:auto;bottom:-19px;transform:none}.structure-top{font-size:9px}}
@media(max-width:600px){.market-feature-card{padding:23px;min-height:410px}.market-feature-diagram{height:190px}.market-feature-diagram>span{width:105px;height:105px;font-size:21px}.market-feature-diagram .connector{width:60px}.market-feature-bottom h3{font-size:26px}.footer-top{grid-template-columns:1fr}}

/* Canada market specialisms are part of Marketing & Growth, not two more domains. */
.service-card--marketing{min-height:390px}
.service-card--marketing .card-main h3 a:hover{text-decoration:underline;text-underline-offset:5px}
.market-integrated-links{position:relative;z-index:3;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}
.market-integrated-links a{padding:13px 14px;border:1px solid #aec2cc;background:rgba(249,252,253,.5);display:flex;align-items:center;justify-content:space-between;gap:8px;transition:background .2s}
.market-integrated-links a:hover{background:#fff}
.market-integrated-links a span{font-size:13px;font-weight:700}
.market-integrated-links a small{display:block;color:#728b98;font-size:9px;letter-spacing:.14em;font-weight:600;margin-top:2px}
.market-integrated-links b{font-weight:400;color:#668190}

/* Nine pain points lead to nine factual, source-backed service description pages. */
.common-needs{border-top:1px solid var(--border)}
.pain-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.pain-card{min-height:270px;border:1px solid var(--border);background:#e7ecee;padding:25px 26px;display:flex;flex-direction:column;justify-content:space-between;transition:background .22s,transform .22s}
.pain-card:hover{background:#f8fafb;transform:translateY(-3px)}
.pain-card-top{display:flex;justify-content:space-between;color:#869ba6;font-size:11px;letter-spacing:.12em;font-weight:700}
.pain-card-top span:last-child{font-size:20px;font-weight:400}
.pain-problem{color:#3a4a52;font-size:16px;line-height:1.65;margin:15px 0 24px;font-weight:550}
.pain-problem small{font-size:9px;color:#81949e;letter-spacing:.14em;display:block;margin-bottom:9px}
.pain-solution{border-top:1px solid #c2cdd2;padding-top:14px;display:flex;align-items:flex-end;justify-content:space-between;gap:12px}
.pain-solution strong{font-size:17px;font-weight:650}
.pain-solution span{font-size:10px;color:#708693;text-align:right;flex:none}
.additional-services{border-top:1px solid var(--border)}
.additional-card{min-height:355px;background:#edf1f2;gap:20px}
.additional-card h3{font-size:clamp(20px,1.6vw,25px);line-height:1.35;font-weight:650;letter-spacing:-.025em;margin:18px 0 18px}
.additional-card .pain-problem{font-size:14px;font-weight:520;line-height:1.7;margin:0 0 16px}
.additional-response{font-size:12px;line-height:1.75;color:#667982;margin:0 0 20px}
.additional-response small{display:block;font-size:9px;letter-spacing:.12em;font-weight:750;color:#82949d;margin-bottom:4px}
.additional-link{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #c2cdd2;padding-top:14px;font-size:12px;font-weight:700}
.additional-link span{font-size:20px;font-weight:400;color:#708693}
.localized-hub .intro-small{font-size:16px;color:#65757d;max-width:670px}
.area-topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.area-topic-grid a{padding:24px;background:#e5ebee;border:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:20px;font-weight:600}
.area-topic-grid a:hover{background:#f9fafa}
.translated-detail{max-width:1010px}
.translated-detail .source-section{margin:0 0 35px}
.translated-detail p{margin:0 0 16px;color:#53656e;font-size:15px;line-height:1.9}
.translated-detail ul{padding-left:23px;color:#53656e;columns:2;column-gap:42px}
.translated-detail li{margin:0 0 9px;break-inside:avoid}
.translated-detail h2{font-size:27px;margin:36px 0 16px;letter-spacing:-.02em}
.translated-detail .section-note{font-size:12px;color:#778d98}
.privacy-text{max-width:920px}
.privacy-text article{margin-bottom:42px;border-bottom:1px solid var(--border);padding-bottom:26px}
.privacy-text h2{font-size:23px;font-weight:600;margin:0 0 19px;letter-spacing:-.02em}
.privacy-text p{font-size:15px;color:#52626b;line-height:1.95;margin:0 0 15px}
.localized-overview{display:grid;grid-template-columns:1.1fr .9fr;gap:80px}
.localized-overview p{color:#5f7079;line-height:1.9}
.language-content{max-width:930px}
.language-content .content-heading{font-size:25px;margin:42px 0 18px}
/* About/FAQ language parity: same native card and accordion layout as Chinese. */
.about-more-heading{margin-bottom:34px}
.page-intro h1.about-localized-title{font-size:clamp(34px,4vw,57px);line-height:1.28;max-width:1040px}
.about-more-heading h2{font-size:clamp(30px,3vw,43px);font-weight:600;margin:18px 0 0}
.about-extra-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.about-extra-card{padding:30px;background:#e5ebee;border:1px solid var(--border);min-width:0}
.about-extra-card--wide{grid-column:1/-1}
.about-extra-card h3{font-size:clamp(23px,2vw,28px);font-weight:600;margin:0 0 25px;line-height:1.35}
.about-extra-card p,.about-extra-card li{color:#53656e;font-size:14px;line-height:1.9}
.about-extra-card p{margin:0 0 16px}
.about-extra-card ul{padding-inline-start:23px;margin:18px 0 20px;columns:2;column-gap:40px}
.about-extra-card li{break-inside:avoid;margin-bottom:8px}
.about-extra-card{border-radius:11px}
/* Navigation and linked home modules, including keyboard focus visibility. */
.desktop-links{margin-inline-start:auto;justify-content:flex-end}
.crumb{font-size:clamp(13px,.95vw,15px);line-height:1.7}
.value-inner>.value-strip-link{display:flex;align-items:center;gap:17px;min-height:42px;border-left:1px solid var(--border);padding-left:30px;position:relative;transition:color .2s ease,background .2s ease}
.value-inner>.value-strip-link--intro{font-size:19px;font-weight:650;border-left:0;padding-left:0}
.value-strip-link b{font-size:10px;color:#7f959f;letter-spacing:.12em}
.value-strip-link>span{font-size:13px;font-weight:600}
.value-strip-link--intro>span{font-size:16px;font-weight:400;color:#8196a0}
.value-strip-link i,.rail-title i{font-style:normal;color:#8b9eaa;opacity:.45;margin-inline-start:auto;font-size:15px}
.rail-title{position:relative;min-height:36px}
.value-strip-link:hover,.rail-title:hover,.value-strip-link:focus-visible,.rail-title:focus-visible{color:#32627a}
.value-strip-link:hover i,.rail-title:hover i{opacity:1}
.value-strip-link:focus-visible,.rail-title:focus-visible,.about-extra-card--link:focus-visible{outline:2px solid #567e91;outline-offset:4px}
.footer-top .footer-linkgroup:last-child>span{white-space:nowrap}
html[lang="en"] .footer-linkgroup:last-child>span{letter-spacing:.025em;font-size:10px}
.about-extra-card--link{position:relative;display:block;color:inherit;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.about-extra-card--link:hover{transform:translateY(-3px);border-color:#8ca3ad;box-shadow:0 12px 24px #2e3e4912}
.about-extra-action{position:absolute;inset-inline-end:25px;top:22px;color:#78929d;font-size:23px}
.combined-faq-intro{padding-top:100px;padding-bottom:26px}
.combined-faq-intro h2{font-size:clamp(32px,3.6vw,51px);font-weight:600;margin:12px 0}
.combined-faq-intro>p:last-child{color:#5f7079;font-size:16px;max-width:880px}
.regulated-intro{padding-top:45px;padding-bottom:75px}
.regulated-intro .crumb{margin-bottom:60px}
.regulated-intro h1{font-weight:600;letter-spacing:-.04em;font-size:clamp(35px,4.5vw,67px);line-height:1.15;max-width:1100px;margin:12px 0 30px}
.regulated-lead{font-size:clamp(17px,1.55vw,21px);line-height:1.75;color:#3a515c;max-width:1100px}
.regulated-caution{font-size:14px;line-height:1.9;color:#65747d;max-width:1100px;padding-top:8px}
.regulated-directory{padding-bottom:80px}
.regulated-group{margin-bottom:86px}
.regulated-group h2{font-size:clamp(27px,2.7vw,39px);font-weight:600;margin:12px 0 25px}
.regulated-card{min-height:213px}
.regulated-card h3{font-size:clamp(18px,1.5vw,23px);font-weight:650;line-height:1.45;margin:8px 0 0;padding-inline-end:18px}
.regulated-card .regulated-card-type{font-size:11px;color:#7e99a5;font-weight:700;letter-spacing:.03em}
.regulated-card p{font-size:13px;color:#5f7078;margin:3px 0}
.regulated-card .regulated-card-cta{color:#547483;font-size:12px;margin-top:auto;font-weight:700}
.regulated-official{background:#e1eaf0;border:1px solid #c7d8df;border-radius:13px;margin-bottom:95px;padding:40px 48px}
.regulated-official h2{font-weight:600;font-size:clamp(26px,2.8vw,37px)}
.regulated-official p{font-size:14px;color:#526872;line-height:1.8}
.regulated-official a{display:inline-block;margin-top:20px;border-bottom:1px solid #668391;color:#2d5467;font-weight:700}
@media(max-width:880px){.value-inner>.value-strip-link{padding-left:12px}.value-inner>.value-strip-link--intro{padding-left:0}.regulated-official{padding:27px}.regulated-intro{padding-top:25px}.regulated-intro .crumb{margin-bottom:35px}}
@media(max-width:600px){.value-inner>.value-strip-link--intro{grid-column:1/-1}.value-inner>.value-strip-link{min-height:52px;padding-left:6px;gap:8px}.value-strip-link i{display:none}.value-inner>.value-strip-link>span{font-size:11px}.value-strip-link--intro>span{display:inline-block}.rail-title i{margin-inline-start:10px}.regulated-group{margin-bottom:55px}}
.about-extra-art{display:block;width:140px;height:91px;position:relative;margin-bottom:27px}
.about-extra-art i{position:absolute;display:block;border:2px solid #839eaf;background:#d5e3e977;box-shadow:7px 6px 0 #bccfd855}
.about-extra-art--industry i:first-child{width:69px;height:68px;border-radius:50%;left:5px;top:8px}
.about-extra-art--industry i:nth-child(2){width:69px;height:68px;border-radius:50%;left:49px;top:8px}
.about-extra-art--industry i:nth-child(3){width:13px;height:13px;border-radius:50%;left:55px;top:36px;background:#779aaf}
.about-extra-art--team i:first-child{width:66px;height:48px;left:7px;top:9px}
.about-extra-art--team i:nth-child(2){width:66px;height:48px;left:35px;top:27px}
.about-extra-art--team i:nth-child(3){width:12px;height:12px;border-radius:50%;left:113px;top:9px}
.about-extra-link{display:inline-block;margin-top:15px;border-bottom:1px solid #748d9c;padding-bottom:6px;font-weight:730;font-size:13px;color:#456d81}
html[dir="rtl"] .about-extra-art{transform:scaleX(-1)}
.faq-full .faq-item ul{padding-inline-start:23px;margin:8px 0 18px}
.faq-full .faq-item li{margin-bottom:8px}
html[dir="rtl"] .faq-item>div{padding-right:0;padding-left:60px}
html[dir="rtl"] .pain-solution span{text-align:left}
html[dir="rtl"] .translated-detail ul{padding-right:23px;padding-left:0}
@media(max-width:880px){.about-extra-grid{grid-template-columns:1fr}.about-extra-card--wide{grid-column:auto}}
@media(max-width:600px){.page-intro h1.about-localized-title{font-size:clamp(30px,7.4vw,41px)}.about-extra-card{padding:24px}.about-extra-card ul{columns:1}html[dir="rtl"] .faq-item>div{padding-left:12px}}
@media(max-width:880px){.pain-grid{grid-template-columns:repeat(2,1fr)}.localized-overview{grid-template-columns:1fr;gap:22px}}
@media(max-width:600px){.pain-grid,.area-topic-grid{grid-template-columns:1fr}.pain-card{min-height:220px}.market-integrated-links{grid-template-columns:1fr}.translated-detail ul{columns:1}}

/* Allow the revised three-line Chinese homepage statement to remain balanced. */
.hero h1.hero-title-long{font-size:clamp(36px,3.7vw,58px);line-height:1.27;letter-spacing:-.05em}
@media(max-width:600px){.hero h1.hero-title-long{font-size:clamp(30px,7.4vw,39px);line-height:1.33}}
.hero h1.hero-title-translated{font-size:clamp(35px,3.65vw,57px);line-height:1.28}
@media(max-width:600px){.hero h1.hero-title-translated{font-size:clamp(29px,7.5vw,38px);line-height:1.34}}
/* Keep longer translated capability/demand labels inside the original circles. */
html:not([lang="zh-CN"]) .hero .graph-circle strong{font-size:19px;max-width:166px;letter-spacing:0;overflow-wrap:anywhere}
/* Localized positioning headlines in the four newly structured work pages. */
.page-intro h1.approach-positioning-title{font-size:clamp(32px,3.4vw,50px);line-height:1.29;max-width:1050px;letter-spacing:-.035em}
@media(max-width:600px){.page-intro h1.approach-positioning-title{font-size:clamp(29px,7vw,39px);line-height:1.33}}

/* Latest About modules from the official October 25 feature branch. */
.latest-about-modules{padding-top:72px;padding-bottom:78px;display:grid;gap:16px}
.latest-about-modules .section-accordion{margin:0;background:#e7ecee;border:1px solid var(--border);border-radius:14px;overflow:hidden}
.latest-about-modules .section-accordion>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:27px 33px;font-size:clamp(25px,2.5vw,39px);line-height:1.32;font-weight:640;letter-spacing:-.038em;outline-offset:-3px}
.latest-about-modules .section-accordion>summary::-webkit-details-marker{display:none}
.latest-about-modules .section-accordion>summary span{display:grid;place-items:center;width:43px;height:43px;flex:none;border:1px solid #99aab3;border-radius:50%;font-weight:400;font-size:27px;line-height:1;transition:transform .2s}
.latest-about-modules .section-accordion[open]>summary span{transform:rotate(45deg)}
.latest-about-modules .section-accordion[open]>summary{background:#d7e1e5;border-bottom:1px solid var(--border)}
.latest-about-modules .accordion-body{padding:29px 33px 36px;animation:module-reveal .24s ease both}
@keyframes module-reveal{from{opacity:.45;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
.insights-index{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:100%}
.insights-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-height:185px;padding:24px 28px;background:var(--white);border:1px solid var(--border);border-radius:var(--radius);text-decoration:none;color:var(--ink);transition:border-color .18s ease,transform .18s ease}
.insights-card:hover,.insights-card:focus-visible{border-color:var(--accent);transform:translateY(-2px)}
.insights-card-no{color:var(--accent);font-size:.75rem;font-weight:800;letter-spacing:.14em;margin-bottom:10px}
.insights-card h3{font-size:clamp(1.05rem,1.8vw,1.35rem);line-height:1.4;margin:0 20px 8px 0;font-weight:750;letter-spacing:-.018em}
.insights-card p{font-size:.92rem;line-height:1.65;color:var(--muted);margin:0 8px 16px 0}
.insights-card-arrow{margin-top:auto;font-size:1.25rem;color:var(--accent);line-height:1}
.about-project-portfolio>h3{font-size:28px;margin:4px 0 9px}
.about-project-portfolio>p{color:var(--muted);max-width:960px;margin:0 0 16px}
.portfolio-group,.featured-business-case{padding-top:28px;margin-top:26px;border-top:1px solid var(--border)}
.portfolio-group>h3,.featured-business-case>h3{font-size:22px;margin:0 0 19px}
.portfolio-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.portfolio-card{position:relative;display:flex;flex-direction:column;gap:10px;min-height:185px;padding:24px;background:#f8fafb;border-radius:10px;border:1px solid #cbd4d8;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.portfolio-card:hover,.portfolio-card:focus-visible{transform:translateY(-3px);border-color:#8ca3ad;box-shadow:0 12px 24px #2e3e4912}
.portfolio-card h4{font-size:18px;font-weight:730;line-height:1.45;letter-spacing:-.02em;padding-inline-end:16px;margin:0}
.portfolio-card p{font-size:13px;color:#596770;line-height:1.75;margin:0}
.portfolio-card-corner{position:absolute;inset-inline-end:20px;top:16px;color:#8297a4;font-size:19px}
.portfolio-disclaimer{margin-top:26px!important;font-size:12px;line-height:1.8;border-inline-start:3px solid #9eafb9;padding-inline-start:12px}

/* Always-visible illustrated industry insight and selected case galleries. */
.latest-about-modules{gap:88px}
.about-card-gallery>.section-head{margin-bottom:27px}
.about-card-gallery>.section-head h2{font-size:clamp(30px,3.4vw,46px);letter-spacing:-.035em}
.about-card-gallery>.section-head .eyebrow{margin-bottom:12px}
.about-card-gallery .about-project-portfolio>h3{font-size:20px}
.about-card-gallery .insights-index{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.about-card-gallery .insights-card,.about-card-gallery .portfolio-card{min-height:253px;background:#e5edf1;border-color:#c6d6df;border-radius:13px;padding:21px 24px 25px;overflow:hidden}
.about-card-gallery .insights-card:nth-child(3n+2),.about-card-gallery .portfolio-card:nth-child(3n+2){background:#e8edef}
.about-card-gallery .insights-card:nth-child(3n+3),.about-card-gallery .portfolio-card:nth-child(3n+3){background:#e4e8ed}
.about-card-gallery .insights-card:hover,.about-card-gallery .portfolio-card:hover,.about-card-gallery .insights-card:focus-visible,.about-card-gallery .portfolio-card:focus-visible{transform:translateY(-4px);box-shadow:0 15px 27px #2e455318;border-color:#8baab9}
.about-card-gallery .insights-card h3,.about-card-gallery .portfolio-card h4{font-size:clamp(17px,1.45vw,21px);line-height:1.37;margin-top:10px}
.about-card-gallery .insights-card p,.about-card-gallery .portfolio-card p{line-height:1.62}
.about-card-gallery .insights-card-no{margin:6px 0 0;color:#5d7a8d}
.insight-symbol{display:block;position:relative;width:122px;height:77px;flex:none;margin-bottom:5px}
.insight-symbol i{position:absolute;display:block;border:2px solid #829fae;background:#cbdde579;box-shadow:5px 5px 0 #c6d7df60}
.insight-symbol--1 i:first-child{width:70px;height:48px;inset:5px auto auto 7px}
.insight-symbol--1 i:nth-child(2){width:58px;height:43px;left:28px;top:20px}
.insight-symbol--1 i:nth-child(3){width:12px;height:12px;border-radius:50%;left:93px;top:8px}
.insight-symbol--2 i:first-child,.insight-symbol--2 i:nth-child(2){width:55px;height:55px;border-radius:50%;top:7px}
.insight-symbol--2 i:first-child{left:5px}.insight-symbol--2 i:nth-child(2){left:42px}
.insight-symbol--2 i:nth-child(3){width:12px;height:12px;left:47px;top:28px;border-radius:50%;background:#7997a9}
.insight-symbol--3 i:first-child{width:95px;height:58px;left:5px;top:5px;border-radius:6px}
.insight-symbol--3 i:nth-child(2){width:60px;height:1px;left:22px;top:24px;border:0;background:#829fae}
.insight-symbol--3 i:nth-child(3){width:41px;height:1px;left:22px;top:43px;border:0;background:#829fae}
.insight-symbol--4 i:first-child,.insight-symbol--4 i:nth-child(2){width:44px;height:44px;transform:rotate(45deg)}
.insight-symbol--4 i:first-child{top:24px;left:12px}.insight-symbol--4 i:nth-child(2){top:8px;left:48px}
.insight-symbol--4 i:nth-child(3){width:10px;height:10px;border-radius:50%;left:101px;top:29px}
.insight-symbol--5 i:first-child{width:60px;height:60px;border-radius:50%;left:10px;top:5px}
.insight-symbol--5 i:nth-child(2){width:40px;height:2px;left:47px;top:33px;transform:rotate(-37deg);border:0;background:#829fae}
.insight-symbol--5 i:nth-child(3){width:19px;height:19px;border-radius:50%;left:91px;top:13px}
.about-band-links{display:flex;align-items:center;gap:26px;flex-wrap:wrap}
.about-band-links .light-link--industries{color:#d1e8f7;border-bottom-color:#9bd0e7;font-size:14px}
.about-band-links .light-link--industries:hover{color:#fff}
html[dir="rtl"] .insight-symbol{transform:scaleX(-1)}
@media(max-width:1020px){.about-card-gallery .insights-index{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:740px){.latest-about-modules{gap:55px}.about-card-gallery .insights-index{grid-template-columns:1fr}.about-card-gallery .insights-card,.about-card-gallery .portfolio-card{min-height:225px}}

/* Localized 8 + 25 industry hub sourced from the official feature branch. */
.industry-directory-intro{position:relative;padding-bottom:76px}
.industry-directory-intro h1{max-width:950px}
.industry-directory-intro>p:not(.eyebrow){max-width:940px;line-height:1.8}
.industry-directory-numbers{margin-top:45px;display:flex;align-items:center;gap:18px;color:#708b9b}
.industry-directory-numbers>span{font-size:70px;font-weight:750;line-height:.85;letter-spacing:-.07em;display:flex;align-items:flex-end;gap:10px}
.industry-directory-numbers small{font-size:11px;letter-spacing:.16em;padding-bottom:4px;font-weight:700}
.industry-directory-numbers b{font-size:40px;font-weight:350}
.industry-directory-group{padding-top:50px}
.industry-directory-products{background:#e7ecef;padding-top:96px;padding-bottom:105px}
.industry-tile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.industry-tile{display:flex;flex-direction:column;color:var(--ink);text-decoration:none;min-width:0;overflow:hidden;background:#f2f5f6;border:1px solid #c8d6dc;border-radius:13px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.industry-tile:hover,.industry-tile:focus-visible{transform:translateY(-4px);border-color:#7297aa;box-shadow:0 16px 28px #364b581a}
.industry-tile:nth-child(3n+2){background:#ebf1f4}.industry-tile:nth-child(3n+3){background:#e8eef2}
.industry-tile .industry-visual,.industry-tile .sector-visual{height:185px;min-height:185px;background-color:#e5ecf0;border-bottom:1px solid #bfcfd7;border-radius:13px 13px 0 0}
.industry-tile .iv-art,.industry-tile .sv-art{transform:translate(-50%,-50%) scale(.65)}
.industry-tile .iv-code strong{font-size:59px}.industry-tile .iv-code small{font-size:12px}
.industry-tile .iv-code::before{height:65px;max-width:150px}
.industry-tile .iv-label,.industry-tile .sv-caption{bottom:12px}
.industry-tile .sv-mark{font-size:50px}
.industry-tile-caption{display:flex;flex:1;flex-direction:column;padding:23px 25px 27px;min-height:180px}
.industry-tile-caption small{color:#6b8493;letter-spacing:.14em;font-size:10px;font-weight:800}
.industry-tile-caption h3{font-size:clamp(18px,1.65vw,24px);line-height:1.35;font-weight:700;margin:18px 0 21px}
.industry-tile-caption span{margin-top:auto;color:#547589;font-size:12px;font-weight:750}
.industry-directory-end{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}
.industry-profile-intro{padding-top:62px;padding-bottom:85px}
.industry-return{display:inline-flex;margin-bottom:40px;color:#5d8295;font-size:14px;font-weight:700}
.industry-profile-head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:40px;align-items:center}
.industry-profile-head h1{font-size:clamp(31px,3.75vw,55px);line-height:1.18;letter-spacing:-.035em;margin:0 0 24px}
.industry-profile-head p{font-size:16px;line-height:1.9;color:var(--muted);max-width:750px}
.industry-profile-head .industry-visual,.industry-profile-head .sector-visual{background-color:#e8eef2}
.industry-detail-section{padding:80px 0}
.industry-detail-alt{background:#e7edf0}
.industry-detail-section .section-head{align-items:start;max-width:1200px;margin-bottom:32px}
.industry-detail-section .section-head h2{font-size:clamp(28px,2.6vw,39px);margin:0}
.industry-detail-section .section-head>p{max-width:440px;line-height:1.75;color:var(--muted)}
.industry-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.industry-info-card{background:#f8fafb;border:1px solid #c8d5dd;border-radius:11px;min-height:190px;padding:26px;position:relative}
.industry-info-card:nth-child(3n+2){background:#e9eff2}.industry-info-card:nth-child(3n+3){background:#eef3f5}
.industry-card-number{display:block;color:#7895a6;font-size:13px;font-weight:800;letter-spacing:.12em;margin-bottom:22px}
.industry-info-card h3{font-size:20px;line-height:1.38;margin:0 0 13px}
.industry-info-card p{font-size:14px;line-height:1.8;color:var(--muted);margin:0}
.industry-info-card a,.industry-signal a{display:inline-block;margin-top:18px;color:#466e84;font-size:13px;font-weight:750;text-decoration:underline;text-underline-offset:4px}
.industry-signal>div{background:#e5eef2;border:1px solid #c4d5de;padding:36px 42px;border-radius:12px}
.industry-signal h2{font-size:29px;margin:5px 0 18px}
.industry-signal p{font-size:15px;line-height:1.9}
.industry-boundary{padding-top:80px;padding-bottom:90px}
.industry-boundary h2{font-size:30px;margin:0 0 22px}
.industry-boundary p{max-width:1050px;font-size:15px;line-height:1.9}
.industry-contact{background:#304550;color:#f6fafb;padding:75px 0}
.industry-contact h2{font-size:clamp(28px,3vw,42px)}
.industry-contact a{color:#e0eff5;display:inline-flex;margin:20px 35px 0 0;border-bottom:1px solid #a6c3d0;padding-bottom:6px}
html[dir="rtl"] .industry-directory-intro,html[dir="rtl"] .industry-profile-head{text-align:right}
@media(max-width:1050px){.industry-tile-grid,.industry-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.industry-profile-head{grid-template-columns:1fr 1fr}}
@media(max-width:740px){.industry-tile-grid,.industry-info-grid,.industry-profile-head{grid-template-columns:1fr}.industry-tile .industry-visual,.industry-tile .sector-visual{height:180px;min-height:180px}.industry-profile-head .industry-visual,.industry-profile-head .sector-visual{min-height:250px}.industry-directory-numbers>span{font-size:55px}.industry-detail-section{padding:62px 0}.industry-signal>div{padding:25px}}
@media(prefers-reduced-motion:reduce){.industry-tile{transition:none}}

/* Original feature-branch article typography, adapted to the shared Site shell. */
.insights-article-shell{padding-top:58px;padding-bottom:66px}
.insights-article-container{max-width:1100px;margin-inline:auto}
.insights-back{display:inline-flex;align-items:center;gap:.5em;padding:10px 14px;border:1px solid var(--border);border-radius:9px;background:var(--white);font-weight:650;font-size:.9rem}
.insights-back:hover,.insights-back:focus-visible{border-color:var(--accent)}
.insights-article-eyebrow{margin:38px 0 12px;letter-spacing:.025em;color:var(--muted);font-size:.87rem}
.insights-article-eyebrow span{padding-inline:10px;color:var(--accent)}
.insights-content{max-width:980px;color:var(--ink);font-size:1.02rem;line-height:1.85;overflow-wrap:anywhere}
.insights-content h1{font-size:clamp(2rem,4vw,3.3rem);line-height:1.18;letter-spacing:-.025em;margin:10px 0 30px}
.insights-content h2{font-size:clamp(1.35rem,2.4vw,1.8rem);line-height:1.35;margin:42px 0 15px;padding-top:12px;border-top:1px solid var(--border)}
.insights-content h3{font-size:1.16rem;margin:28px 0 12px}
.insights-content p{margin:0 0 21px}
.insights-content ul,.insights-content ol{padding-inline-start:1.5em;margin:0 0 25px}
.insights-content li{margin:8px 0;padding-inline-start:3px}
.insights-content a{text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--accent)}
.insights-content a:hover{text-decoration-thickness:2px}
.insights-content blockquote{margin:23px 0;padding:12px 23px;border-inline-start:3px solid var(--accent);background:var(--section);border-radius:5px}
.insights-content blockquote p:last-child{margin-bottom:0}
.insights-content hr{border:0;border-top:1px solid var(--border);margin:32px 0}
.insights-content table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;margin:22px 0 30px;font-size:.91rem;line-height:1.55;unicode-bidi:plaintext}
.insights-content th,.insights-content td{min-width:120px;padding:12px 14px;text-align:start;border:1px solid var(--border);vertical-align:top}
.insights-content th{background:var(--section);font-weight:750}
.insights-content tr:nth-child(even) td{background:#edf0f2}
.insights-article-bottom{margin-top:42px;border-top:1px solid var(--border);padding-top:26px}
.insights-article-bottom a{text-decoration:underline;text-underline-offset:4px}
.insights-related-section{padding-top:20px;padding-bottom:75px;border-top:1px solid var(--border)}
.insights-related-section>h2{font-size:28px;margin:0 0 22px}
.insights-related-section .insights-card{min-height:158px}
html[dir="rtl"] .insights-content h1{letter-spacing:normal}
html[dir="rtl"] .insights-card h3,html[dir="rtl"] .insights-card p{margin-right:0;margin-left:20px}
.insights-hero-photo-css{margin:4px 0 30px}
.insights-hero-photo-css figcaption{color:var(--muted);font-size:.82rem;margin-top:10px;text-align:center}
.fair-structure{height:220px;position:relative;display:flex;align-items:flex-end;justify-content:center;gap:12px;background:linear-gradient(145deg,#e2eaf0,#d6e1e8);border-radius:12px;overflow:hidden;border:1px solid #c5d3dc}
.fair-structure:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 68px,#fff5 69px 70px);opacity:.6}
.fair-structure i{z-index:1;display:block;width:24%;height:71%;background:repeating-linear-gradient(0deg,#c9d5dd 0 3px,#a6b8c3 4px 5px,#e8eff3 7px 19px);border:2px solid #8eacba;transform:skew(-9deg)}
.fair-structure i:nth-child(2){height:90%;transform:skew(0)}.fair-structure i:nth-child(3){height:71%;transform:skew(9deg)}
.fair-structure span{position:absolute;z-index:2;bottom:13px;letter-spacing:.2em;font-weight:800;font-size:12px;color:#304957;background:#e9f0f3ce;padding:3px 14px}

/* Project Portfolio detail routes copied from the latest feature-branch data. */
.project-detail-shell{max-width:1080px;padding-top:70px;padding-bottom:100px}
.project-detail-shell>.eyebrow{margin-top:26px}
.project-detail-shell>h1{font-size:clamp(32px,4vw,52px);max-width:930px;margin:0 0 20px}
.project-detail-summary{font-size:19px;color:var(--muted);margin:0 0 42px}
.project-detail-content{padding:26px 34px;background:#f8f9f9;border:1px solid var(--border);border-radius:12px;margin-bottom:32px}
.project-detail-content section{padding:20px 0;border-bottom:1px solid var(--border)}
.project-detail-content section:last-child{border-bottom:0}
.project-detail-content section h2{font-size:24px;margin:0 0 12px}
.project-detail-content section p{margin:0 0 12px}
.project-detail-content li{margin-bottom:8px}
.crmeb-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px}
.crmeb-facts>div{padding:14px;background:#e7eef2;border-radius:8px}
.crmeb-facts dt{font-size:12px;color:var(--muted)}.crmeb-facts dd{font-weight:700;margin:5px 0 0}

/* Non-collapsible 15-deliverable gallery, with five CSS-only geometric motifs. */
.deliverables-module{padding-top:86px;padding-bottom:90px}
.deliverables-module .section-head{align-items:end;margin-bottom:28px}
.deliverables-module .section-head>p{max-width:470px;color:var(--muted);font-size:15px}
.deliverables-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.deliverable-card{min-height:223px;border:1px solid #c8d4da;background:#e5eef2;border-radius:10px;padding:21px 24px 26px;display:flex;flex-direction:column;align-items:flex-start;transition:transform .18s,border-color .18s;position:relative;overflow:hidden}
.deliverable-card:nth-child(3n+2){background:#e7ebed}.deliverable-card:nth-child(3n+3){background:#e4e8ec}
.deliverable-card:hover{transform:translateY(-3px);border-color:#8199a8}
.deliverable-number{font-size:11px;font-weight:750;color:#617988;letter-spacing:.14em;margin-top:auto}
.deliverable-card h3{font-size:clamp(17px,1.45vw,21px);font-weight:640;line-height:1.43;margin:8px 0 0;max-width:340px;letter-spacing:-.025em}
.deliverable-symbol{width:125px;height:75px;margin:0 0 10px;position:relative}
.deliverable-symbol i{display:block;position:absolute;border:2px solid #829eac;background:#d5e4eb77;box-shadow:6px 6px 0 #c6d7e077}
.deliverable-symbol--1 i:nth-child(1){width:66px;height:48px;left:8px;top:5px}.deliverable-symbol--1 i:nth-child(2){width:66px;height:48px;left:29px;top:18px}.deliverable-symbol--1 i:nth-child(3){width:8px;height:8px;border-radius:50%;left:80px;top:4px}
.deliverable-symbol--2 i{border-radius:50%}.deliverable-symbol--2 i:nth-child(1){width:56px;height:56px;left:5px;top:8px}.deliverable-symbol--2 i:nth-child(2){width:56px;height:56px;left:43px;top:8px}.deliverable-symbol--2 i:nth-child(3){width:10px;height:10px;left:50px;top:31px;background:#819eae}
.deliverable-symbol--3 i:nth-child(1){width:89px;height:55px;left:8px;top:7px;border-radius:6px}.deliverable-symbol--3 i:nth-child(2){width:56px;height:2px;left:23px;top:25px;border:0;background:#839dad}.deliverable-symbol--3 i:nth-child(3){width:37px;height:2px;left:23px;top:39px;border:0;background:#839dad}
.deliverable-symbol--4 i:nth-child(1){width:40px;height:40px;left:5px;top:24px;transform:rotate(45deg)}.deliverable-symbol--4 i:nth-child(2){width:40px;height:40px;left:45px;top:10px;transform:rotate(45deg)}.deliverable-symbol--4 i:nth-child(3){width:10px;height:10px;left:96px;top:30px;border-radius:50%}
.deliverable-symbol--5 i:nth-child(1){width:16px;height:39px;left:10px;top:30px}.deliverable-symbol--5 i:nth-child(2){width:16px;height:55px;left:40px;top:14px}.deliverable-symbol--5 i:nth-child(3){width:16px;height:67px;left:70px;top:2px}
html[dir="rtl"] .deliverable-symbol{transform:scaleX(-1)}
@media(max-width:1020px){.portfolio-card-grid,.deliverables-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.crmeb-facts{grid-template-columns:repeat(2,1fr)}}
@media(max-width:740px){.insights-index,.portfolio-card-grid,.deliverables-grid{grid-template-columns:1fr}.latest-about-modules{padding-top:42px;padding-bottom:50px}.latest-about-modules .section-accordion>summary{padding:22px;font-size:25px}.latest-about-modules .accordion-body{padding:22px}.insights-card{min-height:142px;padding:20px}.insights-article-shell{padding-top:30px}.insights-content{font-size:.98rem;line-height:1.8}.insights-content table{font-size:.83rem}.insights-content th,.insights-content td{padding:9px 10px;min-width:108px}.project-detail-content{padding:18px}.deliverable-card{min-height:208px}.deliverables-module{padding-top:56px;padding-bottom:64px}}
@media(prefers-reduced-motion:reduce){.insights-card,.portfolio-card,.deliverable-card{transition:none}.latest-about-modules .accordion-body{animation:none}}

/* Owner-approved Oct 26 refinements. Keep the two hero colors distinct and
   balance the four translated headings without changing their wording. */
.hero h1.hero-title-translated{font-size:clamp(32px,3.15vw,49px);line-height:1.2;letter-spacing:-.044em;max-width:100%;text-wrap:balance}
.hero h1.hero-title-translated em{display:block;margin-top:.16em;font-size:.9em;line-height:1.27;letter-spacing:-.034em;text-wrap:balance;overflow-wrap:normal}
@media(max-width:600px){.hero h1.hero-title-translated{font-size:clamp(29px,7.9vw,36px);line-height:1.25}.hero h1.hero-title-translated em{font-size:.9em;margin-top:.2em}}

/* Pale Nordic blue-grey About band, harmonized with adjacent home sections. */
.about-band{background:#d9e4e8;color:#293e49}
.about-band .eyebrow{color:#5a7888}
.about-band p:not(.eyebrow){color:#526975}
.about-band .light-link{color:#2b4a59;border-bottom-color:#91aab7}
.about-band-links .light-link--industries{color:#315568;border-bottom-color:#91aab7}
.about-band-links .light-link--industries:hover,.about-band .light-link:hover{color:#142d3a}
.about-band .band-ring{border-color:#91a9b5}
.about-band .ring-two{border-color:#a8bec8;box-shadow:0 0 0 54px #bbccd439,0 0 0 108px #c4d5da32}
.about-band .band-cross{color:#476475}
.about-band .band-cross span{color:#8da7b3}

/* Exact source images from the current GitHub-backed official website.
   The displayed boxes preserve the source website's desktop dimensions and
   object-fit cropping; the photos scale down only at narrow viewports. */
.page-intro--with-photo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,471px);gap:48px;align-items:center;direction:ltr}
.page-intro--with-photo .page-intro-copy{min-width:0}
.page-intro--with-photo .page-intro-copy>p:not(.eyebrow){max-width:760px;font-size:17px;color:#68777e;line-height:1.9;margin:0}
.page-intro--with-photo .page-intro-copy>h1{max-width:100%}
.page-intro--with-photo .intro-photo-wrap{width:100%;display:flex;justify-content:flex-end;align-items:center}
.page-intro--with-photo .intro-photo-wrap img{display:block;object-fit:cover;object-position:center;max-width:100%;border:0;border-radius:0}
.page-intro--about .intro-photo-wrap img{width:460px;height:293px}
.page-intro--faq .intro-photo-wrap img{width:471px;height:289px}
.page-intro--approach .intro-photo-wrap img{width:471px;height:289px}
.page-intro--services .intro-photo-wrap img{width:471px;height:420px}
/* Services and FAQ hero titles share the restrained size of the new homepage.
   Other page titles, subtitles and the 22 individual service pages stay intact. */
.page-intro--services .page-intro-copy>h1,.page-intro--faq .page-intro-copy>h1{font-size:clamp(32px,3.15vw,49px);line-height:1.2;letter-spacing:-.044em;text-wrap:balance}
/* The question headings used to overpower the FAQ content. Keep the body at
   the 15px homepage prose baseline defined in body-copy.css. */
.faq-full .faq-item summary{font-size:17px;line-height:1.55}
@media(max-width:600px){.page-intro--services .page-intro-copy>h1,.page-intro--faq .page-intro-copy>h1{font-size:clamp(29px,7.9vw,36px);line-height:1.25}.faq-full .faq-item summary{font-size:16px}}
html[dir="rtl"] .page-intro--with-photo .page-intro-copy{direction:rtl;text-align:right}
@media(max-width:1020px){.page-intro--with-photo{grid-template-columns:1fr;gap:34px}.page-intro--with-photo .intro-photo-wrap{justify-content:flex-start}html[dir="rtl"] .page-intro--with-photo .intro-photo-wrap{justify-content:flex-end}}
/* The vector wordmark has left-anchored letter geometry in every locale. */
html[dir="rtl"] .bridge-graphic .graph-center{direction:ltr;unicode-bidi:isolate}

/* Additive motion standards. Existing About accordion (240ms/6px) and its
   return-to-section behavior are deliberately left untouched. */
@keyframes site-nav-enter{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
@keyframes site-fold-enter{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
.site-header .desktop-links,.site-header .mobile-controls{animation:site-nav-enter 400ms cubic-bezier(.22,1,.36,1) both}
.motion-reveal{opacity:0;translate:0 34px;transition:opacity 700ms ease,translate 700ms cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0ms);will-change:opacity,translate}
.motion-reveal.is-visible{opacity:1;translate:0 0;will-change:auto}
.faq-item[open]>div{animation:site-fold-enter 500ms cubic-bezier(.22,1,.36,1) both}
@media(max-width:600px){
  /* Position the complete 570px graphic by its own visual centre, so the
     CSS scale cannot push the central brand illustration off the phone. */
  .hero-right{position:relative;display:block;width:100%;height:340px;overflow:hidden}
  .hero-right>.bridge-graphic{position:absolute;top:50%;left:50%;width:570px;height:520px;max-width:none;transform:translate(-50%,-50%) scale(.58);transform-origin:center center}
}
@media(min-width:490px) and (max-width:600px){
  .hero-right{height:415px}
  .hero-right>.bridge-graphic{transform:translate(-50%,-50%) scale(.76)}
}
@media(max-width:350px){
  .hero-right{height:290px}
  .hero-right>.bridge-graphic{transform:translate(-50%,-50%) scale(.49)}
}
@media(prefers-reduced-motion:reduce){
  .site-header .desktop-links,.site-header .mobile-controls,.faq-item[open]>div{animation:none!important}
  .motion-reveal,.motion-reveal.is-visible{opacity:1!important;transform:none!important;transition:none!important}
}

/* Official six-route service finder, now the first section on every FAQ. */
.service-choice-section{padding:74px 0 79px;background:#e7ecef;border-bottom:1px solid #d2dee3}
.service-choice-head{max-width:940px;margin-bottom:32px}
.service-choice-head .eyebrow{color:#738996;font-size:11px;letter-spacing:.16em}
.service-choice-head h2{font-size:clamp(28px,3.1vw,43px);font-weight:600;line-height:1.24;letter-spacing:-.035em;margin:15px 0}
.service-choice-head>p:last-child{font-size:15px;line-height:1.8;color:#60747f}
.service-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.service-choice-card{display:grid;grid-template-columns:38px minmax(0,1fr);gap:15px;border:1px solid #c4d2d9;background:#f3f6f7;border-radius:9px;padding:24px 22px;min-height:155px}
.service-choice-no{font-size:13px;letter-spacing:.08em;color:#8196a2;font-weight:750}
.service-choice-card h3{font-weight:650;font-size:20px;line-height:1.42;letter-spacing:-.02em;margin:0 0 9px}
.service-choice-card h3 a{color:#263f4d;text-decoration:none;border-bottom:1px solid transparent}
.service-choice-card h3 a:hover{border-color:currentColor}
.service-choice-card p{font-size:15px;line-height:1.8;color:#546a76;margin:0}
html[dir="rtl"] .service-choice-card{text-align:right}
@media(max-width:700px){.service-choice-section{padding:49px 0 54px}.service-choice-grid{grid-template-columns:1fr}.service-choice-card{min-height:0;padding:21px 18px}.service-choice-card h3{font-size:18px}}

/* French headline uses natural word and apostrophe spacing. */
html[lang="fr"] .page-intro h1.about-localized-title{word-spacing:normal;letter-spacing:-.035em;font-kerning:normal}

/* The FAQ hero replaces its duplicated bitmap with a same-size CSS diagram. */
.page-intro--faq .faq-route-art{width:471px;max-width:100%;height:289px;position:relative;overflow:hidden;border:1px solid #d6e1e6;background:linear-gradient(133deg,#edf2f4,#f8faf9 55%,#e4ecef);isolation:isolate}
.faq-route-grid{position:absolute;inset:0;background:linear-gradient(#adc1cb36 1px,transparent 1px),linear-gradient(90deg,#adc1cb36 1px,transparent 1px);background-size:35px 35px;mask-image:linear-gradient(90deg,#000,transparent 95%)}
.faq-route-axis{position:absolute;left:11%;right:11%;top:51%;height:1px;background:#90a9b8;box-shadow:0 1px 0 #fff7}
.faq-route-orbit{position:absolute;left:50%;top:51%;transform:translate(-50%,-50%);border:1px solid #a8bac580;border-radius:50%;pointer-events:none}
.faq-route-orbit--outer{width:270px;height:270px}.faq-route-orbit--inner{width:190px;height:190px;border-style:dashed}
.faq-route-node{position:absolute;top:calc(51% - 18px);z-index:2;width:36px;height:36px;display:grid;place-items:center;border:1px solid #a4b8c3;border-radius:50%;background:#f7fbfb;color:#55798e;font-weight:750;font-size:17px}
.faq-route-node--question{left:8%}.faq-route-node--answer{right:8%}
.faq-route-center{position:absolute;z-index:3;top:51%;left:50%;transform:translate(-50%,-50%);width:148px;height:148px;border:1px solid #b4c6d0;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px;background:#dbe6eb;box-shadow:0 0 0 10px #e5edf0b0,0 0 0 23px #e0e9ed61;text-align:center}
.faq-route-center small,.faq-route-center span{font-size:8px;color:#648295;letter-spacing:.15em;font-weight:750;white-space:nowrap}
.faq-route-center strong{font-size:32px;line-height:1;color:#294757;letter-spacing:-.04em;font-weight:630}.faq-route-center em{font-style:normal;font-size:.68em;color:#7798aa}
.faq-route-coordinate{position:absolute;bottom:16px;right:20px;font-size:9px;font-weight:700;letter-spacing:.15em;color:#7a97a6}

/* Chinese Services and EN/ES/ZH Contact headlines: one line, full ink. */
.page-intro--services .page-intro-copy>h1.services-single-line-title{font-size:clamp(34px,3.8vw,54px);white-space:nowrap;color:#283238;font-weight:620;letter-spacing:-.045em;text-wrap:nowrap;overflow-wrap:normal}
/* Two market-service entrances, followed by a full-width general-services button. */
.page-intro--services .services-intro-actions{margin-top:24px;width:100%;max-width:610px;display:grid;gap:15px}
.page-intro--services .services-intro-market-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.page-intro--services .services-intro-market-links>a{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:58px;padding:14px 8px 14px 0;border-bottom:1px solid #9aadb6;font-size:clamp(12px,1.05vw,15px);line-height:1.45;font-weight:700;color:#31454f;text-decoration:none;transition:color .2s,border-color .2s}
.page-intro--services .services-intro-market-links>a:hover{color:#172f3a;border-color:#345b6b}
.page-intro--services .services-intro-market-links>a span{font-size:17px;flex:none}
.page-intro--services .services-intro-wide-link{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:62px;padding:17px 23px;background:#dbe5e9;border:1px solid #abbcc5;font-size:15px;font-weight:750;color:#223a47;text-decoration:none;transition:background .2s}
.page-intro--services .services-intro-wide-link:hover{background:#cfdee5}
.page-intro--services .services-intro-wide-link span{font-size:22px;font-weight:400}
@media(max-width:600px){.page-intro--services .services-intro-actions{margin-top:18px}.page-intro--services .services-intro-market-links{gap:12px}.page-intro--services .services-intro-market-links>a{font-size:12px}.page-intro--services .services-intro-wide-link{font-size:13px;padding:14px 18px}}
.page-intro h1.contact-hero-title{font-size:clamp(36px,4.1vw,59px);color:#20282d;white-space:nowrap;max-width:none;letter-spacing:-.048em;text-wrap:nowrap;overflow-wrap:normal}
@media(max-width:650px){.page-intro--services .page-intro-copy>h1.services-single-line-title{font-size:clamp(20px,5.3vw,32px)}.page-intro h1.contact-hero-title{font-size:clamp(22px,5.2vw,31px)}.faq-route-orbit--outer{width:230px;height:230px}}

/* Fill the previously blank final two columns with an industry-directory card. */
.service-card--industries{grid-column:span 1;min-height:340px;background:linear-gradient(112deg,#e7eef1,#eef2f3);border-color:#c7d7df}
.service-card--industries:hover{background:linear-gradient(112deg,#e2ebef,#f7f9f9);border-color:#8ca9b9}
.service-card--industries .card-main{max-width:100%;position:relative;z-index:1}.service-card--industries .card-main h3{margin:10px 0 12px}.service-card--industries .card-main p{max-width:330px}.industry-home-action{display:inline-block;font-size:12px;color:#426578;border-bottom:1px solid #8fa9b7;padding-bottom:5px;margin-top:17px}
.industry-home-art{position:absolute;right:22px;top:53px;width:144px;height:144px;z-index:0;opacity:.65;pointer-events:none;display:grid;place-items:center;background:repeating-linear-gradient(90deg,#bacbd320 0 1px,transparent 1px 44px)}
.industry-home-art i{position:absolute;width:145px;height:145px;border:1px solid #95aeba77;border-radius:50%}.industry-home-art i:nth-child(2){width:105px;height:105px;border-style:dashed}.industry-home-art b{font-size:31px;font-weight:650;letter-spacing:-.065em;color:#597a8b}.industry-home-art b span{font-size:.56em;margin:0 4px;color:#9fb4bf}
@media(max-width:700px){.service-card--industries{grid-column:span 1}.service-card--industries .card-main{max-width:100%}.industry-home-art{opacity:.3;width:60%}}

/* Same first-row H1 type scale on the five core pages in every language.
   Other headings, the 22 specialist service pages and subpages are unchanged. */
body.core-text-unified .hero h1,
body.core-text-unified .page-intro h1{font-size:clamp(32px,3.15vw,49px);line-height:1.2;letter-spacing:-.044em;text-wrap:balance}
@media(max-width:600px){
  body.core-text-unified .hero h1,
  body.core-text-unified .page-intro h1{font-size:clamp(29px,7.9vw,36px);line-height:1.25}
}
/* Contact headline overrides the shared five-page heading scale only for the
   requested EN/ES/ZH one-line black text. */
body.core-text-unified .page-intro h1.contact-hero-title{font-size:clamp(36px,4.1vw,59px);color:#20282d;white-space:nowrap;text-wrap:nowrap;overflow-wrap:normal}
@media(max-width:650px){body.core-text-unified .page-intro h1.contact-hero-title{font-size:clamp(22px,5.2vw,31px)}}

/* v33: Give the official-regulator directory a readable handoff to the footer.
   The added 70px is the requested 2–3 lines of breathing room. */
.regulated-official{margin-bottom:165px}

/* The complete service-choice tile, not only its heading, now navigates. */
a.service-choice-card--link{color:#263f4d;text-decoration:none;cursor:pointer;transition:translate .25s ease,border-color .25s ease,box-shadow .25s ease}
a.service-choice-card--link:hover,a.service-choice-card--link:focus-visible{translate:0 -4px;border-color:#8ca3ad;box-shadow:0 12px 24px #2e45531b}
a.service-choice-card--link:focus-visible{outline:2px solid #6a8b9e;outline-offset:3px}

/* Add a light lift to other genuine links without replacing existing hover
   transforms on case cards, industry tiles or established animated buttons. */
@media(hover:hover) and (pointer:fine){
  :where(a[href]:not(.portfolio-card):not(.insights-card):not(.industry-tile):not(.about-extra-card--link):not(.service-card):not(.market-feature-card):not(.market-switch-link):not(.path-option):not(.service-choice-card--link)){
    transition:translate 240ms cubic-bezier(.22,1,.36,1)
  }
  :where(a[href]:not(.portfolio-card):not(.insights-card):not(.industry-tile):not(.about-extra-card--link):not(.service-card):not(.market-feature-card):not(.market-switch-link):not(.path-option):not(.service-choice-card--link)):hover,
  :where(a[href]:not(.portfolio-card):not(.insights-card):not(.industry-tile):not(.about-extra-card--link):not(.service-card):not(.market-feature-card):not(.market-switch-link):not(.path-option):not(.service-choice-card--link)):focus-visible{translate:0 -3px}
  /* Scroll-reveal's .is-visible state formerly overrode the zero-specificity
     :where hover rule. Restore lift only for independently floating links;
     original case/industry/card transforms retain their own animations. */
  a[href].motion-reveal.is-visible:not(.portfolio-card):not(.insights-card):not(.industry-tile):not(.about-extra-card--link):not(.service-card):not(.market-feature-card):not(.market-switch-link):not(.path-option):not(.service-choice-card--link){transition:opacity 700ms ease,translate 240ms cubic-bezier(.22,1,.36,1)}
  a[href].motion-reveal.is-visible:not(.portfolio-card):not(.insights-card):not(.industry-tile):not(.about-extra-card--link):not(.service-card):not(.market-feature-card):not(.market-switch-link):not(.path-option):not(.service-choice-card--link):is(:hover,:focus-visible){translate:0 -3px}
}
@media(prefers-reduced-motion:reduce){a.service-choice-card--link{transition:none!important;translate:none!important}}

/* v34: Phone links stay instantly interactive. The original language picker
   and About return-scroll remain intact; only newly introduced motion stops. */
@media(max-width:760px),(hover:none) and (pointer:coarse){
  .site-header .desktop-links,.site-header .mobile-controls{animation:none!important}
  .motion-reveal,.motion-reveal.is-visible{opacity:1!important;translate:none!important;transition:none!important;transition-delay:0ms!important}
  .faq-item[open]>div{animation:none!important}
  a.service-choice-card--link,a.service-choice-card--link:hover,a.service-choice-card--link:focus-visible{translate:none!important;transition:none!important;box-shadow:none}
}
@media(max-width:1100px){
  /* Midpoint is measured between visible wordmark and language selector. */
  .mobile-controls .mobile-menu-toggle{left:var(--mobile-service-mid,50%)!important;width:var(--mobile-service-width,88px)!important;min-width:0!important;transform:translateX(-50%)!important}
}

/* v35: larger, fully clickable return-to-top control on service details. */
body:has(main .service-intro) .back-top{
  width:56px;height:56px;border-radius:12px;font-size:25px;font-weight:500;
  border-color:#b7c6ce;background:rgba(229,235,238,.97);color:#354e5b;
  box-shadow:0 8px 28px rgba(42,62,72,.10);cursor:pointer
}
body:has(main .service-intro) .back-top:hover{background:#d8e3e9;box-shadow:0 12px 28px rgba(42,62,72,.16)}
body:has(main .service-intro) .back-top:focus-visible{outline:3px solid #7296a9;outline-offset:3px}

/* Three Services shortcuts: the same muted frosted surface, border and arrow. */
.page-intro--services .services-intro-actions .services-intro-market-links > a,
.page-intro--services .services-intro-actions > .services-intro-wide-link{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  min-height:64px;padding:15px 20px;border:1px solid #b6c5ce;border-radius:10px;
  background:rgba(220,229,234,.84);backdrop-filter:blur(12px);
  box-shadow:0 3px 12px rgba(66,84,94,.05);color:#304955;
  font-size:clamp(13px,1.05vw,15px);font-weight:700;line-height:1.4;
  transition:background-color .22s,border-color .22s,box-shadow .22s,translate .22s
}
.page-intro--services .services-intro-actions .services-intro-market-links > a:hover,
.page-intro--services .services-intro-actions > .services-intro-wide-link:hover{
  background:#d5e2e9;border-color:#8da4b0;box-shadow:0 10px 24px rgba(66,84,94,.10);translate:0 -3px
}
.page-intro--services .services-intro-actions .services-intro-market-links > a span,
.page-intro--services .services-intro-actions > .services-intro-wide-link span{font-size:20px;flex:none;font-weight:400}
@media(max-width:760px){
  .page-intro--services .services-intro-actions .services-intro-market-links > a,
  .page-intro--services .services-intro-actions > .services-intro-wide-link{padding:14px 12px;min-height:59px;transition:none}
  .page-intro--services .services-intro-actions .services-intro-market-links > a:hover,
  .page-intro--services .services-intro-actions > .services-intro-wide-link:hover{translate:none}
  body:has(main .service-intro) .back-top{right:14px;bottom:14px;width:54px;height:54px}
}

/* v38 mobile: centre the full-width Business Support Areas label while its
   existing arrow remains at the trailing edge and the whole tile stays a link. */
@media(max-width:760px){
  .page-intro--services .services-intro-actions > .services-intro-wide-link{
    position:relative;justify-content:center!important;text-align:center!important;
    padding-inline:43px!important;
  }
  .page-intro--services .services-intro-actions > .services-intro-wide-link > span{
    position:absolute;inset-inline-end:15px;top:50%;transform:translateY(-50%);
  }
}

.combined-faq-intro{padding-top:72px;padding-bottom:20px}
.combined-faq-intro+.section.shell{padding-top:0}


/* v48: equal three-column service shortcuts, including mobile */
.page-intro--services .services-intro-actions{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;align-items:stretch!important;
}
.page-intro--services .services-intro-market-links{
  display:contents!important;
}
.page-intro--services .services-intro-market-links>a,
.page-intro--services .services-intro-actions>.services-intro-wide-link{
  box-sizing:border-box!important;min-width:0!important;width:100%!important;
  min-height:64px!important;padding:12px 11px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  text-align:center!important;line-height:1.35!important;overflow-wrap:anywhere;
}
.page-intro--services .services-intro-actions>.services-intro-wide-link{
  position:static!important;grid-column:auto!important;
}
@media(max-width:760px){
  .page-intro--services .services-intro-actions{gap:6px!important}
  .page-intro--services .services-intro-market-links{gap:6px!important}
  .page-intro--services .services-intro-market-links>a,
  .page-intro--services .services-intro-actions>.services-intro-wide-link{
    min-height:62px!important;padding:10px 5px!important;
    font-size:clamp(10px,2.7vw,13px)!important;
  }
}


/* v51: English common business needs in one line on desktop */
@media(min-width:1100px){
  html[lang="en"] .common-needs .section-head{gap:16px!important}
  html[lang="en"] .common-needs .section-head>div{flex:1 1 auto;min-width:0}
  html[lang="en"] .common-needs .section-head h2{
    font-size:clamp(32px,3.05vw,43px)!important;letter-spacing:-.045em!important;
    white-space:nowrap!important;text-wrap:nowrap!important;
  }
  html[lang="en"] .common-needs .section-head>p{
    flex:0 0 auto;max-width:none!important;font-size:13px!important;
    white-space:nowrap!important;text-wrap:nowrap!important;
  }
}
/* v51: French and Spanish direct-contact subheadings stay on one line */
html[lang="fr"] .contact-layout .contact-num+h2,
html[lang="es"] .contact-layout .contact-num+h2{
  font-size:clamp(16px,2.32vw,32px)!important;letter-spacing:-.035em!important;
  white-space:nowrap!important;text-wrap:nowrap!important;overflow-wrap:normal!important;
}


/* v53: footer Services links use the column-heading's lettering */
.footer-top>.footer-linkgroup:nth-child(2)>a{
  font-size:10px;font-weight:750;letter-spacing:.14em;color:#8a9ba5;
}
.footer-top>.footer-linkgroup:nth-child(2)>a:hover{color:#718995}
/* The primary pages share a 15px body-copy scale for both footer headings
   and links; this must win over the later-loaded body-copy.css stylesheet. */
body.core-text-unified .site-footer .footer-top>.footer-linkgroup:nth-child(2)>a{
  font-size:var(--inspelis-body-copy-size);line-height:var(--inspelis-body-copy-leading);
  font-weight:750;letter-spacing:.14em;color:#8a9ba5;
}
body.core-text-unified .site-footer .footer-top>.footer-linkgroup:nth-child(2)>a:hover{color:#718995}
/* v52: make the email in the final FAQ banner an accessible inline link */
.contact-banner .banner-inner>div:first-child>p>a[href^="mailto:"]{
  color:inherit;font-weight:650;text-decoration:underline;
  text-decoration-color:rgba(237,244,247,.6);text-underline-offset:.18em;
}


/* v57: two separate footer service links with an orbital CSS mark */
.site-footer .footer-top>div:first-child>p{margin-bottom:0!important}
.site-footer .footer-market-links{
  display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;
  align-items:center!important;gap:8px 18px!important;
  margin:0 0 14px!important;max-width:100%!important;
}
.site-footer .footer-market-links>a{
  display:inline-flex!important;align-items:center!important;gap:8px!important;
  color:#000!important;font-size:15px!important;font-weight:600!important;
  text-decoration:none!important;white-space:normal;
  transition:transform .22s ease,color .22s ease,border-color .22s ease,box-shadow .22s ease!important;
  transform:translateY(0);
}
.site-footer .footer-market-mark{
  position:relative;display:inline-block;flex:0 0 15px;
  width:15px;height:15px;border:1px solid currentColor;border-radius:50%;
  opacity:.78;background:radial-gradient(circle,currentColor 0 1.5px,transparent 2px);
}
.site-footer .footer-market-mark::before{
  content:"";position:absolute;inset:3px;border:1px solid currentColor;border-radius:50%;opacity:.65;
}
.site-footer .footer-market-mark::after{
  content:"";position:absolute;width:19px;height:1px;left:-3px;top:6px;
  background:currentColor;transform:rotate(-32deg);opacity:.52;
}
/* Four footer links: pure black and the same scale as the service links. */
.site-footer .footer-top>.footer-linkgroup:nth-child(2)>a{
  color:#000!important;font-size:15px!important;font-weight:400!important;
  letter-spacing:normal!important;line-height:1.8!important;
}
.site-footer .footer-top>.footer-linkgroup:nth-child(2)>a:hover{color:#294a59!important}
.market-chrome .site-footer .footer-top>div:first-child>p{margin-bottom:0!important}
.market-chrome .site-footer .footer-market-links>a{
  color:#000!important;font-size:16px!important;font-weight:400!important;
}
.market-chrome .site-footer .footer-top>.footer-linkgroup:nth-child(2)>a{
  color:#000!important;font-size:16px!important;font-weight:400!important;
  letter-spacing:normal!important;line-height:1.68!important;
}
.market-chrome .site-footer .footer-top>.footer-linkgroup:nth-child(2)>a:hover{color:#294a59!important}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
  .site-footer .footer-market-links>a:hover{
    transform:translateY(-3px)!important;box-shadow:0 6px 10px -12px rgba(25,56,73,.25);
  }
}
@media(prefers-reduced-motion:reduce){
  .site-footer .footer-market-links>a{transition:none!important;transform:none!important}
}


/* v58: black footer links fade to the same grey as Free Contact */
.site-footer .footer-top>.footer-linkgroup:nth-child(2)>a{
  transition:color .2s ease!important;
}
.site-footer .footer-top>.footer-linkgroup:nth-child(2)>a:hover{
  color:#718995!important;
}
.market-chrome .site-footer .footer-top>.footer-linkgroup:nth-child(2)>a:hover{
  color:#718995!important;
}


/* v59: refined CSS data-matrix and growth-bars footer marks */
.site-footer .footer-market-mark{
  width:16px!important;height:16px!important;flex-basis:16px!important;
  border:0!important;border-radius:0!important;opacity:.62!important;
  background:
    linear-gradient(currentColor,currentColor) 1px 1px/5px 5px no-repeat,
    linear-gradient(currentColor,currentColor) 10px 1px/5px 5px no-repeat,
    linear-gradient(currentColor,currentColor) 1px 10px/5px 5px no-repeat,
    linear-gradient(currentColor,currentColor) 10px 10px/5px 5px no-repeat!important;
}
.site-footer .footer-market-links>a:nth-child(2) .footer-market-mark{
  background:
    linear-gradient(currentColor,currentColor) 1px 11px/3px 5px no-repeat,
    linear-gradient(currentColor,currentColor) 7px 7px/3px 9px no-repeat,
    linear-gradient(currentColor,currentColor) 13px 2px/3px 14px no-repeat!important;
}
.site-footer .footer-market-mark::before,
.site-footer .footer-market-mark::after{content:none!important;display:none!important}


/* v60: two footer market shortcuts and inline email fade to grey on hover */
.site-footer .footer-market-links>a:hover{
  color:#718995!important;border-bottom-color:#718995!important;
}
.contact-banner .banner-inner>div:first-child>p>a[href^="mailto:"]{
  transition:color .2s ease,text-decoration-color .2s ease!important;
}
.contact-banner .banner-inner>div:first-child>p>a[href^="mailto:"]:hover{
  color:#b8c8d0!important;text-decoration-color:#b8c8d0!important;
}

/* v67: reallocated Chinese Canada business scopes */
.translated-detail .crossborder-scope{margin:38px 0 28px;padding:27px 30px;border:1px solid #dce1e4;border-radius:12px;background:#f6f7f7;color:#151515}
.translated-detail .crossborder-scope h2{margin-top:0}
.translated-detail .crossborder-scope h3{margin:18px 0 12px}
.translated-detail .crossborder-scope .section-note{margin:15px 0 0;font-size:13px;color:#465158}
@media(max-width:640px){.translated-detail .crossborder-scope{margin:26px 0;padding:20px 18px}}

/* v81: clear written mandate and conflicts-of-interest disclosure */
.inspelis-engagement-policy{box-sizing:border-box;margin:28px auto 32px;padding:18px 22px;background:#f2f4f5;border:1px solid #d9e0e4}
.inspelis-engagement-policy h2{margin:0 0 7px;font-size:16px;line-height:1.5;font-weight:750}
.inspelis-engagement-policy p{margin:0;font-size:14px;line-height:1.8}
@media(max-width:640px){.inspelis-engagement-policy{margin-top:20px;margin-bottom:24px;padding:15px 16px}.inspelis-engagement-policy h2{font-size:15px}.inspelis-engagement-policy p{font-size:13px}}

/* Inspelis v106: Arabic mobile header and switch readability */
@media screen and (max-width: 767px) {
  html[lang="ar"] .site-header .header-inner { gap: 4px !important; }
  html[lang="ar"] .site-header .brand .wordmark-shape { transform-origin: right top !important; }
  html[lang="ar"] .site-header .mobile-controls { display: flex !important; align-items: center !important; gap: 4px !important; flex: 0 0 auto !important; }
  html[lang="ar"] .site-header .mobile-zh-link { font-size: 15px !important; }
  html[lang="ar"] .site-header .mobile-language-toggle { font-size: 15px !important; padding: 5px 8px !important; }
  html[lang="ar"] .site-header .mobile-menu-toggle {
    position: static !important; inset: auto !important; left: auto !important; right: auto !important; top: auto !important;
    transform: none !important; flex: 0 0 auto !important; width: auto !important; min-width: 64px !important;
    max-width: none !important; height: auto !important; min-height: 40px !important; padding: 6px 8px !important;
    font-size: 14px !important; white-space: nowrap !important; overflow: visible !important; text-overflow: clip !important;
  }
  html[lang="ar"] .market-service-switch a,
  html[lang="ar"] .market-service-switch .market-switch-label--mobile {
    font-size: clamp(12px, 3.45vw, 14px) !important; line-height: 1.5 !important;
    white-space: normal !important; overflow-wrap: anywhere !important; text-align: center !important;
  }
  html[lang="ar"] .market-service-switch a {
    min-height: 64px !important; height: auto !important; padding: 10px 8px !important;
    align-items: center !important; justify-content: center !important;
  }
}
@media screen and (max-width: 359px) {
  html[lang="ar"] .site-header .header-inner { gap: 0 !important; }
  html[lang="ar"] .site-header .mobile-menu-toggle {
    display: flex !important; align-items: center !important; justify-content: center !important;
    width: 40px !important; min-width: 40px !important; height: 40px !important;
    padding: 4px !important; font-size: 0 !important; overflow: hidden !important;
  }
  html[lang="ar"] .site-header .mobile-menu-toggle::before {
    content: "☰"; display: block; font-size: 22px; line-height: 1; color: #243744;
  }
}
