 
.service-main{font-family:var(--wx-gothic);color:var(--wx-navy);background:var(--wx-white)}
.service-main section{padding:0;font-family:var(--wx-gothic)}
.service-main .service-hero{background:var(--wx-navy);color:var(--wx-white);border-bottom:3px solid var(--brand)}
.service-hero .wrap{padding-top:74px}
.service-hero .crumb{margin:0 0 50px;color:rgba(255,255,255,.58);font-size:12px}
.service-hero .crumb a{text-underline-offset:4px}
.service-hero__eyebrow{justify-content:flex-start;margin:0 0 12px;text-align:left;color:var(--wx-white)}
.service-hero__eyebrow::before{display:none}
.service-hero__eyebrow::after{background:var(--wx-white)}
.service-hero h1{max-width:18em;margin:0;font-family:var(--wx-mincho);font-size:clamp(34px,4.2vw,58px);font-weight:600;line-height:1.38;letter-spacing:.06em;color:var(--wx-white)}
.service-hero__lead{max-width:48em;margin:24px 0 0;color:rgba(255,255,255,.78);font-size:15.5px;line-height:2}
.service-jump{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:68px;border-top:1px solid rgba(255,255,255,.24);border-left:1px solid rgba(255,255,255,.24)}
.service-jump a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:start;min-height:116px;padding:22px 22px 24px;color:var(--wx-white);text-decoration:none;border-right:1px solid rgba(255,255,255,.24);position:relative;transition:background-color .3s ease,color .3s ease}
.service-jump a:hover,.service-jump a:focus-visible{background:var(--brand);color:var(--wx-black);outline:0}
.service-jump__number{font-family:var(--wx-en);font-size:18px;line-height:1;color:var(--brand);transition:color .3s ease}
.service-jump a:hover .service-jump__number,.service-jump a:focus-visible .service-jump__number{color:var(--wx-black)}
.service-jump a > span:nth-child(2){min-width:0;font-family:var(--wx-gothic);font-size:18px;font-weight:600;line-height:1.4;letter-spacing:.04em;white-space:nowrap}
.service-jump small{display:block;margin-top:6px;font-family:var(--wx-en);font-size:12px;font-weight:500;letter-spacing:.06em;color:rgba(255,255,255,.66);transition:color .3s ease}
.service-jump a:hover small,.service-jump a:focus-visible small{color:rgba(0,0,0,.62)}
.service-jump__arrow{padding-top:2px;font-size:17px;line-height:1;transition:transform .3s cubic-bezier(.16,1,.3,1)}
.service-jump a:hover .service-jump__arrow,.service-jump a:focus-visible .service-jump__arrow{transform:translateY(5px)}

