/* Shared public footer. Keep homepage and internal pages identical. */
.rch-footer{background:#262626;color:#ddd;padding:50px 0 24px}.rch-footer-inner{width:88%;max-width:1400px;margin:auto}.rch-footer-brand img{filter:brightness(0) invert(1);width:140px;height:auto}.rch-footer-columns{display:grid;grid-template-columns:1fr 1fr 1.15fr 1.15fr;gap:30px;margin-top:32px}.rch-footer-columns>div{min-width:0}.rch-footer-location p{overflow-wrap:anywhere}.rch-footer-links{display:grid;grid-template-columns:repeat(2,max-content);gap:6px 18px}.rch-footer-columns h2{font-size:18px;color:white;margin:0 0 18px;letter-spacing:.01em;font-weight:700}.rch-footer-columns p,.rch-footer-columns strong,.rch-footer-columns a{font-size:14px;line-height:1.8}.rch-footer-columns p{margin:12px 0;color:#b6b6b6}.rch-footer-columns strong{font-weight:600}.rch-footer-columns>div>a{display:block}.rch-footer-columns .rch-footer-phone{font-size:30px;font-weight:750;color:#fff;line-height:1.3;white-space:nowrap}.rch-footer-bottom{display:flex;flex-wrap:wrap;gap:12px 30px;border-top:1px solid #444;padding-top:22px;margin-top:38px;font-size:12px;color:#aaa}
.rch-footer-brand{display:flex;align-items:center;gap:24px;width:fit-content;max-width:100%;color:#fff}.rch-footer-brand strong{font-size:22px;line-height:1.4;font-weight:700;letter-spacing:-.025em}.rch-footer-bottom-links{display:flex;flex-wrap:wrap;gap:12px 24px;margin-left:auto}
@media(max-width:1100px){.rch-footer-columns{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.rch-footer{padding-top:35px}.rch-footer-columns{grid-template-columns:1fr;gap:30px}.rch-footer-brand{gap:18px}.rch-footer-brand img{width:110px}.rch-footer-brand strong{font-size:18px}.rch-footer-columns h2{margin-bottom:12px;font-size:16px}.rch-footer-bottom{margin-top:26px;flex-direction:column;gap:14px;font-size:11px}.rch-footer-bottom-links{margin-left:0;gap:20px}.rch-footer-columns .rch-footer-phone{font-size:28px}}
/* Refined type scale, alignment and spacing. */
.rch-footer{padding:64px 0 26px;color:#c3cbd4}.rch-footer-brand{gap:20px}.rch-footer-brand img{width:116px;display:block}.rch-footer-brand strong{font-size:18px;font-weight:600;line-height:1.4}.rch-footer-columns{grid-template-columns:1fr 1fr 1.15fr 1.05fr;gap:40px;margin-top:42px;align-items:start}.rch-footer-columns h2{font-size:13px;line-height:1.4;letter-spacing:.09em;font-weight:650;margin:0 0 20px}.rch-footer-columns strong{display:block;font-size:14px;font-weight:550;line-height:1.6;color:#e0e5eb}.rch-footer-columns p,.rch-footer-columns a{font-size:13px;line-height:1.85;letter-spacing:0}.rch-footer-columns p{margin:12px 0 14px;color:#aab4c0;word-break:keep-all;overflow-wrap:break-word}.rch-footer-location p{min-height:74px}.rch-footer-columns .rch-footer-phone{font-size:27px;line-height:1.25;font-weight:650;letter-spacing:-.02em;margin:-3px 0 8px}.rch-footer-links{gap:8px 20px;margin-top:16px}.rch-footer-links a{font-size:12px}.rch-footer-bottom{align-items:center;justify-content:space-between;gap:15px 30px;padding-top:22px;margin-top:42px;font-size:11px;line-height:1.6;color:#929eac;border-color:#343c46}.rch-footer-bottom-links{gap:12px 24px}
@media(max-width:1100px){.rch-footer-columns{grid-template-columns:1fr 1fr;gap:34px 48px}.rch-footer-location p{min-height:0}.rch-footer{padding-top:48px}}
@media(max-width:600px){.rch-footer{padding:40px 0 24px}.rch-footer-inner{width:90%}.rch-footer-brand{gap:16px}.rch-footer-brand img{width:96px}.rch-footer-brand strong{font-size:16px}.rch-footer-columns{grid-template-columns:1fr;gap:0;margin-top:28px}.rch-footer-columns>div{padding:24px 0;border-bottom:1px solid #343c46}.rch-footer-columns>div:first-child{padding-top:0}.rch-footer-columns>div:last-child{border-bottom:0;padding-bottom:0}.rch-footer-columns h2{font-size:12px;margin-bottom:12px}.rch-footer-columns p{margin:9px 0 10px}.rch-footer-columns .rch-footer-phone{font-size:26px;margin-top:0}.rch-footer-links{gap:10px 24px}.rch-footer-bottom{margin-top:28px;padding-top:20px;align-items:flex-start;flex-direction:column;gap:14px;font-size:10px}.rch-footer-bottom-links{margin-left:0;gap:20px;font-size:11px}}

/* Three office locations in one balanced row, with contact details below. */
.rch-footer-columns{grid-template-columns:1fr 1fr 1.25fr;gap:30px 44px;margin-top:32px}
.rch-footer-columns .rch-footer-location{padding:0;border:0}
.rch-footer-columns .rch-footer-location h2{font-size:15px;letter-spacing:-.02em;margin:0 0 12px;font-weight:600}
.rch-footer-location p{min-height:72px;margin:0 0 10px;font-size:12px;line-height:1.8}
.rch-footer-location>a{font-size:11px;color:#aeb7c1}
.rch-footer-columns .rch-footer-contact{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:12px 28px;border-top:1px solid #343c46;padding:24px 0 0}
.rch-footer-contact h2{margin:0;font-size:11px}.rch-footer-columns .rch-footer-contact .rch-footer-phone{font-size:22px;margin:0;line-height:1.5}.rch-footer-contact>p{margin:0;font-size:12px}.rch-footer-contact>.rch-footer-links{display:flex;flex-wrap:wrap;gap:12px 20px;margin:0 0 0 auto}.rch-footer-contact>.rch-footer-links a{font-size:11px}
.rch-footer-bottom{margin-top:25px;padding-top:20px}
@media(min-width:701px) and (max-width:1100px){.rch-footer-columns{grid-template-columns:1fr 1fr 1.25fr;gap:26px}.rch-footer-location p{min-height:92px}.rch-footer-contact>.rch-footer-links{margin-left:0}}
@media(max-width:700px){.rch-footer-columns{grid-template-columns:1fr;gap:0;margin-top:28px}.rch-footer-columns .rch-footer-location{padding:20px 0;border-bottom:1px solid #343c46}.rch-footer-columns .rch-footer-location:first-child{padding-top:0}.rch-footer-location p{min-height:0;margin-bottom:8px}.rch-footer-columns .rch-footer-contact{border-top:0;gap:10px 20px;padding-top:22px}.rch-footer-contact h2{flex-basis:100%}.rch-footer-contact>.rch-footer-links{margin-left:0;width:100%;margin-top:8px}}

/* Each office occupies a separate name-and-address row. */
.rch-footer .rch-footer-columns{grid-template-columns:minmax(0,1fr);gap:0;margin-top:30px}
.rch-footer .rch-footer-columns .rch-footer-location{display:grid;grid-template-columns:125px minmax(0,1fr) 76px;align-items:baseline;gap:0 20px;padding:11px 0;border:0}
.rch-footer .rch-footer-columns .rch-footer-location h2{font-size:14px;line-height:1.8;margin:0;letter-spacing:-.02em;white-space:nowrap}
.rch-footer .rch-footer-location p{min-height:0;margin:0;font-size:12px;line-height:1.8;word-break:normal;overflow-wrap:break-word}
.rch-footer .rch-footer-location>a{font-size:11px;white-space:nowrap;text-align:right}
.rch-footer .rch-footer-columns .rch-footer-contact{margin-top:16px;padding-top:22px}
@media(max-width:700px){.rch-footer .rch-footer-columns .rch-footer-location{grid-template-columns:105px minmax(0,1fr);gap:4px 12px;padding:12px 0}.rch-footer .rch-footer-columns .rch-footer-location h2{font-size:12px}.rch-footer .rch-footer-location p{font-size:11px}.rch-footer .rch-footer-location>a{grid-column:2;text-align:left;font-size:10px}}

/* Contact information arranged in two horizontal columns. */
.rch-footer .rch-footer-columns .rch-footer-contact{display:block}
.rch-footer-contact>h2{margin:0 0 20px;font-size:12px}
.rch-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.rch-contact-column{min-width:0}
.rch-contact-line{display:flex;align-items:baseline;gap:18px;margin-bottom:10px;line-height:1.8}
.rch-contact-line>span:first-child{flex:0 0 64px;font-size:12px;color:#929eac}
.rch-contact-line a,.rch-contact-line .rch-contact-value{font-size:13px;color:#dce2e9;overflow-wrap:anywhere}
.rch-footer .rch-contact-line .rch-footer-phone{font-size:22px;margin:0}
.rch-contact-column .rch-footer-links{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:18px}
@media(max-width:700px){.rch-contact-grid{gap:20px}.rch-contact-line{display:block;margin-bottom:14px}.rch-contact-line>span:first-child{display:block;margin-bottom:3px;font-size:11px}.rch-contact-line a,.rch-contact-line .rch-contact-value{font-size:12px}.rch-footer .rch-contact-line .rch-footer-phone{font-size:18px}.rch-contact-column .rch-footer-links{gap:8px 14px}}

/* Improve readability of office addresses. */
.rch-footer .rch-footer-location p{font-size:14px;line-height:1.85;color:#c3cbd4}
@media(max-width:700px){.rch-footer .rch-footer-location p{font-size:13px;line-height:1.8}}

/* Match telephone and fax formatting. */
.rch-footer .rch-contact-line .rch-footer-phone,
.rch-footer .rch-contact-line .rch-footer-fax{font-size:22px;font-weight:650;line-height:1.5;letter-spacing:-.02em;color:#fff;margin:0;white-space:nowrap;font-variant-numeric:tabular-nums}
@media(max-width:700px){.rch-footer .rch-contact-line .rch-footer-phone,.rch-footer .rch-contact-line .rch-footer-fax{font-size:18px}}

/* Place the two contact groups side by side. */
.rch-footer .rch-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
@media(max-width:700px){.rch-footer .rch-contact-grid{gap:20px}}

/* Office addresses on the left, contact information on the right. */
.rch-footer .rch-footer-columns{grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:48px;align-items:start}
.rch-footer .rch-footer-offices{min-width:0;padding:0;border:0}
.rch-footer .rch-footer-columns .rch-footer-location{grid-template-columns:110px minmax(0,1fr);gap:3px 16px;padding:0 0 20px}
.rch-footer .rch-footer-location>a{grid-column:2;text-align:left}
.rch-footer .rch-footer-columns .rch-footer-contact{grid-column:auto;margin:0;padding:0 0 0 36px;border-top:0;border-left:1px solid #343c46}
.rch-footer .rch-footer-contact>h2{font-size:14px;margin-bottom:18px}
.rch-footer .rch-contact-grid{grid-template-columns:minmax(0,1fr);gap:10px}
.rch-footer .rch-contact-column .rch-footer-links{margin-top:14px}
@media(max-width:1000px) and (min-width:701px){.rch-footer .rch-footer-columns{grid-template-columns:minmax(0,1.4fr) minmax(240px,1fr);gap:24px}.rch-footer .rch-footer-columns .rch-footer-contact{padding-left:24px}.rch-footer .rch-footer-columns .rch-footer-location{grid-template-columns:100px minmax(0,1fr);gap:4px 12px}}
@media(max-width:700px){.rch-footer .rch-footer-columns{grid-template-columns:minmax(0,1fr);gap:20px}.rch-footer .rch-footer-columns .rch-footer-contact{border-left:0;border-top:1px solid #343c46;padding:24px 0 0}.rch-footer .rch-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}

/* Consistent contact values, with smaller telephone and fax numbers. */
.rch-footer .rch-contact-line a,
.rch-footer .rch-contact-line .rch-contact-value,
.rch-footer .rch-contact-line .rch-footer-phone,
.rch-footer .rch-contact-line .rch-footer-fax{font-size:16px;line-height:1.6}
@media(max-width:700px){.rch-footer .rch-contact-line a,.rch-footer .rch-contact-line .rch-contact-value,.rch-footer .rch-contact-line .rch-footer-phone,.rch-footer .rch-contact-line .rch-footer-fax{font-size:14px}}

/* Match the footer logo and Korean company name in height. */
.rch-footer .rch-footer-brand{align-items:center;gap:14px}
.rch-footer .rch-footer-brand img{width:auto;height:20px;display:block;flex-shrink:0;object-fit:contain}
.rch-footer .rch-footer-brand strong{font-size:18px;line-height:20px}
@media(max-width:600px){.rch-footer .rch-footer-brand{gap:12px}.rch-footer .rch-footer-brand img{height:18px}.rch-footer .rch-footer-brand strong{font-size:16px;line-height:18px}}

/* Equal outer columns: office addresses and CONTACT US. */
@media(min-width:701px){
 .rch-footer .rch-footer-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
}

/* Balanced office and contact halves with a centered divider. */
.rch-footer .rch-footer-contact>h2{font-size:14px;font-weight:600;line-height:1.8;letter-spacing:-.02em;margin:0 0 18px}
@media(min-width:701px){
 .rch-footer .rch-footer-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;align-items:stretch}
 .rch-footer .rch-footer-offices{box-sizing:border-box;padding:0 36px 0 0}
 .rch-footer .rch-footer-columns .rch-footer-contact{box-sizing:border-box;padding:0 0 0 36px;border-left:1px solid #343c46}
 .rch-footer .rch-footer-columns .rch-footer-location:last-child{padding-bottom:0}
}
@media(min-width:701px) and (max-width:1000px){
 .rch-footer .rch-footer-offices{padding-right:24px}
 .rch-footer .rch-footer-columns .rch-footer-contact{padding-left:24px}
}
@media(max-width:700px){
 .rch-footer .rch-footer-offices{padding:0}
 .rch-footer .rch-footer-columns{gap:24px}
 .rch-footer .rch-footer-columns .rch-footer-contact{padding:24px 0 0;border-left:0}
 .rch-footer .rch-footer-contact>h2{margin-bottom:18px}
}
/* Compact footer after removing the extra navigation links. */
.rch-footer{padding:32px 0 18px}
.rch-footer .rch-footer-columns{margin-top:20px}
.rch-footer .rch-footer-columns .rch-footer-location{padding-bottom:10px;align-items:start;gap:2px 16px}
.rch-footer .rch-footer-location p{line-height:1.65}
.rch-footer .rch-footer-contact>h2{margin-bottom:10px}
.rch-footer .rch-contact-grid{gap:4px}
.rch-footer .rch-contact-line{margin-bottom:6px;align-items:baseline}
.rch-footer .rch-contact-line:last-child{margin-bottom:0}
.rch-footer .rch-footer-bottom{margin-top:18px;padding-top:14px}
@media(max-width:700px){
 .rch-footer{padding:26px 0 16px}
 .rch-footer .rch-footer-columns{margin-top:18px;gap:16px}
 .rch-footer .rch-footer-columns .rch-footer-location{padding-bottom:12px;grid-template-columns:90px minmax(0,1fr);gap:2px 12px}
 .rch-footer .rch-footer-columns .rch-footer-location:last-child{padding-bottom:0}
 .rch-footer .rch-footer-columns .rch-footer-contact{padding-top:16px}
 .rch-footer .rch-contact-grid{gap:16px}
 .rch-footer .rch-contact-line{margin-bottom:8px}
 .rch-footer .rch-footer-bottom{margin-top:16px;padding-top:12px}
}

/* Text-only footer identity aligned with the office information. */
.rch-footer .rch-footer-brand{display:block;margin:0;padding:0}
.rch-footer .rch-footer-brand strong{display:block;font-size:18px;line-height:1.4}
.rch-footer .rch-footer-columns{margin-top:16px}
@media(max-width:700px){.rch-footer .rch-footer-brand strong{font-size:16px}}

/* Address-only office rows: consistent space without a directions-link row. */
.rch-footer .rch-footer-columns .rch-footer-location h2{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.5}
.rch-footer .rch-footer-columns .rch-footer-location{padding-bottom:16px;row-gap:4px}
.rch-footer .rch-footer-columns .rch-footer-location:last-child{padding-bottom:0}
.rch-footer .rch-footer-location p{margin:0}
@media(max-width:700px){
 .rch-footer .rch-footer-columns .rch-footer-location{padding-bottom:14px}
 .rch-footer .rch-footer-columns .rch-footer-location:last-child{padding-bottom:0}
}
