.service-hero{min-height:82vh;padding:180px var(--pad) 90px;background:#0b0b0b;color:#fff;display:flex;flex-direction:column;justify-content:flex-end}.service-hero h1{font-family:"Songti SC","STSong",serif;font-size:clamp(60px,9vw,130px);line-height:.95;letter-spacing:-.07em;margin:18px 0 45px}.service-hero h1 span{color:var(--red)}.service-hero-bottom{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.service-hero-bottom p{max-width:590px;color:#999;line-height:2}.core-service-cards{padding:120px var(--pad);display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.core-service-card{min-height:460px;padding:35px;background:#fff;display:flex;flex-direction:column;transition:.35s}.core-service-card:hover{background:#111;color:#fff;transform:translateY(-7px)}.core-service-card>span{color:var(--red);font-size:11px}.core-service-card h2{font-family:"Songti SC","STSong",serif;font-size:42px;margin:auto 0 16px}.core-service-card p{font-size:13px;color:#777;line-height:1.8}.core-service-card i{font-style:normal;color:var(--red);font-size:25px;margin-top:25px}.service-system{padding:120px var(--pad);background:#e8e6e0}.service-system-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:60px;border-top:1px solid #aaa;border-left:1px solid #aaa}.service-system-grid article{padding:35px;border-right:1px solid #aaa;border-bottom:1px solid #aaa}.service-system-grid h3{font-family:"Songti SC","STSong",serif;font-size:26px;margin:0 0 12px}.service-system-grid p{font-size:12px;color:#777}.process{padding:120px var(--pad);background:#fff}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #ccc}.process-grid article{padding:30px 25px;border-right:1px solid #ccc;min-height:240px}.process-grid span{font-size:11px;color:var(--red)}.process-grid h3{font-family:"Songti SC","STSong",serif;font-size:24px;margin:70px 0 12px}.process-grid p{font-size:12px;color:#777;line-height:1.7}.detail-service-hero{padding:180px var(--pad) 100px;background:#0b0b0b;color:#fff}.detail-service-hero h1{font-family:"Songti SC","STSong",serif;font-size:clamp(60px,9vw,125px);margin:15px 0 40px;letter-spacing:-.07em}.detail-service-hero .lead{max-width:760px;font-size:18px;line-height:2;color:#aaa}.service-value{padding:120px var(--pad);display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw}.service-value h2,.deliverables h2,.faq h2{font-family:"Songti SC","STSong",serif;font-size:clamp(38px,5vw,68px);line-height:1.15;margin:0}.service-value-content>p{font-size:16px;line-height:2;color:#666}.value-points{margin-top:50px;border-top:1px solid #bbb}.value-points div{padding:22px 0;border-bottom:1px solid #bbb;display:grid;grid-template-columns:45px 1fr;gap:20px}.value-points span{color:var(--red)}.value-points h3{margin:0;font-family:"Songti SC","STSong",serif;font-size:22px}.deliverables{padding:120px var(--pad);background:#e8e6e0}.deliverable-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#aaa;margin-top:60px;border:1px solid #aaa}.deliverable-grid article{background:#e8e6e0;padding:30px;min-height:210px}.deliverable-grid span{color:var(--red);font-size:11px}.deliverable-grid h3{font-family:"Songti SC","STSong",serif;font-size:23px;margin:60px 0 0}.service-cases{padding:120px var(--pad);background:#fff}.service-case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:55px}.service-case-grid img{aspect-ratio:4/3;object-fit:cover}.service-case-grid h3{font-family:"Songti SC","STSong",serif;font-size:23px;margin:15px 0 5px}.service-case-grid p{font-size:11px;color:#888}.faq{padding:120px var(--pad)}.faq-list{margin-top:60px;border-top:1px solid #aaa}.faq details{border-bottom:1px solid #aaa;padding:24px 0}.faq summary{cursor:pointer;font-family:"Songti SC","STSong",serif;font-size:22px}.faq details p{max-width:760px;color:#666;line-height:1.9}
@media(max-width:900px){.service-hero-bottom,.service-value{grid-template-columns:1fr}.core-service-cards{grid-template-columns:1fr}.core-service-card{min-height:330px}.service-system-grid{grid-template-columns:1fr}.process-grid{grid-template-columns:1fr 1fr}.deliverable-grid,.service-case-grid{grid-template-columns:1fr 1fr}.detail-service-hero{padding-top:140px}}
@media(max-width:560px){.service-hero{min-height:74vh;padding-top:140px}.core-service-cards,.service-system,.process,.service-value,.deliverables,.service-cases,.faq{padding-block:80px}.process-grid,.deliverable-grid,.service-case-grid{grid-template-columns:1fr}.process-grid article{min-height:190px}.process-grid h3{margin-top:45px}}
@media(max-width:900px){.service-hero-bottom p,.detail-service-hero .lead,.service-value-content>p{font-size:16px;line-height:1.85}.core-service-card>span,.deliverable-grid span,.process-grid span,.service-case-grid p{font-size:13px}.core-service-card p,.service-system-grid p,.process-grid p{font-size:15px;line-height:1.75}.core-service-card h2{font-size:clamp(32px,8vw,42px)}.service-system-grid h3,.value-points h3,.deliverable-grid h3,.service-case-grid h3{font-size:clamp(22px,5.5vw,27px);line-height:1.4}.faq summary{font-size:20px;line-height:1.5}.faq details p{font-size:16px;line-height:1.85}}
@media(min-width:901px){.service-hero-bottom p,.detail-service-hero .lead{font-size:18px;line-height:1.9}.core-service-card>span,.deliverable-grid span,.process-grid span{font-size:12px}.core-service-card p,.service-system-grid p,.process-grid p{font-size:15px;line-height:1.75}.service-value-content>p{font-size:17px;line-height:1.9}.service-case-grid p{font-size:13px}.faq details p{font-size:16px}}
.geo-faq{max-width:1180px;margin:72px auto;padding:0 24px}.geo-faq>h2{font-size:clamp(30px,4vw,52px);margin:10px 0 28px}.geo-faq-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.geo-faq-grid article{padding:28px;border:1px solid #e5e5e5;background:#fff}.geo-faq-grid h3{font-size:20px;line-height:1.45;margin:0 0 14px}.geo-faq-grid p{font-size:16px;line-height:1.85;color:#555;margin:0}@media(max-width:800px){.geo-faq{margin:48px auto;padding:0 18px}.geo-faq-grid{grid-template-columns:1fr}.geo-faq-grid article{padding:22px}.geo-faq-grid h3{font-size:18px}}
/* Keep the service landing page aligned with standard section heroes. */
.service-page{background:var(--paper)}.service-page .service-hero{min-height:0;justify-content:flex-start}
/* Keep service-case artwork readable on narrow screens. */
@media(max-width:900px){body .service-case-grid img{aspect-ratio:3/2;object-position:center}}
