/* Renovation journey — the same paper, sage and serif as the main site. */
.process-overview,.process-hero,.process-journey,.process-next{--muted:#686f60}
.process-overview{padding:55px 5.3% 60px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.process-overview-heading{display:flex;justify-content:space-between;align-items:center;gap:30px}
.process-overview-heading h2,.process-next h2{font-family:'Noto Serif TC',serif;font-weight:400;font-size:34px;letter-spacing:1.5px;line-height:1.6;margin:12px 0}
.process-overview-heading h2 span,.process-hero h1 span{color:var(--accent)}
.process-overview-heading p{font-size:13px;color:var(--muted);margin:0;line-height:2}
.process-overview-heading>.text-link{flex-shrink:0}
.process-overview-grid{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;margin:35px 0 0;padding:0}
.process-overview-grid li{border-top:1px solid var(--line);padding-top:20px}
.process-phase-number{font-family:Georgia,serif;font-size:25px;color:var(--accent);line-height:1.3}
.process-overview-grid h3{font-family:'Noto Serif TC',serif;font-size:21px;letter-spacing:.5px;font-weight:500;margin:14px 0 9px}
.process-overview-grid p{font-size:12px;line-height:2;color:var(--muted);margin:0;max-width:235px}
.process-hero{padding:62px 5.3% 54px;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:8%;align-items:center}
.process-hero h1{font-size:clamp(42px,4.2vw,64px);margin:23px 0 15px}
.process-intro{font-family:'Noto Serif TC',serif;font-size:21px;line-height:1.9;margin:0 0 20px;letter-spacing:.3px}
.process-hero-copy{font-size:13px;line-height:2.2;color:var(--muted);margin:0 0 25px}
.process-duration{background:var(--green);color:var(--paper);padding:32px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.process-duration>.eyebrow{color:#e3e6d8;font-size:10px;letter-spacing:1.2px}
.process-duration>div{display:flex;align-items:baseline;gap:15px;margin:16px 0 22px}
.process-duration strong{font-family:Georgia,serif;font-size:clamp(60px,7vw,105px);font-weight:400;letter-spacing:-3px;line-height:1.1}
.process-duration>div>span{font-family:'Noto Serif TC',serif;font-size:21px;letter-spacing:2px;white-space:nowrap}
.process-duration p{border-top:1px solid #ffffff35;padding-top:20px;margin:0;color:#e3e6d8;font-size:11px;line-height:2}
.process-journey{padding:55px 5.3% 65px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.85fr);gap:9%;border-top:1px solid var(--line);align-items:start}
.process-rail{position:sticky;top:30px}
.process-rail h2{font-family:'Noto Serif TC',serif;font-size:30px;font-weight:400;letter-spacing:1px;line-height:1.7;margin:17px 0}
.process-rail>p{font-size:12px;color:var(--muted);line-height:2.1;margin:0;max-width:275px}
.process-phase-nav{display:flex;flex-direction:column;margin-top:30px;border-top:1px solid var(--line)}
.process-phase-nav a{display:flex;align-items:center;gap:18px;border-bottom:1px solid var(--line);padding:15px 0;font-size:12px}
.process-phase-nav a>span:first-child{font-family:Georgia,serif;font-size:12px;color:var(--accent);min-width:42px}
.process-phase-nav a>span:last-child{margin-left:auto;color:var(--muted)}
.process-phase-nav a:hover{color:var(--accent)}
.process-timeline{list-style:none;margin:0;padding:0}
.process-timeline>li{display:grid;grid-template-columns:46px minmax(0,1fr);gap:25px;position:relative;padding-bottom:39px;scroll-margin-top:28px}
.process-timeline>li::before{content:'';position:absolute;left:22px;top:47px;bottom:0;border-left:1px solid var(--line)}
.process-timeline>li:last-child{padding-bottom:0}
.process-timeline>li:last-child::before{display:none}
.process-step-number{font-family:Georgia,serif;font-size:18px;width:46px;height:46px;border:1px solid #b7bfae;border-radius:50%;display:grid;place-items:center;color:var(--green);background:var(--paper);position:relative}
.process-timeline>li:last-child .process-step-number{background:var(--green);color:var(--paper);border-color:var(--green)}
.process-step-copy{padding-top:2px}
.process-step-copy>.eyebrow{font-size:9px;letter-spacing:1px;color:var(--accent)}
.process-step-copy h3{font-family:'Noto Serif TC',serif;font-weight:500;font-size:25px;line-height:1.7;letter-spacing:.5px;margin:7px 0 13px}
.process-step-copy>p{font-size:13px;line-height:2.2;color:var(--muted);margin:0 0 18px;max-width:580px}
.process-checkpoint{background:#ecece3;border-left:2px solid #bcc4b1;padding:14px 18px}
.process-checkpoint>span{display:block;font-size:10px;letter-spacing:.7px;color:var(--green);margin-bottom:5px}
.process-checkpoint>p{font-size:12px;color:#5b6154;line-height:2;margin:0}
.process-next{padding:40px 5.3% 50px;background:#ecece3;display:flex;justify-content:space-between;align-items:center;gap:30px}
.process-next h2{font-size:29px;margin:12px 0}
.process-next p{font-size:13px;line-height:2.2;color:var(--muted);margin:0}
.process-next>.solid-button{flex-shrink:0}
@media(max-width:850px){
  .process-hero{gap:5%;padding-top:42px;padding-bottom:42px;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
  .process-intro{font-size:18px}
  .process-duration{padding:25px}
  .process-duration strong{font-size:72px}
  .process-duration>div{gap:10px}
  .process-duration>div>span{font-size:17px}
  .process-journey{gap:6%;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
  .process-rail h2{font-size:25px}
  .process-timeline>li{gap:16px}
  .process-step-copy h3{font-size:23px}
  .process-overview-grid{gap:20px}
  .process-overview-grid h3{font-size:19px}
}
@media(max-width:600px){
  .process-overview{padding:35px 6% 40px}
  .process-overview-heading{align-items:flex-start;flex-direction:column;gap:20px}
  .process-overview-heading h2{font-size:29px;margin:12px 0 10px}
  .process-overview-heading p{font-size:12px}
  .process-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 22px;margin-top:28px}
  .process-overview-grid li{padding-top:16px}
  .process-overview-grid h3{font-size:20px;margin:12px 0 8px}
  .process-overview-grid p{font-size:11px;line-height:2}
  .process-phase-number{font-size:22px}
  .process-hero{padding:33px 6% 35px;grid-template-columns:1fr;gap:29px}
  .process-hero>.eyebrow,.process-hero .eyebrow{font-size:8px;letter-spacing:1.2px}
  .process-hero h1{font-size:42px;margin:21px 0 14px}
  .process-intro{font-size:18px;line-height:1.9;margin-bottom:17px}
  .process-hero-copy{font-size:12px;margin-bottom:20px}
  .process-duration{padding:25px}
  .process-duration>div{margin:13px 0 20px;gap:18px}
  .process-duration strong{font-size:79px}
  .process-duration>div>span{font-size:21px}
  .process-duration p{font-size:11px;padding-top:17px}
  .process-journey{padding:35px 6% 40px;grid-template-columns:1fr;gap:35px}
  .process-rail{position:static}
  .process-rail h2{font-size:28px;margin:14px 0}
  .process-rail>p{max-width:none;font-size:12px}
  .process-phase-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;margin-top:22px}
  .process-phase-nav a{font-size:11px;gap:9px;padding:13px 0}
  .process-phase-nav a>span:first-child{font-size:11px;min-width:33px}
  .process-timeline>li{grid-template-columns:37px minmax(0,1fr);gap:15px;padding-bottom:30px}
  .process-timeline>li::before{left:18px;top:38px}
  .process-step-number{width:37px;height:37px;font-size:16px}
  .process-step-copy h3{font-size:22px;margin:8px 0 12px;letter-spacing:0}
  .process-step-copy>p{font-size:12px;line-height:2.1;margin-bottom:15px}
  .process-checkpoint{padding:12px 14px}
  .process-checkpoint>p{font-size:11px}
  .process-next{padding:32px 6% 36px;flex-direction:column;align-items:flex-start;gap:24px}
  .process-next h2{font-size:27px}
  .process-next p{font-size:12px}
}