.service-main .service-programs{background:var(--wx-white)}
.service-program{display:grid;grid-template-columns:minmax(280px,.88fr) minmax(0,1.3fr);gap:clamp(52px,8vw,142px);padding:82px 0;border-top:1px solid var(--line-soft);scroll-margin-top:92px}
.service-program:first-child{border-top:0}
.service-program__identity{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.service-program__number{margin:0 0 30px;font-family:var(--wx-en);font-size:clamp(44px,4.6vw,72px);font-weight:500;line-height:.75;letter-spacing:-.04em;color:var(--brand-dim)}
.service-program h2{margin:0;font-family:var(--wx-mincho);font-size:clamp(28px,2.8vw,38px);font-weight:600;line-height:1.35;letter-spacing:.05em;color:var(--wx-navy);white-space:nowrap}
.service-program__en{margin:10px 0 0;font-family:var(--wx-en);font-size:15px;letter-spacing:.07em;color:var(--brand-dim)}
.service-program__works{display:inline-flex;align-items:center;gap:10px;margin-top:35px;padding-bottom:5px;font-size:13px;font-weight:500;line-height:1.4;color:var(--wx-navy);text-decoration:none;border-bottom:1px solid var(--brand);transition:color .3s ease,border-color .3s ease}
.service-program__works span{font-family:var(--wx-en);font-size:17px;transition:transform .3s cubic-bezier(.16,1,.3,1)}
.service-program__works:hover,.service-program__works:focus-visible{color:var(--brand-dim);outline:0}
.service-program__works:hover span,.service-program__works:focus-visible span{transform:translate(4px,-4px)}
.service-program__content{min-width:0;padding-top:8px}
.service-program__summary{max-width:37em;margin:0;font-size:clamp(17px,1.55vw,21px);line-height:1.85;letter-spacing:.02em;color:var(--wx-navy)}
.service-program__note{max-width:44em;margin:12px 0 0;font-size:14px;line-height:1.9;color:var(--text)}
.service-program__scope{margin-top:36px}
.service-program__scope > p{margin:0 0 12px;font-size:12px;font-weight:600;letter-spacing:.1em;color:var(--brand-dim)}
.service-program__scope ul{margin:0;padding:0;list-style:none;border-top:1px solid var(--line-soft)}
.service-program__scope li{display:grid;grid-template-columns:34px minmax(0,1fr);gap:14px;padding:13px 0;border-bottom:1px solid var(--line-soft);font-size:15px;line-height:1.65;color:var(--wx-navy)}
.service-program__scope li::before{content:counter(service-scope, decimal-leading-zero);counter-increment:service-scope;font-family:var(--wx-en);font-size:13px;color:var(--brand-dim)}
.service-program__scope ul{counter-reset:service-scope}

.service-main .service-contact-cta{background:var(--wx-mist);border-top:1px solid var(--line-soft);border-bottom:3px solid var(--brand)}
.service-contact-cta .wrap{display:flex;justify-content:space-between;align-items:end;gap:40px;padding-top:54px;padding-bottom:54px}
.service-contact-cta__eyebrow{margin:0 0 5px;font-family:var(--wx-en);font-size:16px;letter-spacing:.07em;color:var(--brand-dim)}
.service-contact-cta h2{margin:0;font-family:var(--wx-mincho);font-size:clamp(25px,2.7vw,34px);font-weight:600;letter-spacing:.06em;color:var(--wx-navy)}
.service-contact-cta p:last-child{margin:10px 0 0;font-size:14px;color:var(--text)}
.service-contact-cta a{display:inline-flex;align-items:center;gap:14px;flex:none;padding:13px 0;color:var(--wx-navy);font-size:14px;font-weight:600;text-decoration:none;border-bottom:1px solid var(--brand);transition:color .3s ease}
.service-contact-cta a span{font-family:var(--wx-en);font-size:20px;transition:transform .3s cubic-bezier(.16,1,.3,1)}
.service-contact-cta a:hover,.service-contact-cta a:focus-visible{color:var(--brand-dim);outline:0}
.service-contact-cta a:hover span,.service-contact-cta a:focus-visible span{transform:translate(4px,-4px)}

@media(max-width:880px){
  .service-hero .wrap{padding-top:58px}
  .service-hero .crumb{margin-bottom:38px}
  .service-jump{margin-top:52px}
  .service-jump a{padding:19px 16px;gap:10px;min-height:106px}
  .service-jump a > span:nth-child(2){font-size:16px}
  .service-program{grid-template-columns:minmax(240px,.9fr) minmax(0,1.1fr);gap:42px;padding:68px 0}
  .service-program__number{margin-bottom:25px}
}

@media(max-width:640px){
  .service-hero .wrap{padding-top:48px}
  .service-hero h1{font-size:clamp(26px,8vw,40px);line-height:1.45}
  .service-hero__lead{margin-top:18px;font-size:14px}
  .service-jump{grid-template-columns:1fr;margin-top:42px}
  .service-jump a{min-height:0;padding:17px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.24)}
  .service-jump a:last-child{border-bottom:0}
  .service-jump a > span:nth-child(2){font-size:18px}
  .service-jump__arrow{padding-right:2px}
  .service-program{grid-template-columns:1fr;gap:34px;padding:54px 0;scroll-margin-top:76px}
  .service-program__number{margin-bottom:23px;font-size:46px}
  .service-program h2{font-size:clamp(26px,8vw,32px);letter-spacing:.02em}
  .service-program__works{margin-top:26px}
  .service-program__content{padding-top:0}
  .service-program__summary{font-size:17px;line-height:1.8}
  .service-program__scope{margin-top:28px}
  .service-contact-cta .wrap{display:block;padding-top:42px;padding-bottom:42px}
  .service-contact-cta a{margin-top:25px}
}

@media(prefers-reduced-motion:reduce){
  .service-main *, .service-main *::before, .service-main *::after{scroll-behavior:auto!important;transition:none!important}
}
