:root{--ink:#1a1a1a;--ink-soft:#2c2c2a;--vermilion:#b71c1c;--vermilion-jp:#a81e14;--vermilion-deep:#8e1414;--rice:#f8f5ee;--rice-jp:#f9f7f1;--rice-warm:#f2ede0;--gray-light:#e8e4da;--gray-line:#dcd8cd;--gray-mid:#b4b2a9;--gray-dark:#5f5e5a;--font-stack-cn:"Noto Serif SC","Source Han Serif SC","Songti SC",serif;--font-stack-cn-sans:"Noto Sans SC","Source Han Sans SC","PingFang SC",-apple-system,sans-serif;--font-stack-jp:"Noto Serif JP","Hiragino Mincho ProN","Yu Mincho",serif;--font-stack-jp-sans:"Noto Sans JP","Hiragino Sans","Yu Gothic",sans-serif;--font-stack-hk:"Noto Serif HK","PingFang HK",serif;--font-stack-hk-sans:"Noto Sans HK","PingFang HK",sans-serif;--font-stack-en:"Source Serif 4",Georgia,serif;--font-stack-en-sans:"Inter",-apple-system,sans-serif;--font-stack-italic:"EB Garamond",Georgia,serif}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}body{background:var(--rice);color:var(--ink);font-size:16px;line-height:1.7;font-weight:400}a{color:inherit}img,svg{display:block;max-width:100%}.container{max-width:1200px;margin:0 auto;padding:0 32px}.container-narrow{max-width:1100px;margin:0 auto;padding:0 40px}[data-locale=zh] body{font-family:var(--font-stack-cn-sans);font-size:16px;line-height:1.7}[data-locale=zh] .serif{font-family:var(--font-stack-cn)}[data-locale=zh-Hant] body{font-family:var(--font-stack-hk-sans);font-size:16px;line-height:1.75}[data-locale=zh-Hant] .serif{font-family:var(--font-stack-hk)}[data-locale=ja] body{font-size:15px;line-height:1.95}[data-locale=ja] .serif,[data-locale=ja] body{font-family:var(--font-stack-jp)}[data-locale=en] body{font-family:var(--font-stack-en-sans);font-size:15px;line-height:1.7}[data-locale=en] .serif{font-family:var(--font-stack-en)}.brand-mark{display:inline-flex;align-items:center;gap:14px;text-decoration:none;color:var(--ink)}.seal{width:42px;height:42px;flex-shrink:0;background:var(--vermilion);border-radius:3px;color:#fff;display:grid;place-items:center;text-align:center;padding:0;grid-gap:0;gap:0;line-height:1;font-weight:600;letter-spacing:0;font-family:"Noto Serif JP","Noto Serif SC",Hiragino Mincho ProN,Yu Mincho,Songti SC,serif}.seal[data-seal-locale=zh]{font-family:"Noto Serif SC","Source Han Serif SC",Songti SC,"Noto Serif JP",serif}.seal[data-seal-locale=zh-Hant]{font-family:"Noto Serif HK","Noto Serif TC","Source Han Serif TC",Songti SC,"Noto Serif JP",serif}.seal[data-seal-locale=ja]{font-family:"Noto Serif JP",Hiragino Mincho ProN,Yu Mincho,serif}.seal[data-seal-locale=en]{font-family:"Source Serif 4",EB Garamond,Georgia,serif}.brand-text{display:flex;flex-direction:column;line-height:1.05}.brand-name-line{display:inline-flex;align-items:baseline;gap:8px}.brand-text-cjk{font-family:var(--font-stack-jp);font-size:18px;font-weight:500;letter-spacing:.06em}[data-locale=zh] .brand-text-cjk{font-family:var(--font-stack-cn)}[data-locale=zh-Hant] .brand-text-cjk{font-family:var(--font-stack-hk)}[data-locale=en] .brand-text-cjk{font-family:var(--font-stack-en);letter-spacing:.04em}.brand-text-tagline{font-size:12px;color:var(--gray-dark);letter-spacing:.05em;font-weight:400}[data-locale=zh-Hant] .brand-text-tagline,[data-locale=zh] .brand-text-tagline{font-family:var(--font-stack-cn-sans)}[data-locale=ja] .brand-text-tagline{font-family:var(--font-stack-jp-sans)}[data-locale=en] .brand-text-tagline{font-family:var(--font-stack-en-sans);font-style:italic;letter-spacing:.08em}.brand-text-roman{font-family:var(--font-stack-italic);font-size:11px;font-style:italic;color:var(--gray-dark);letter-spacing:.12em;margin-top:2px;text-transform:uppercase}header.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:hsla(42,42%,95%,.86);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:.5px solid var(--gray-light)}[data-locale=en] header.site-header,[data-locale=ja] header.site-header{background:hsla(45,40%,96%,.92);border-bottom-color:var(--gray-line)}.site-header .nav{justify-content:space-between;padding:16px 0}.nav-menu,.site-header .nav{display:flex;align-items:center}.nav-menu{gap:36px}.nav-menu a{text-decoration:none;color:var(--ink);font-size:14px;transition:color .2s}[data-locale=ja] .nav-menu a{font-family:var(--font-stack-jp);font-size:13px;letter-spacing:.08em}[data-locale=en] .nav-menu a{font-size:13px;letter-spacing:.04em}.nav-menu a:hover{color:var(--vermilion)}.nav-actions{display:flex;gap:20px;align-items:center}.lang-switch{font-size:13px;display:flex;gap:10px;color:var(--gray-mid);font-family:var(--font-stack-italic);letter-spacing:.1em}.lang-switch a{text-decoration:none;transition:color .2s;color:var(--gray-mid)}.lang-switch a.active{color:var(--ink);font-weight:500}.lang-switch a:hover{color:var(--vermilion)}.locale-switcher{position:relative;display:inline-block}.locale-switcher-trigger{background:transparent;border:.5px solid rgba(0,0,0,.18);color:var(--ink);font-size:12px;letter-spacing:.06em;cursor:pointer;padding:6px 12px;display:inline-flex;align-items:center;gap:8px;font-family:var(--font-stack-italic);border-radius:2px;transition:border-color .2s,color .2s}.locale-switcher-trigger:hover{border-color:var(--ink);color:var(--vermilion)}.locale-switcher-caret{font-size:9px;line-height:1}.locale-switcher-menu{position:absolute;top:calc(100% + 6px);right:0;background:var(--rice,#fbfaf7);border:.5px solid rgba(0,0,0,.12);list-style:none;padding:4px 0;margin:0;min-width:132px;z-index:100;box-shadow:0 6px 20px rgba(0,0,0,.08);border-radius:2px}.locale-switcher-menu li{padding:0;margin:0}.locale-switcher-menu button{width:100%;text-align:left;background:transparent;border:none;padding:8px 16px;font-size:12px;color:var(--ink);cursor:pointer;letter-spacing:.06em;font-family:inherit}.locale-switcher-menu button:hover{background:rgba(0,0,0,.04);color:var(--vermilion)}.locale-switcher-menu button.active{background:rgba(0,0,0,.04);font-weight:500}.btn-primary{background:var(--ink);color:var(--rice);padding:11px 22px;border-radius:2px;text-decoration:none;font-size:14px;transition:background .2s;display:inline-flex;align-items:center;gap:8px;border:.5px solid var(--ink);cursor:pointer}.btn-primary:hover{background:var(--vermilion);border-color:var(--vermilion)}.btn-outline{background:transparent;color:var(--ink);padding:11px 22px;border:.5px solid var(--ink);border-radius:2px;text-decoration:none;font-size:14px;transition:all .2s;display:inline-flex;align-items:center;gap:8px;cursor:pointer}.btn-outline:hover{background:var(--ink);color:var(--rice)}[data-locale=ja] .btn-outline,[data-locale=ja] .btn-primary{font-family:var(--font-stack-jp);font-size:13px;letter-spacing:.08em;padding:10px 22px;border-radius:1px}.hero{padding:100px 0 130px;position:relative;overflow:hidden}[data-locale=en] .hero,[data-locale=ja] .hero{padding:140px 0 160px}.hero:before{content:"";position:absolute;right:-120px;top:80px;width:460px;height:460px;background:var(--vermilion);border-radius:4px;opacity:.04;transform:rotate(-3deg);pointer-events:none}[data-locale=en] .hero:before,[data-locale=ja] .hero:before{display:none}.hero-content{max-width:760px;position:relative;z-index:1}.hero-eyebrow{font-family:var(--font-stack-italic);font-style:italic;font-size:15px;color:var(--vermilion);margin-bottom:28px;letter-spacing:.06em}[data-locale=en] .hero-eyebrow,[data-locale=ja] .hero-eyebrow{font-size:13px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:36px}.hero h1{font-family:var(--font-stack-cn);font-size:52px;font-weight:500;line-height:1.32;margin-bottom:32px;letter-spacing:-.005em;color:var(--ink)}[data-locale=zh-Hant] .hero h1{font-family:var(--font-stack-hk)}[data-locale=ja] .hero h1{font-family:var(--font-stack-jp);font-size:44px;line-height:1.55;letter-spacing:.06em;margin-bottom:36px}[data-locale=en] .hero h1{font-family:var(--font-stack-en);font-size:56px;line-height:1.18;letter-spacing:-.015em;margin-bottom:36px}.hero h1 .accent{color:var(--vermilion)}[data-locale=en] .hero h1 .accent{font-style:italic;font-family:var(--font-stack-italic);font-weight:400}.hero-sub{font-size:18px;color:var(--gray-dark);margin-bottom:44px;line-height:1.85;max-width:600px;font-weight:400}[data-locale=ja] .hero-sub{font-size:16px;color:var(--ink-soft);line-height:2.05;max-width:640px;letter-spacing:.04em;margin-bottom:48px}[data-locale=en] .hero-sub{font-size:17px;color:var(--ink-soft);line-height:1.75;max-width:680px;margin-bottom:48px}.hero-cta{display:flex;gap:14px;flex-wrap:wrap}.trust-strip{padding:38px 0;background:#fff;border-top:.5px solid var(--gray-light);border-bottom:.5px solid var(--gray-light)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:32px;gap:32px;align-items:center}.trust-item{text-align:center}.trust-num{font-family:var(--font-stack-cn);font-size:22px;color:var(--ink);font-weight:500;line-height:1.2}[data-locale=zh-Hant] .trust-num{font-family:var(--font-stack-hk)}.trust-num .accent{color:var(--vermilion)}.trust-label{font-size:12px;color:var(--gray-dark);margin-top:8px;letter-spacing:.02em}section.s{padding:44px 0}[data-locale=en] section.s,[data-locale=ja] section.s{padding:52px 0;border-top:.5px solid var(--gray-line)}[data-locale=en] section.s.no-border,[data-locale=ja] section.s.no-border{border-top:none}.section-eyebrow{font-family:var(--font-stack-italic);font-style:italic;font-size:14px;color:var(--vermilion);letter-spacing:.06em;margin-bottom:18px}[data-locale=en] .section-eyebrow,[data-locale=ja] .section-eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:24px}.section-title{font-family:var(--font-stack-cn);font-size:38px;font-weight:500;margin-bottom:18px;line-height:1.32;letter-spacing:-.005em}[data-locale=zh-Hant] .section-title{font-family:var(--font-stack-hk)}[data-locale=ja] .section-title{font-family:var(--font-stack-jp);font-size:32px;line-height:1.55;letter-spacing:.08em;margin-bottom:24px}[data-locale=en] .section-title{font-family:var(--font-stack-en);font-size:38px;line-height:1.25;letter-spacing:-.01em;margin-bottom:24px}.section-lead{font-size:17px;color:var(--gray-dark);max-width:720px;margin-bottom:60px;line-height:1.85}[data-locale=ja] .section-lead{font-size:15px;color:var(--ink-soft);line-height:2.05;max-width:720px;letter-spacing:.04em;margin-bottom:80px}[data-locale=en] .section-lead{font-size:16px;color:var(--ink-soft);line-height:1.75;max-width:680px;margin-bottom:80px}.services-cn{background:#fff}.services-cn .grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:32px;gap:32px}.svc-card{padding:44px 36px;background:var(--rice);border-radius:4px;transition:transform .3s}.svc-card:hover{transform:translateY(-4px)}.svc-tag{display:inline-block;font-family:var(--font-stack-italic);font-size:11px;padding:5px 12px;background:#fff;border:.5px solid var(--gray-light);border-radius:2px;color:var(--gray-dark);margin-bottom:24px;letter-spacing:.08em}.svc-card.featured .svc-tag{background:var(--vermilion);color:#fff;border-color:var(--vermilion)}.svc-card h3{font-family:var(--font-stack-cn);font-size:28px;font-weight:500;margin-bottom:16px;line-height:1.35}[data-locale=zh-Hant] .svc-card h3{font-family:var(--font-stack-hk)}.svc-card-desc{color:var(--gray-dark);font-size:15px;margin-bottom:28px;line-height:1.8}.svc-list{list-style:none}.svc-list li{padding:13px 0;border-bottom:.5px solid var(--gray-light);display:flex;align-items:start;gap:12px;font-size:15px;line-height:1.6}.svc-list li:last-child{border-bottom:none}.svc-list li:before{content:"";width:4px;height:4px;background:var(--vermilion);border-radius:50%;margin-top:11px;flex-shrink:0}.svc-card-link{display:inline-block;margin-top:24px;font-size:14px;color:var(--vermilion);text-decoration:none;font-weight:500;transition:color .2s}.svc-card-link:hover{color:var(--vermilion-deep)}.svc-row-link{display:inline-block;margin-top:18px;font-family:var(--font-stack-italic);font-style:italic;font-size:13px;color:var(--vermilion);text-decoration:none;letter-spacing:.06em;transition:color .2s}.svc-row-link:hover{color:var(--vermilion-deep)}.services-row{background:var(--rice-jp)}.svc-rows{display:flex;flex-direction:column}.svc-row{display:grid;grid-template-columns:200px 1fr;grid-gap:60px;gap:60px;padding:40px 0;border-top:.5px solid var(--gray-line);align-items:start}.svc-row:last-child{border-bottom:.5px solid var(--gray-line)}.svc-num{font-family:var(--font-stack-italic);font-style:italic;font-size:16px;color:var(--vermilion);letter-spacing:.1em}.svc-num span{display:block;font-style:normal;font-size:22px;color:var(--ink);margin-top:12px;letter-spacing:.1em;font-weight:500;line-height:1.3}[data-locale=ja] .svc-num span{font-family:var(--font-stack-jp);letter-spacing:.1em}[data-locale=en] .svc-num span{font-family:var(--font-stack-en);letter-spacing:-.01em}.svc-content p{font-size:14px;color:var(--ink-soft);line-height:2;margin-bottom:16px;letter-spacing:.04em}[data-locale=en] .svc-content p{font-size:15px;line-height:1.75;letter-spacing:0}.svc-content ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;grid-gap:8px 32px;gap:8px 32px;margin-top:12px}.svc-content li{font-size:13px;color:var(--gray-dark);padding-left:16px;position:relative;line-height:1.85;letter-spacing:.04em}.svc-content li:before{content:"—";position:absolute;left:0;color:var(--vermilion)}.team-cn{background:var(--rice)}.team-cn .grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:32px;gap:32px}.team-card{background:#fff;padding:44px 40px;border:.5px solid var(--gray-light);border-radius:4px}.team-seal{width:88px;height:88px;background:var(--vermilion);color:#fff;font-family:var(--font-stack-jp);font-size:30px;font-weight:500;border-radius:3px;margin-bottom:28px;display:flex;align-items:center;justify-content:center}.team-name{font-family:var(--font-stack-cn);font-size:24px;font-weight:500;margin-bottom:4px;letter-spacing:.05em}[data-locale=zh-Hant] .team-name{font-family:var(--font-stack-hk)}.team-title{font-size:14px;color:var(--vermilion);margin-bottom:22px;font-family:var(--font-stack-italic);font-style:italic}.team-bio{font-size:15px;color:var(--gray-dark);line-height:1.85}.team-creds{margin-top:22px;padding-top:22px;border-top:.5px solid var(--gray-light);display:flex;gap:8px;flex-wrap:wrap}.team-creds span{font-size:12px;padding:5px 12px;background:var(--rice);border-radius:2px;color:var(--ink-soft)}.taisei{background:#fff}.taisei .grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1px;gap:1px;background:var(--gray-line);border:.5px solid var(--gray-line)}.taisei-card{padding:56px 44px;background:#fff}.taisei-card .label{font-family:var(--font-stack-italic);font-style:italic;font-size:11px;color:var(--vermilion);letter-spacing:.18em;margin-bottom:18px;text-transform:uppercase}.taisei-card h4{font-size:22px;font-weight:500;margin-bottom:24px;letter-spacing:.08em;line-height:1.5}[data-locale=ja] .taisei-card h4{font-family:var(--font-stack-jp)}[data-locale=en] .taisei-card h4{font-family:var(--font-stack-en);letter-spacing:-.005em;line-height:1.35}.taisei-card p{font-size:14px;color:var(--ink-soft);line-height:2;margin-bottom:20px;letter-spacing:.04em}[data-locale=en] .taisei-card p{font-size:15px;line-height:1.8;letter-spacing:0}.taisei-card .creds{display:flex;flex-wrap:wrap;gap:8px;padding-top:20px;border-top:.5px solid var(--gray-line)}.taisei-card .creds span{font-size:11px;padding:4px 12px;background:var(--rice);color:var(--ink-soft);letter-spacing:.04em;border-radius:1px}.process{background:#fff}.process-grid{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:8px;gap:8px}.process-step{padding:32px 18px;text-align:center}.process-step:not(:last-child):after{content:"";position:absolute;right:-4px;top:60px;width:8px;height:.5px;background:var(--vermilion)}.process-num{font-family:var(--font-stack-italic);font-style:italic;font-size:28px;margin-bottom:14px;line-height:1}.process-name{font-family:var(--font-stack-cn);font-size:18px;font-weight:500;margin-bottom:10px}[data-locale=zh-Hant] .process-name{font-family:var(--font-stack-hk)}.process-desc{font-size:13px;color:var(--gray-dark);line-height:1.7}.cases{background:var(--ink)}.cases,.cases .section-title{color:var(--rice)}.cases .section-lead{color:var(--gray-mid)}[data-locale=en] .cases .section-eyebrow,[data-locale=ja] .cases .section-eyebrow{color:#e8a0a0}.cases-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px}.case-card{padding:36px 28px;background:hsla(0,0%,100%,.04);border:.5px solid hsla(0,0%,100%,.12);border-radius:4px;transition:background .3s}.case-card:hover{background:hsla(0,0%,100%,.07)}.case-tag{display:inline-block;font-size:11px;padding:4px 12px;background:var(--vermilion);color:#fff;border-radius:2px;margin-bottom:18px;letter-spacing:.08em;font-family:var(--font-stack-italic)}.case-card h4{font-family:var(--font-stack-cn);font-size:20px;font-weight:500;margin-bottom:14px;line-height:1.45;color:var(--rice)}[data-locale=zh-Hant] .case-card h4{font-family:var(--font-stack-hk)}[data-locale=ja] .case-card h4{font-family:var(--font-stack-jp)}[data-locale=en] .case-card h4{font-family:var(--font-stack-en)}.case-card p{font-size:14px;color:var(--gray-mid);line-height:1.8}.cases-rows{display:flex;flex-direction:column}.case-row{padding:36px 0;border-top:.5px solid hsla(0,0%,100%,.12);display:grid;grid-template-columns:180px 1fr;grid-gap:48px;gap:48px;align-items:start}.case-row:last-child{border-bottom:.5px solid hsla(0,0%,100%,.12)}.case-cat{font-family:var(--font-stack-italic);font-style:italic;font-size:12px;color:#e8a0a0;letter-spacing:.18em;text-transform:uppercase;padding-top:4px}.case-cat span{display:block;font-style:normal;font-size:14px;color:var(--rice);margin-top:8px;letter-spacing:.08em}[data-locale=ja] .case-cat span{font-family:var(--font-stack-jp)}[data-locale=en] .case-cat span{font-family:var(--font-stack-en);letter-spacing:0;font-weight:500}.gaiyou{background:var(--rice)}.gaiyou-table{width:100%;border-top:.5px solid var(--gray-line)}.gaiyou-table tr{border-bottom:.5px solid var(--gray-line)}.gaiyou-table th{width:220px;padding:24px 24px 24px 0;text-align:left;vertical-align:top;font-size:13px;font-weight:500;color:var(--ink);letter-spacing:.08em}[data-locale=ja] .gaiyou-table th{font-family:var(--font-stack-jp)}[data-locale=en] .gaiyou-table th{font-family:var(--font-stack-italic);font-weight:400;font-style:italic;color:var(--vermilion);letter-spacing:.08em;text-transform:uppercase}.gaiyou-table td{padding:24px 0 24px 24px;vertical-align:top;font-size:14px;color:var(--ink-soft);line-height:1.9;letter-spacing:.04em}[data-locale=en] .gaiyou-table td{font-size:15px;line-height:1.75;letter-spacing:0}.gaiyou-note{font-size:11px;color:var(--gray-dark);margin-top:24px;line-height:1.8;letter-spacing:.04em}[data-locale=en] .gaiyou-note{font-style:italic;font-family:var(--font-stack-italic);font-size:12px}.cta-section{background:var(--rice);padding:44px 0}[data-locale=en] .cta-section,[data-locale=ja] .cta-section{background:#fff;padding:52px 0}.cta-box-cn{background:#fff;border:.5px solid var(--gray-light);padding:72px 56px;text-align:center;border-radius:4px}.cta-box-cn .eyebrow{font-family:var(--font-stack-italic);font-style:italic;font-size:14px;color:var(--vermilion);margin-bottom:18px;letter-spacing:.06em}.cta-box-cn h2{font-family:var(--font-stack-cn);font-size:38px;font-weight:500;margin-bottom:22px;line-height:1.35}[data-locale=zh-Hant] .cta-box-cn h2{font-family:var(--font-stack-hk)}.cta-box-cn p{font-size:16px;color:var(--gray-dark);margin-bottom:36px;max-width:580px;margin-left:auto;margin-right:auto;line-height:1.85}.cta-inner-jp{max-width:720px;margin:0 auto;text-align:center}.cta-inner-jp .eyebrow{font-family:var(--font-stack-italic);font-style:italic;font-size:13px;color:var(--vermilion);margin-bottom:24px;letter-spacing:.18em;text-transform:uppercase}.cta-inner-jp h2{font-size:32px;font-weight:500;margin-bottom:28px;line-height:1.55;letter-spacing:.08em}[data-locale=ja] .cta-inner-jp h2{font-family:var(--font-stack-jp)}[data-locale=en] .cta-inner-jp h2{font-family:var(--font-stack-en);font-size:38px;line-height:1.25;letter-spacing:-.01em}.cta-inner-jp p{font-size:15px;color:var(--ink-soft);margin-bottom:44px;line-height:2;letter-spacing:.04em}[data-locale=en] .cta-inner-jp p{font-size:16px;line-height:1.75;letter-spacing:0}.cta-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.contact-info{margin-top:48px;padding-top:36px;border-top:.5px solid var(--gray-line);display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px;font-size:13px;color:var(--gray-dark);text-align:left}.contact-info>div{line-height:1.85;letter-spacing:.04em}.contact-info strong{display:block;font-weight:500;color:var(--ink);margin-bottom:6px;font-size:11px;letter-spacing:.1em;text-transform:uppercase}footer.site-footer{background:var(--ink);color:var(--rice);padding:64px 0 32px}[data-locale=en] footer.site-footer,[data-locale=ja] footer.site-footer{padding:48px 0 32px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;grid-gap:56px;gap:56px;margin-bottom:48px}[data-locale=ja] .footer-grid{grid-template-columns:2fr 1fr 1fr 1.2fr}footer .brand-mark,footer .brand-text-cjk{color:var(--rice)}.footer-brand-text,footer .brand-text-roman{color:var(--gray-mid)}.footer-brand-text{font-size:14px;line-height:1.85;margin-top:20px;max-width:380px}.footer-subbrands{margin-top:24px;max-width:380px}.footer-subbrands h6{font-size:11px;font-weight:400;color:var(--gray-mid);letter-spacing:.15em;text-transform:uppercase;margin-bottom:12px;font-family:var(--font-stack-italic);font-style:italic}.footer-subbrands ul{list-style:none;padding:0;margin:0}.footer-subbrands li{margin-bottom:8px}.footer-subbrands a{display:inline-flex;align-items:baseline;color:var(--gray-mid);text-decoration:none;font-size:13px;transition:color .2s}.footer-subbrands a:hover{color:var(--rice)}.footer-subbrands .sb-name{font-weight:500;color:var(--rice)}.footer-subbrands .sb-tagline{color:var(--gray-mid)}.footer-subbrands .sb-arrow{color:var(--vermilion);margin-left:2px}.footer-col h5{font-size:14px;font-weight:500;margin-bottom:22px;color:var(--rice);letter-spacing:.05em}[data-locale=ja] .footer-col h5{font-family:var(--font-stack-jp);font-size:13px;letter-spacing:.1em}[data-locale=en] .footer-col h5{font-family:var(--font-stack-italic);font-style:italic;font-size:12px;font-weight:400;letter-spacing:.18em;text-transform:uppercase}.footer-col ul{list-style:none}.footer-col li{margin-bottom:10px;font-size:14px;color:var(--gray-mid);line-height:1.7}.footer-col a{color:var(--gray-mid);text-decoration:none;transition:color .2s}.footer-col a:hover{color:var(--rice)}.footer-bottom{padding-top:32px;border-top:.5px solid hsla(0,0%,100%,.1);display:flex;justify-content:space-between;font-size:13px;color:var(--gray-mid)}[data-locale=en] .footer-bottom,[data-locale=ja] .footer-bottom{font-family:var(--font-stack-italic);font-size:11px;font-style:italic;letter-spacing:.1em}.footer-bottom a{color:var(--gray-mid);text-decoration:none}.detail-intro{background:#fff}.detail-intro-body{max-width:760px}.detail-intro-body p{font-size:17px;color:var(--gray-dark);line-height:1.85;margin-bottom:22px}[data-locale=ja] .detail-intro-body p{font-size:15px;color:var(--ink-soft);line-height:2.05;letter-spacing:.04em}[data-locale=en] .detail-intro-body p{font-size:16px;color:var(--ink-soft);line-height:1.75}.detail-modules{background:var(--rice)}.detail-modules-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:24px;gap:24px}.detail-module-card{background:#fff;padding:36px 32px;border-radius:4px;border:.5px solid var(--gray-light);transition:transform .3s}.detail-module-card:hover{transform:translateY(-3px)}.detail-module-tag{display:inline-block;font-family:var(--font-stack-italic);font-size:11px;padding:4px 10px;background:var(--rice);border-radius:2px;color:var(--vermilion);margin-bottom:18px;letter-spacing:.08em}.detail-module-card h3{font-family:var(--font-stack-cn);font-size:22px;font-weight:500;margin-bottom:14px;line-height:1.4}[data-locale=zh-Hant] .detail-module-card h3{font-family:var(--font-stack-hk)}[data-locale=ja] .detail-module-card h3{font-family:var(--font-stack-jp);font-size:20px;line-height:1.5;letter-spacing:.06em}[data-locale=en] .detail-module-card h3{font-family:var(--font-stack-en);font-size:22px;line-height:1.35;letter-spacing:-.005em}.detail-module-desc{color:var(--gray-dark);font-size:14px;margin-bottom:20px;line-height:1.8}.detail-module-card ul{list-style:none}.detail-module-card li{font-size:13px;color:var(--ink-soft);padding:8px 0 8px 16px;position:relative;line-height:1.7}.detail-module-card li:before{content:"";width:4px;height:4px;background:var(--vermilion);border-radius:50%;position:absolute;left:0;top:14px}.detail-who{background:#fff}.detail-who-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px}.detail-who-card{padding:32px 28px;background:var(--rice);border-left:2px solid var(--vermilion);border-radius:0}.detail-who-card h4{font-family:var(--font-stack-cn);font-size:18px;font-weight:500;margin-bottom:12px;line-height:1.4}[data-locale=zh-Hant] .detail-who-card h4{font-family:var(--font-stack-hk)}[data-locale=ja] .detail-who-card h4{font-family:var(--font-stack-jp);letter-spacing:.06em}[data-locale=en] .detail-who-card h4{font-family:var(--font-stack-en);letter-spacing:-.005em}.detail-who-card p{color:var(--gray-dark);font-size:14px;line-height:1.85}.detail-faq{background:var(--rice)}.detail-faq-list{max-width:860px}.detail-faq-item{border-bottom:.5px solid var(--gray-light)}.detail-faq-item summary{padding:24px 0;font-size:16px;font-weight:500;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:24px;list-style:none;color:var(--ink)}[data-locale=ja] .detail-faq-item summary{font-family:var(--font-stack-jp);font-size:15px;letter-spacing:.04em}[data-locale=en] .detail-faq-item summary{font-size:16px}.detail-faq-item summary::-webkit-details-marker{display:none}.detail-faq-item summary:after{content:"+";font-size:20px;color:var(--vermilion);font-weight:400;transition:transform .2s}.detail-faq-item[open] summary:after{content:"−"}.detail-faq-answer{padding:0 0 24px;color:var(--gray-dark);font-size:15px;line-height:1.85;max-width:760px}[data-locale=ja] .detail-faq-answer{font-size:14px;line-height:2;letter-spacing:.04em}.generic-page{background:#fff;padding:40px 0 48px}.generic-body{max-width:760px}.generic-body h2{font-family:var(--font-stack-cn);font-size:28px;font-weight:500;margin:56px 0 18px;line-height:1.4;letter-spacing:-.005em}[data-locale=zh-Hant] .generic-body h2{font-family:var(--font-stack-hk)}[data-locale=ja] .generic-body h2{font-family:var(--font-stack-jp);font-size:24px;letter-spacing:.06em}[data-locale=en] .generic-body h2{font-family:var(--font-stack-en);font-size:28px;letter-spacing:-.01em}.generic-body h2:first-child{margin-top:0}.generic-body h3{font-family:var(--font-stack-cn);font-size:19px;font-weight:500;margin:36px 0 12px;line-height:1.5}[data-locale=zh-Hant] .generic-body h3{font-family:var(--font-stack-hk)}[data-locale=ja] .generic-body h3{font-family:var(--font-stack-jp)}[data-locale=en] .generic-body h3{font-family:var(--font-stack-en)}.generic-body p{font-size:16px;color:var(--ink-soft);line-height:1.85;margin-bottom:18px}[data-locale=ja] .generic-body p{font-size:15px;line-height:2.05;letter-spacing:.04em}.generic-body ol,.generic-body ul{margin:0 0 22px 4px;padding-left:22px}.generic-body li{font-size:16px;color:var(--ink-soft);padding:5px 0;line-height:1.75}[data-locale=ja] .generic-body li{font-size:15px;line-height:2;letter-spacing:.04em}.generic-body a{color:var(--vermilion);text-decoration:underline;text-decoration-thickness:.5px;text-underline-offset:3px}.generic-table{width:100%;border-top:.5px solid var(--gray-light);margin-bottom:32px}.generic-table tr{border-bottom:.5px solid var(--gray-light)}.generic-table th{width:200px;padding:18px 20px 18px 0;text-align:left;vertical-align:top;font-size:13px;font-weight:500;color:var(--ink);letter-spacing:.05em}[data-locale=ja] .generic-table th{font-family:var(--font-stack-jp);font-size:13px}[data-locale=en] .generic-table th{font-family:var(--font-stack-italic);font-style:italic;font-weight:400;color:var(--vermilion);letter-spacing:.08em;text-transform:uppercase}.generic-table td{padding:18px 0 18px 20px;vertical-align:top;line-height:1.8}.callout,.generic-table td{font-size:15px;color:var(--ink-soft)}.callout{background:var(--rice);border-left:3px solid var(--vermilion);padding:20px 24px;margin:28px 0;line-height:1.75}.spacer{height:24px}.contact-form{display:flex;flex-direction:column;gap:18px;max-width:720px}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px;gap:18px}.contact-form label{display:flex;flex-direction:column;gap:8px;font-size:13px;color:var(--ink)}.contact-form label span{font-weight:500;letter-spacing:.02em}.contact-form input,.contact-form select,.contact-form textarea{padding:12px 14px;border:.5px solid var(--gray-light);border-radius:2px;font-size:15px;font-family:inherit;color:var(--ink);background:#fff;transition:border-color .2s}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:none;border-color:var(--ink)}.contact-form textarea{resize:vertical;min-height:120px;line-height:1.6}.form-full{width:100%}.form-submit{align-self:flex-start;margin-top:8px;cursor:pointer;padding:14px 28px}.form-privacy{font-size:12px;color:var(--gray-dark);line-height:1.6;margin-top:8px}@media (max-width:880px){.nav-menu{display:none}.container,.container-narrow{padding:0 24px}.hero{padding:70px 0 90px}.hero h1{font-size:32px}[data-locale=en] .hero h1{font-size:36px}.section-title,[data-locale=en] .section-title{font-size:28px}section.s{padding:70px 0}.case-row,.cases-grid,.footer-grid,.services-cn .grid,.svc-row,.taisei .grid,.team-cn .grid{grid-template-columns:1fr}.case-row,.svc-row{gap:16px}.svc-content ul{grid-template-columns:1fr}.process-grid{grid-template-columns:repeat(2,1fr)}.process-step:after{display:none}.trust-grid{grid-template-columns:repeat(2,1fr)}.cta-box-cn{padding:48px 28px}.cta-box-cn h2{font-size:26px}.gaiyou-table th{width:130px;padding-right:16px;font-size:12px}.contact-info,.detail-modules-grid,.detail-who-grid{grid-template-columns:1fr}}.detail-pricing{background:#fff}.pricing-table-wrap{overflow-x:auto;margin-bottom:24px}.pricing-table{width:100%;border-collapse:collapse;border-top:.5px solid var(--gray-light)}.pricing-table thead th{text-align:left;padding:18px 16px;font-size:12px;font-weight:500;color:var(--gray-dark);letter-spacing:.08em;text-transform:uppercase;border-bottom:.5px solid var(--gray-line);background:var(--rice);font-family:var(--font-stack-italic);font-style:italic}[data-locale=zh-Hant] .pricing-table thead th,[data-locale=zh] .pricing-table thead th{font-family:var(--font-stack-cn-sans);font-style:normal}[data-locale=ja] .pricing-table thead th{font-family:var(--font-stack-jp-sans);font-style:normal;letter-spacing:.1em}.pricing-table tbody tr{border-bottom:.5px solid var(--gray-light)}.pricing-table tbody tr:hover{background:var(--rice)}.pricing-table td{padding:18px 16px;font-size:14px;color:var(--ink-soft);line-height:1.7;vertical-align:top}.pricing-svc{width:50%;color:var(--ink);font-weight:500}.pricing-model{color:var(--gray-dark);font-size:13px;font-family:var(--font-stack-italic);font-style:italic}[data-locale=zh-Hant] .pricing-model,[data-locale=zh] .pricing-model{font-family:var(--font-stack-cn-sans);font-style:normal}.pricing-range{color:var(--vermilion);font-weight:500;white-space:nowrap;font-family:var(--font-stack-italic)}[data-locale=zh-Hant] .pricing-range,[data-locale=zh] .pricing-range{font-family:var(--font-stack-cn-sans)}.pricing-note{font-size:13px;color:var(--gray-dark);padding:18px 20px;background:var(--rice);border-left:3px solid var(--vermilion);line-height:1.85;max-width:760px}[data-locale=ja] .pricing-note{font-size:13px;line-height:2;letter-spacing:.04em}.detail-process{background:var(--rice)}.proc-timeline{display:flex;flex-direction:column;gap:0;max-width:920px}.proc-step{display:grid;grid-template-columns:80px 1fr;grid-gap:32px;gap:32px;padding:36px 0;border-top:.5px solid var(--gray-light)}.proc-step:first-child{border-top:none;padding-top:0}.proc-step-num{font-family:var(--font-stack-italic);font-style:italic;font-size:36px;color:var(--vermilion);font-weight:400;line-height:1;padding-top:4px;letter-spacing:.04em}.proc-step-verb{font-family:var(--font-stack-cn);font-size:22px;font-weight:500;line-height:1.4;margin-bottom:12px;color:var(--ink)}[data-locale=zh-Hant] .proc-step-verb,[data-locale=zh] .proc-step-verb{font-weight:700}[data-locale=zh-Hant] .proc-step-verb{font-family:var(--font-stack-hk)}[data-locale=ja] .proc-step-verb{font-family:var(--font-stack-jp);font-size:19px;line-height:1.5;letter-spacing:.04em}[data-locale=en] .proc-step-verb{font-family:var(--font-stack-en);font-size:22px;letter-spacing:-.005em}.proc-step-desc{font-size:15px;color:var(--gray-dark);line-height:1.85;margin-bottom:18px}[data-locale=ja] .proc-step-desc{font-size:14px;line-height:2;letter-spacing:.04em;color:var(--ink-soft)}.proc-step-meta{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px;padding-top:16px;border-top:.5px dashed var(--gray-light)}.proc-step-meta>div{display:flex;flex-direction:column;gap:4px}.proc-step-meta dt{font-size:11px;color:var(--vermilion);letter-spacing:.1em;text-transform:uppercase;font-family:var(--font-stack-italic);font-style:italic}[data-locale=zh-Hant] .proc-step-meta dt,[data-locale=zh] .proc-step-meta dt{font-family:var(--font-stack-cn-sans);font-style:normal;letter-spacing:.04em;text-transform:none}[data-locale=ja] .proc-step-meta dt{font-family:var(--font-stack-jp-sans);font-style:normal;letter-spacing:.06em;text-transform:none}.proc-step-meta dd{font-size:13px;color:var(--ink-soft);line-height:1.6}[data-locale=ja] .proc-step-meta dd{font-size:12px;line-height:1.75;letter-spacing:.04em}@media (max-width:880px){.pricing-table thead{display:none}.pricing-table tbody tr{display:block;padding:14px 0}.pricing-table td{display:block;padding:4px 0;width:100%}.pricing-svc{width:100%}.proc-step{grid-template-columns:1fr;gap:14px}.proc-step-meta{grid-template-columns:1fr;gap:10px}}.ix-hero{padding:56px 0 40px;background:var(--rice);border-bottom:.5px solid var(--gray-light)}[data-locale=en] .ix-hero,[data-locale=ja] .ix-hero{background:var(--rice-jp);padding:64px 0 44px}.ix-hero-eyebrow{font-family:var(--font-stack-italic);font-style:italic;font-size:13px;color:var(--vermilion);letter-spacing:.18em;text-transform:uppercase;margin-bottom:18px}.ix-hero-title{font-family:var(--font-stack-cn);font-size:56px;font-weight:500;line-height:1.2;letter-spacing:-.01em;margin-bottom:22px;color:var(--ink)}[data-locale=zh-Hant] .ix-hero-title,[data-locale=zh] .ix-hero-title{font-size:64px;font-weight:700}[data-locale=zh-Hant] .ix-hero-title{font-family:var(--font-stack-hk)}[data-locale=ja] .ix-hero-title{font-family:var(--font-stack-jp);font-size:44px;line-height:1.4;letter-spacing:.04em}[data-locale=en] .ix-hero-title{font-family:var(--font-stack-en);font-size:52px}.ix-hero-sub{font-size:17px;color:var(--gray-dark);line-height:1.85;max-width:720px}[data-locale=ja] .ix-hero-sub{font-size:15px;line-height:2.05;letter-spacing:.04em;color:var(--ink-soft)}[data-locale=zh-Hant] .ix-hero-sub,[data-locale=zh] .ix-hero-sub{font-size:18px;color:var(--ink-soft);max-width:800px}.ix-filters{padding:24px 0;background:#fff;border-bottom:.5px solid var(--gray-light);position:-webkit-sticky;position:sticky;top:64px;z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:hsla(0,0%,100%,.92)}.ix-filter-row{display:flex;flex-wrap:wrap;gap:10px}.ix-chip{display:inline-flex;align-items:center;padding:7px 16px;border:.5px solid var(--gray-light);border-radius:999px;font-size:13px;color:var(--ink);text-decoration:none;transition:all .2s;background:#fff}.ix-chip:hover{border-color:var(--vermilion);color:var(--vermilion)}.ix-chip.active,[data-locale=zh-Hant] .ix-chip.active,[data-locale=zh] .ix-chip.active{background:var(--ink);color:#fff;border-color:var(--ink)}.ix-chip-cat{color:var(--gray-dark)}.ix-list{padding:40px 0;background:var(--rice)}[data-locale=en] .ix-list,[data-locale=ja] .ix-list{background:var(--rice-jp)}.ix-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:28px;gap:28px}.ix-empty{color:var(--gray-dark);font-size:16px;padding:60px 0;text-align:center}.ix-card{display:flex;flex-direction:column;padding:32px 28px;background:#fff;border:.5px solid var(--gray-light);border-radius:4px;text-decoration:none;color:var(--ink);transition:transform .3s,border-color .25s,box-shadow .3s}.ix-card:hover{transform:translateY(-3px);border-color:var(--vermilion);box-shadow:0 12px 28px -16px rgba(26,40,73,.18)}.ix-card-meta{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:18px;font-size:12px}.ix-card-cat{display:inline-block;padding:4px 10px;background:var(--rice);color:var(--vermilion);border-radius:2px;font-family:var(--font-stack-italic);letter-spacing:.05em}[data-locale=zh-Hant] .ix-card-cat,[data-locale=zh] .ix-card-cat{font-family:var(--font-stack-cn-sans);background:rgba(183,28,28,.08)}.ix-card-series{color:var(--gray-dark)}.ix-card-title{font-family:var(--font-stack-cn);font-size:19px;font-weight:500;line-height:1.45;margin-bottom:14px;color:var(--ink)}[data-locale=zh-Hant] .ix-card-title,[data-locale=zh] .ix-card-title{font-weight:700;font-size:20px}[data-locale=zh-Hant] .ix-card-title{font-family:var(--font-stack-hk)}[data-locale=ja] .ix-card-title{font-family:var(--font-stack-jp);font-size:17px;line-height:1.55;letter-spacing:.04em}[data-locale=en] .ix-card-title{font-family:var(--font-stack-en);font-size:19px;line-height:1.35;letter-spacing:-.005em}.ix-card-summary{font-size:14px;color:var(--gray-dark);line-height:1.75;margin-bottom:22px;flex-grow:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ix-card-foot{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--gray-dark);margin-bottom:14px;font-family:var(--font-stack-italic);font-style:italic}[data-locale=zh-Hant] .ix-card-foot,[data-locale=zh] .ix-card-foot{font-family:var(--font-stack-cn-sans);font-style:normal}.ix-card-dot{color:var(--gray-mid)}.ix-card-cta{font-size:13px;color:var(--vermilion);font-weight:500}.ix-cta-section{padding:40px 0 48px;background:#fff}[data-locale=en] .ix-cta-section,[data-locale=ja] .ix-cta-section{background:var(--rice-jp)}.ix-cta-box{background:var(--ink);color:var(--rice);padding:60px 56px;border-radius:4px;display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap}.ix-cta-eyebrow{font-family:var(--font-stack-italic);font-style:italic;font-size:12px;color:#e8a0a0;letter-spacing:.18em;text-transform:uppercase;margin-bottom:12px}.ix-cta-title{font-family:var(--font-stack-cn);font-size:24px;font-weight:500;line-height:1.45;flex-grow:1;min-width:280px;color:var(--rice)}[data-locale=zh-Hant] .ix-cta-title,[data-locale=zh] .ix-cta-title{font-weight:700}[data-locale=ja] .ix-cta-title{font-family:var(--font-stack-jp);font-size:22px;line-height:1.6;letter-spacing:.04em}.ix-cta-section .btn-primary{background:var(--vermilion);border-color:var(--vermilion)}.ix-cta-section .btn-primary:hover{background:var(--vermilion-deep);border-color:var(--vermilion-deep)}.ix-detail{background:#fff;padding:40px 0 48px}.ix-detail .container{max-width:880px}.ix-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:12px;color:var(--gray-dark);margin-bottom:32px}.ix-breadcrumb a{color:var(--gray-dark);text-decoration:none}.ix-breadcrumb a:hover{color:var(--vermilion)}.ix-breadcrumb .sep{color:var(--gray-mid)}.ix-detail-head{margin-bottom:48px;padding-bottom:32px;border-bottom:.5px solid var(--gray-light)}.ix-detail-cat{display:flex;gap:6px;margin-bottom:22px;font-size:12px;align-items:center;flex-wrap:wrap}.ix-detail-title{font-family:var(--font-stack-cn);font-size:42px;font-weight:500;line-height:1.3;letter-spacing:-.01em;margin-bottom:22px;color:var(--ink)}[data-locale=zh-Hant] .ix-detail-title,[data-locale=zh] .ix-detail-title{font-weight:700;font-size:46px;line-height:1.25}[data-locale=zh-Hant] .ix-detail-title{font-family:var(--font-stack-hk)}[data-locale=ja] .ix-detail-title{font-family:var(--font-stack-jp);font-size:34px;line-height:1.5;letter-spacing:.04em}[data-locale=en] .ix-detail-title{font-family:var(--font-stack-en);font-size:42px;line-height:1.2;letter-spacing:-.015em}.ix-detail-summary{font-size:17px;color:var(--gray-dark);line-height:1.85;margin-bottom:22px}[data-locale=ja] .ix-detail-summary{font-size:15px;line-height:2.05}.ix-detail-meta{font-size:12px;color:var(--gray-dark);display:flex;gap:8px;align-items:center;font-family:var(--font-stack-italic);font-style:italic}[data-locale=zh-Hant] .ix-detail-meta,[data-locale=zh] .ix-detail-meta{font-family:var(--font-stack-cn-sans);font-style:normal}.ix-detail-meta .sep{color:var(--gray-mid)}.ix-detail-body{font-size:16px;line-height:1.85;color:var(--ink-soft)}[data-locale=ja] .ix-detail-body{font-size:15px;line-height:2.05;letter-spacing:.04em}[data-locale=en] .ix-detail-body{font-size:16px;line-height:1.75}.ix-detail-body h1,.ix-detail-body h2,.ix-detail-body h3{font-family:var(--font-stack-cn);font-weight:500;color:var(--ink)}[data-locale=zh-Hant] .ix-detail-body h1,[data-locale=zh-Hant] .ix-detail-body h2,[data-locale=zh-Hant] .ix-detail-body h3{font-family:var(--font-stack-hk)}[data-locale=ja] .ix-detail-body h1,[data-locale=ja] .ix-detail-body h2,[data-locale=ja] .ix-detail-body h3{font-family:var(--font-stack-jp)}[data-locale=en] .ix-detail-body h1,[data-locale=en] .ix-detail-body h2,[data-locale=en] .ix-detail-body h3{font-family:var(--font-stack-en);letter-spacing:-.01em}.ix-detail-body h2{font-size:26px;margin:56px 0 18px;line-height:1.4}[data-locale=zh-Hant] .ix-detail-body h2,[data-locale=zh] .ix-detail-body h2{font-weight:700}.ix-detail-body h3{font-size:19px;margin:36px 0 12px;line-height:1.5}.ix-detail-body p{margin-bottom:22px}.ix-detail-body ol,.ix-detail-body ul{margin:0 0 22px 4px;padding-left:22px}.ix-detail-body li{padding:5px 0}.ix-detail-body strong{color:var(--ink);font-weight:600}.ix-detail-body code{background:var(--rice);padding:1px 6px;border-radius:2px;font-size:14px;font-family:ui-monospace,SF Mono,Menlo,monospace}.ix-detail-body pre{background:var(--rice);padding:18px 20px;border-radius:4px;margin:22px 0;overflow-x:auto;border-left:3px solid var(--vermilion)}.ix-detail-body pre code{background:none;padding:0;font-size:13px;line-height:1.7;color:var(--ink)}.ix-detail-body blockquote{border-left:3px solid var(--vermilion);padding:16px 22px;background:var(--rice);margin:22px 0;color:var(--ink-soft);font-size:15px;line-height:1.85;border-radius:0}.ix-detail-body blockquote p{margin-bottom:0}.ix-detail-body hr{border:none;border-top:.5px solid var(--gray-light);margin:36px 0}.ix-detail-body a{color:var(--vermilion);text-decoration:underline;text-decoration-thickness:.5px;text-underline-offset:3px}.ix-detail-body a:hover{color:var(--vermilion-deep)}.ix-md-table{width:100%;border-collapse:collapse;margin:24px 0;font-size:14px;border-top:.5px solid var(--gray-light)}.ix-md-table thead th{background:var(--rice);padding:12px 14px;text-align:left;border-bottom:.5px solid var(--gray-line);font-weight:600;color:var(--ink);font-size:13px}.ix-md-table tbody td{padding:12px 14px;border-bottom:.5px solid var(--gray-light);vertical-align:top;line-height:1.7;color:var(--ink-soft)}.ix-md-table tbody tr:hover{background:var(--rice)}.ix-tags{border-top:.5px solid var(--gray-light);display:flex;flex-wrap:wrap;gap:8px}.ix-tag{font-size:12px;padding:4px 10px;border-radius:2px}.ix-detail-cta-box{margin:56px 0;padding:36px 32px;background:var(--rice);border-left:3px solid var(--vermilion);border-radius:0;display:flex;flex-direction:column;gap:18px}.ix-detail-cta-box h3{font-family:var(--font-stack-cn);font-size:20px;font-weight:500;line-height:1.5;color:var(--ink)}[data-locale=zh-Hant] .ix-detail-cta-box h3,[data-locale=zh] .ix-detail-cta-box h3{font-weight:700}[data-locale=ja] .ix-detail-cta-box h3{font-family:var(--font-stack-jp);font-size:18px;line-height:1.6;letter-spacing:.04em}.ix-detail-cta-box .btn-primary{align-self:flex-start}.ix-related{margin-top:64px;padding-top:40px;border-top:.5px solid var(--gray-light)}.ix-related-title{font-family:var(--font-stack-italic);font-style:italic;font-size:13px;color:var(--vermilion);letter-spacing:.18em;text-transform:uppercase;margin-bottom:24px}[data-locale=zh-Hant] .ix-related-title,[data-locale=zh] .ix-related-title{font-family:var(--font-stack-cn-sans);font-style:normal;letter-spacing:.06em;text-transform:none}.ix-related-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:20px;gap:20px}@media (max-width:880px){.ix-hero{padding:60px 0 40px}.ix-hero-title{font-size:36px}[data-locale=zh-Hant] .ix-hero-title,[data-locale=zh] .ix-hero-title{font-size:38px}.ix-grid,.ix-related-grid{grid-template-columns:1fr}.ix-cta-box{padding:40px 28px;flex-direction:column;align-items:flex-start}.ix-detail-title{font-size:28px}[data-locale=zh-Hant] .ix-detail-title,[data-locale=zh] .ix-detail-title{font-size:30px}.ix-detail-body h2{font-size:22px}.ix-filters{top:56px}}.insights-preview{background:var(--rice)}[data-locale=en] .insights-preview,[data-locale=ja] .insights-preview{background:var(--rice-jp)}.insights-preview-grid{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:28px;gap:28px;margin-top:8px}.insight-preview-card{display:flex;flex-direction:column;background:#fff;padding:32px 28px;border:.5px solid var(--gray-light);border-radius:4px;text-decoration:none;color:inherit;transition:border-color .25s,transform .3s}.insight-preview-card:hover{border-color:var(--vermilion);transform:translateY(-3px)}.insight-preview-cat{display:inline-block;font-family:var(--font-stack-italic);font-style:italic;font-size:11px;color:var(--vermilion);letter-spacing:.1em;text-transform:uppercase;margin-bottom:14px;align-self:flex-start}[data-locale=zh-Hant] .insight-preview-cat,[data-locale=zh] .insight-preview-cat{font-family:var(--font-stack-cn-sans);font-style:normal}.insight-preview-card h4{font-family:var(--font-stack-cn);font-size:18px;font-weight:500;line-height:1.5;margin-bottom:14px;color:var(--ink)}[data-locale=zh-Hant] .insight-preview-card h4{font-family:var(--font-stack-hk)}[data-locale=ja] .insight-preview-card h4{font-family:var(--font-stack-jp);font-size:17px;line-height:1.6;letter-spacing:.04em}[data-locale=en] .insight-preview-card h4{font-family:var(--font-stack-en)}.insight-preview-summary{font-size:14px;color:var(--gray-dark);line-height:1.75;margin-bottom:18px;flex-grow:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.insight-preview-meta{font-size:12px;color:var(--gray-dark);font-family:var(--font-stack-italic);font-style:italic}[data-locale=zh-Hant] .insight-preview-meta,[data-locale=zh] .insight-preview-meta{font-family:var(--font-stack-cn-sans);font-style:normal}.insights-preview-cta{margin-top:24px;text-align:center}.insights-preview-cta a{font-family:var(--font-stack-italic);font-style:italic;font-size:14px;color:var(--ink);text-decoration:none;border-bottom:.5px solid var(--ink);padding-bottom:4px;transition:color .2s,border-color .2s}[data-locale=zh-Hant] .insights-preview-cta a,[data-locale=zh] .insights-preview-cta a{font-family:var(--font-stack-cn-sans);font-style:normal}.insights-preview-cta a:hover{color:var(--vermilion);border-bottom-color:var(--vermilion)}@media (max-width:880px){.insights-preview-grid{grid-template-columns:1fr}}.hero-with-watermark{position:relative;overflow:hidden}.hero-watermark{position:absolute;bottom:-60px;right:-40px;font-size:380px;line-height:1;font-family:"Noto Serif SC","Noto Serif JP",Yu Mincho,serif;font-weight:700;color:var(--vermilion);opacity:.045;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:0}.hero-watermark-en{font-size:220px;font-family:"Source Serif 4",EB Garamond,Georgia,serif;bottom:-30px;right:-20px;letter-spacing:-.02em}.hero-watermark-ja{font-family:"Noto Serif JP",Hiragino Mincho ProN,Yu Mincho,serif}.hero-watermark-zh-Hant{font-family:"Noto Serif HK","Noto Serif TC",Songti SC,serif}.hero-with-watermark .container,.hero-with-watermark .container-narrow{position:relative;z-index:1}@media (max-width:880px){.hero-watermark{font-size:220px;bottom:-30px;right:-20px;opacity:.04}.hero-watermark-en{font-size:140px}}.practice-divider{display:flex;justify-content:center;align-items:center;padding:20px 0 4px;margin:0 auto;position:relative}.practice-divider:after,.practice-divider:before{content:"";display:block;flex:0 0 90px;height:1px;background:var(--gray-light);margin:0 18px}.seal-stamp{display:block}.detail-hero-pattern{position:relative;overflow:hidden}.detail-hero-pattern:before{content:"";position:absolute;inset:0;background-image:linear-gradient(45deg,transparent 47%,rgba(20,42,76,.04) 0,rgba(20,42,76,.04) 53%,transparent 0),linear-gradient(-45deg,transparent 47%,rgba(20,42,76,.04) 0,rgba(20,42,76,.04) 53%,transparent 0);background-size:60px 60px;pointer-events:none;opacity:.7;z-index:0}.detail-hero-pattern .container,.detail-hero-pattern .container-narrow{position:relative;z-index:1}.ix-detail-title{position:relative;padding:16px 0 4px}.ix-detail-title:after,.ix-detail-title:before{content:"";display:block;width:36px;height:1.5px;background:var(--vermilion)}.ix-detail-title:before{margin-bottom:18px}.ix-detail-title:after{margin-top:24px}.process-grid{position:relative}.process-grid:before{content:"";position:absolute;top:22px;left:8%;right:8%;height:1px;background:linear-gradient(to right,transparent,var(--vermilion) 18%,var(--vermilion) 82%,transparent);z-index:0;pointer-events:none}.process-step{position:relative;z-index:1}.process-num{background:var(--rice);border:1.5px solid var(--vermilion);color:var(--vermilion);border-radius:50%;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;font-family:"Noto Serif SC","Noto Serif JP",serif;font-weight:600;font-size:14px;letter-spacing:.04em}@media (max-width:880px){.process-grid:before{display:none}}.pricing-table{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.pricing-table tbody tr:nth-child(2n) td{background:#faf8f4}.pricing-table .pricing-range,.pricing-table tbody td.pricing-range{color:var(--vermilion);font-weight:600;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.btn-secondary{background:transparent;color:var(--ink);border:1.5px solid var(--ink);padding:14px 32px;font-size:14px;letter-spacing:.06em;text-decoration:none;display:inline-flex;align-items:center;transition:background .25s,color .25s,border-color .25s}.btn-secondary:hover{background:var(--ink);color:#fff}.ix-tags{margin-top:48px;padding-top:24px}.ix-tag{display:inline-block;padding:4px 12px;font-size:11.5px;letter-spacing:.08em;color:var(--gray-dark);background:var(--rice);border:1px solid var(--gray-light);border-radius:1px;text-decoration:none;transition:background .2s,color .2s,border-color .2s}.ix-tag:hover{background:#efeae0;color:var(--ink);border-color:#c9c5bb}.ix-fallback-banner{padding:24px 0 0}.ix-fallback-banner-box{background:var(--rice);border-left:2px solid var(--vermilion);padding:16px 22px;border-radius:2px}.ix-fallback-banner-line1{font-size:14px;color:var(--ink);font-weight:500;margin-bottom:4px}.ix-fallback-banner-line2{font-size:13px;color:var(--gray-dark);line-height:1.6;margin:0}.tag-chip-row{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.tag-chip{display:inline-block;padding:4px 12px;font-size:11.5px;letter-spacing:.08em;color:var(--gray-dark);background:var(--rice);border:1px solid var(--gray-light);border-radius:1px}pre.ascii-tree{background:#f4f2ec;padding:16px 20px;font-family:SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:13px;line-height:1.55;border-left:2px solid var(--vermilion);border-radius:2px;overflow-x:auto;white-space:pre;margin:16px 0;color:var(--ink)}pre.ascii-tree code{background:transparent;padding:0;font-family:inherit;font-size:inherit}.generic-page h2{padding-top:32px;margin-top:40px;border-top:1px solid var(--ink)}.case-card,.case-row,.generic-page h2{position:relative}.case-card:after{content:"脱敏";position:absolute;top:16px;right:16px;width:50px;height:50px;background:rgba(155,27,31,.04);border:1px solid rgba(155,27,31,.15);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:"Noto Serif SC","Noto Serif JP",Yu Mincho,serif;font-size:11px;color:var(--vermilion);transform:rotate(-12deg);pointer-events:none}[data-locale=ja] .case-card:after{content:"脱敏"}[data-locale=en] .case-card:after{content:"anon";font-size:9.5px;letter-spacing:.12em}.ix-hero{position:relative;overflow:hidden}.ix-hero:after{content:"";position:absolute;bottom:0;left:0;right:0;height:110px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 180' preserveAspectRatio='xMidYMax slice'><path d='M0,180 L0,140 Q150,80 280,110 Q420,135 540,90 Q680,40 820,95 Q940,135 1060,75 Q1140,35 1200,80 L1200,180 Z' fill='%23142A4C'/><path d='M0,180 L0,160 Q120,130 240,140 Q360,148 480,128 Q600,105 720,135 Q840,160 960,125 Q1080,98 1200,130 L1200,180 Z' fill='%23142A4C' opacity='0.5'/></svg>");background-repeat:no-repeat;background-size:cover;background-position:bottom;opacity:.07;pointer-events:none;z-index:0}.ix-hero .container{position:relative;z-index:1}.form-success{padding:32px;background:#f1f5ee;border:1px solid #b8cda4;color:#2f4a1f;font-size:15px;line-height:1.7;border-radius:2px}.form-error{margin-top:12px;padding:12px 16px;background:#fbe9e9;border:1px solid #e8b5b5;color:#7a1f1f;font-size:13px;border-radius:2px}