/* having-hero-whiteout-dynamic-v15 */

/* HAVING v15: white-out hero exit + dynamic content reveal
   Scope: normal subpages only. Excludes index and finished.
   Fixes: remove hero/content seam line, avoid gradient/sheet/buffer, add staged content motion. */
html{scroll-behavior:smooth;}
body{background:#fff;}
.hero-stage{
  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  overflow:visible !important;
  position:relative !important;
  background:#fff !important;
  border:0 !important;
  box-shadow:none !important;
}
.hero-stage::before,
.hero-stage::after{display:none !important;content:none !important;}
.hero-stage .page-hero:not(.fp-page-hero){
  position:relative !important;
  top:auto !important;
  min-height:calc(100svh - var(--page-nav-h, 72px)) !important;
  height:auto !important;
  margin-top:var(--page-nav-h, 72px) !important;
  margin-bottom:0 !important;
  overflow:hidden !important;
  opacity:1 !important;
  transform:none !important;
  isolation:isolate;
  border:0 !important;
  border-bottom:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  --hero-bg-y:0px;
  --hero-bg-scale:1;
  --hero-bg-o:1;
  --hero-text-y:0px;
  --hero-text-o:1;
  --hero-dim-o:.58;
  --hero-white-o:0;
}
.hero-stage .page-hero:not(.fp-page-hero)::before{
  transform:translateY(var(--hero-bg-y)) scale(var(--hero-bg-scale)) !important;
  opacity:var(--hero-bg-o) !important;
  transform-origin:center center;
  will-change:transform, opacity;
  border:0 !important;
}
.hero-stage .page-hero:not(.fp-page-hero)::after{
  z-index:1 !important;
  opacity:1 !important;
  border:0 !important;
  background:
    linear-gradient(rgba(255,255,255,var(--hero-white-o)), rgba(255,255,255,var(--hero-white-o))),
    linear-gradient(to right, rgba(0,0,0,var(--hero-dim-o)), rgba(0,0,0,calc(var(--hero-dim-o) * .58)) 46%, rgba(0,0,0,calc(var(--hero-dim-o) * .24))),
    linear-gradient(to bottom, rgba(0,0,0,.08), rgba(0,0,0,calc(var(--hero-dim-o) + .16))) !important;
  transition:none !important;
  will-change:background;
}
.hero-stage .page-hero:not(.fp-page-hero) > *{z-index:2 !important;}
.hero-stage .page-hero:not(.fp-page-hero) .page-eyebrow,
.hero-stage .page-hero:not(.fp-page-hero) .page-title,
.hero-stage .page-hero:not(.fp-page-hero) .page-lead{
  opacity:var(--hero-text-o) !important;
  transform:translateY(var(--hero-text-y)) !important;
  will-change:opacity, transform;
}
.page-transition-content{
  margin:0 !important;
  padding:0 !important;
  opacity:1 !important;
  transform:none !important;
  background:#fff !important;
  border:0 !important;
  border-top:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
  position:relative !important;
  z-index:1 !important;
  min-height:100svh !important;
}
.page-transition-content::before,
.page-transition-content::after{display:none !important;content:none !important;}
.page-transition-content > *{position:relative;z-index:1;}
.page-transition-content > .s:first-child,
.page-transition-content > .sf:first-child,
.page-transition-content > section:first-child,
.page-transition-content > div:first-child{padding-top:72px !important;}
/* base section reveal */
.page-transition-content > .s,
.page-transition-content > .sf,
.page-transition-content > section,
.page-transition-content > div,
.dyn-reveal{
  opacity:0;
  transform:translateY(26px);
  transition:
    opacity .82s cubic-bezier(.22,1,.36,1),
    transform .82s cubic-bezier(.22,1,.36,1),
    filter .82s cubic-bezier(.22,1,.36,1);
  filter:blur(2px);
  will-change:opacity, transform, filter;
}
.page-transition-content > .s.is-visible,
.page-transition-content > .sf.is-visible,
.page-transition-content > section.is-visible,
.page-transition-content > div.is-visible,
.dyn-reveal.is-visible{
  opacity:1;
  transform:translateY(0);
  filter:blur(0);
}
/* dynamic child reveals: grids/cards/rows/specs */
.dyn-item{
  opacity:0;
  transform:translateY(18px);
  filter:blur(1.5px);
  transition:
    opacity .72s cubic-bezier(.22,1,.36,1),
    transform .72s cubic-bezier(.22,1,.36,1),
    filter .72s cubic-bezier(.22,1,.36,1),
    border-color .24s ease,
    background-color .24s ease;
  transition-delay:var(--dyn-delay, 0ms);
  will-change:opacity, transform, filter;
}
.dyn-item.is-visible{
  opacity:1;
  transform:translateY(0);
  filter:blur(0);
}
/* micro interaction for content cards only */
.app-item, .diff-item, .team-card, .tl-item, .metric, .award-item, .esg-grid > *, .esg-detail-grid > *, .net-grid > *, .form, .inq-wrap, .cd-item{
  transition-property:opacity, transform, filter, border-color, background-color, box-shadow;
}
.app-item:hover, .diff-item:hover, .tl-item:hover, .award-item:hover, .esg-grid > *:hover, .esg-detail-grid > *:hover, .net-grid > *:hover, .cd-item:hover{
  transform:translateY(-3px);
}
@media (max-width:1024px){
  .hero-stage .page-hero:not(.fp-page-hero){min-height:calc(92svh - var(--page-nav-h, 72px)) !important;}
  .page-transition-content > .s:first-child,
  .page-transition-content > .sf:first-child,
  .page-transition-content > section:first-child,
  .page-transition-content > div:first-child{padding-top:62px !important;}
}
@media (max-width:768px){
  .hero-stage .page-hero:not(.fp-page-hero){min-height:calc(88svh - var(--page-nav-h, 72px)) !important;}
  .page-transition-content{min-height:100svh !important;}
  .page-transition-content > .s:first-child,
  .page-transition-content > .sf:first-child,
  .page-transition-content > section:first-child,
  .page-transition-content > div:first-child{padding-top:44px !important;}
  .page-transition-content > .s,
  .page-transition-content > .sf,
  .page-transition-content > section,
  .page-transition-content > div,
  .dyn-reveal{transform:translateY(18px);transition-duration:.66s;filter:blur(1px);}
  .dyn-item{transform:translateY(14px);transition-duration:.58s;filter:blur(1px);}
}
@media (prefers-reduced-motion:reduce){
  .hero-stage .page-hero:not(.fp-page-hero)::before,
  .hero-stage .page-hero:not(.fp-page-hero)::after,
  .hero-stage .page-hero:not(.fp-page-hero) .page-eyebrow,
  .hero-stage .page-hero:not(.fp-page-hero) .page-title,
  .hero-stage .page-hero:not(.fp-page-hero) .page-lead,
  .page-transition-content > .s,
  .page-transition-content > .sf,
  .page-transition-content > section,
  .page-transition-content > div,
  .dyn-reveal,
  .dyn-item{transition:none !important;transform:none !important;opacity:1 !important;filter:none !important;}
}


/* About page company intro update */
.about-intro-copy {
  font-size: 16px;
  font-weight: 300;
  line-height: 1.85;
  color: #555;
  max-width: 680px;
}
.about-intro-copy strong { color:#111; font-weight:600; }
.about-flow {
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1fr;
  align-items: stretch;
  gap: 14px;
  margin-top: 34px;
}
.flow-card {
  background:#F7F7F5;
  border:0.5px solid #e5e5e2;
  border-radius:16px;
  padding:24px 22px;
  min-height:124px;
}
.flow-kicker {
  font-size:10px;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#C75C0F;
  margin-bottom:12px;
}
.flow-title {
  font-size:18px;
  font-weight:700;
  letter-spacing:-.02em;
  color:#111;
  margin-bottom:8px;
}
.flow-desc {
  font-size:13px;
  font-weight:300;
  line-height:1.7;
  color:#777;
}
.flow-arrow {
  display:flex;
  align-items:center;
  justify-content:center;
  color:#C75C0F;
  font-size:24px;
  font-weight:300;
}
.about-capability-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:#e8e8e8;
  border-radius:16px;
  overflow:hidden;
  margin-top:42px;
}
.about-capability {
  background:#fff;
  padding:28px 24px 30px;
  min-height:154px;
}
.about-capability-num {
  font-size:11px;
  font-weight:700;
  letter-spacing:.14em;
  color:#C75C0F;
  margin-bottom:18px;
}
.about-capability-title {
  font-size:17px;
  font-weight:700;
  letter-spacing:-.025em;
  color:#111;
  margin-bottom:10px;
}
.about-capability-text {
  font-size:13px;
  font-weight:300;
  line-height:1.75;
  color:#777;
}
.about-keyline {
  margin-top:34px;
  padding:20px 24px;
  border-left:3px solid #F18B42;
  background:#FAFAF8;
  font-size:14px;
  font-weight:400;
  line-height:1.8;
  color:#444;
}
@media (max-width:1024px){
  .about-flow{grid-template-columns:1fr;gap:10px;}
  .flow-arrow{transform:rotate(90deg);height:24px;}
  .about-capability-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:768px){
  .about-capability-grid{grid-template-columns:1fr;}
  .about-intro-copy{font-size:15px;}
}


/* having-about-history-presence-v57 */

.about-overview-table{
  border-top:1px solid #111;
  margin-top:34px;
}
.about-overview-row{
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  gap:48px;
  padding:28px 0;
  border-bottom:1px solid #e2e2de;
}
.about-overview-row h3{
  font-size:15px;
  font-weight:700;
  letter-spacing:-.02em;
  color:#111;
}
.about-overview-row p{
  font-size:15px;
  font-weight:300;
  line-height:1.85;
  color:#555;
  max-width:760px;
}
.about-history{
  display:grid;
  grid-template-columns:300px minmax(0,1fr);
  gap:72px;
}
.about-history-list{
  border-top:1px solid #111;
}
.about-history-item{
  display:grid;
  grid-template-columns:120px minmax(0,1fr);
  gap:34px;
  padding:24px 0;
  border-bottom:1px solid #e2e2de;
}
.about-history-year{
  font-size:24px;
  font-weight:800;
  letter-spacing:-.04em;
  color:#111;
  line-height:1;
}
.about-history-body h3{
  font-size:18px;
  font-weight:700;
  letter-spacing:-.03em;
  color:#111;
  margin-bottom:8px;
}
.about-history-body p{
  font-size:14px;
  font-weight:300;
  color:#666;
  line-height:1.8;
  max-width:660px;
}

/* MVP Global Presence: stable static version */
.global-presence{
  position:relative;
  background:#ECEAE6;
  overflow:hidden;
  border-top:1px solid #e3e0db;
}
.global-presence::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 74% 30%, rgba(200,96,42,.08), transparent 30%),
    radial-gradient(circle at 26% 82%, rgba(255,255,255,.72), transparent 42%),
    linear-gradient(180deg,#f1f0ed 0%, #ECEAE6 100%);
  pointer-events:none;
}
.global-presence-inner{
  position:relative;
  z-index:4;
  max-width:1440px;
  margin:0 auto;
  padding:96px 52px 110px;
}
.global-presence-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,500px);
  gap:56px;
  align-items:end;
  margin-bottom:48px;
}
.global-presence-kicker{
  font-size:11px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#C75C0F;
  margin-bottom:18px;
}
.global-presence-title{
  font-size:clamp(42px,6vw,82px);
  font-weight:800;
  letter-spacing:-.055em;
  line-height:.92;
  color:#111;
}
.global-presence-copy{
  font-size:16px;
  font-weight:300;
  line-height:1.85;
  color:#666;
}
.presence-list{
  position:relative;
  z-index:7;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:#dcd9d2;
  border:1px solid #dcd9d2;
  border-radius:22px;
  overflow:hidden;
  max-width:920px;
}
.presence-item{
  background:rgba(255,255,255,.72);
  padding:22px 20px;
}
.presence-item .num{
  font-size:28px;
  font-weight:800;
  letter-spacing:-.04em;
  color:#111;
  line-height:1;
  margin-bottom:8px;
}
.presence-item .label{
  font-size:12px;
  font-weight:500;
  color:#8b8b86;
  line-height:1.5;
}
.market-panel{
  margin-top:42px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:2px;
  background:#ddd9d2;
  border:1px solid #ddd9d2;
  border-radius:24px;
  overflow:hidden;
  max-width:1120px;
}
.market-card{
  background:rgba(255,255,255,.76);
  padding:34px 30px 32px;
}
.market-card .region{
  font-size:11px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#C75C0F;
  margin-bottom:16px;
}
.market-card h3{
  font-size:28px;
  font-weight:800;
  letter-spacing:-.045em;
  line-height:1.02;
  color:#111;
  margin-bottom:12px;
}
.market-card p{
  font-size:14px;
  font-weight:300;
  line-height:1.75;
  color:#666;
}
.market-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:20px;
}
.market-tags span{
  display:inline-flex;
  padding:7px 11px;
  border-radius:999px;
  border:1px solid #ddd8cf;
  background:#fff;
  font-size:11px;
  font-weight:700;
  color:#555;
}

.presence-list-three{
  max-width:880px;
}
.presence-list-three .presence-item{
  min-height:150px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

@media (max-width:980px){
  .about-overview-row,
  .about-history,
  .about-history-item,
  .global-presence-head{
    grid-template-columns:1fr;
    gap:18px;
  }
  .about-history{gap:36px;}
  .presence-list{grid-template-columns:1fr;}
  .market-panel{grid-template-columns:1fr;}
}
@media (max-width:720px){
  .global-presence-inner{padding:72px 24px 82px;}
  .presence-list{grid-template-columns:1fr;}
}
@media (max-width:560px){
  .presence-list{grid-template-columns:1fr;}
}

/* having-about-responsive-v57 */

@media (max-width:900px){
  .page-transition-content section div[style*="grid-template-columns:repeat(3,1fr)"]{
    grid-template-columns:1fr !important;
  }
}

/* having-v93-about-nohero-guard */

.hero-stage,
.page-hero{
  display:none !important;
  height:0 !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
}
main,
.about-main,
.company-intro,
.about-company,
.global-presence-section{
  scroll-margin-top:72px;
}
body{
  background:#fff;
}

/* having-v94-about-visible-fix */

/* v94: About page must be visible after hero removal. Do not alter section layout/paddings. */
.page-transition-content,
.page-transition-content > .s,
.page-transition-content > .sf,
.page-transition-content > section,
.page-transition-content > div,
.dyn-reveal,
.dyn-item,
.rr{
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  filter:none !important;
  pointer-events:auto !important;
}
.page-transition-content{
  display:block !important;
  background:#fff !important;
}

/* rb-redesign */

/* ===== Redesigned body sections (about/esg), aligns to site hero-text indent ===== */
.page-transition-content > section.rb-band{opacity:1 !important;visibility:visible !important;transform:none !important;filter:none !important;margin-left:42px !important;margin-right:42px !important;max-width:none !important;}
.rb-band{background:#fff;}
.rb-wrap{padding:84px 56px;}
.rb-band--beige{background:#F7F7F5;border-radius:24px;margin-top:10px !important;margin-bottom:10px !important;}
.rb-band--ink{background:#111;color:#fff;border-radius:24px;margin-top:10px !important;margin-bottom:10px !important;}
.rb-band--beige > .rb-wrap,.rb-band--ink > .rb-wrap{padding:72px 56px;}
.rb-eyebrow{font-size:12px;font-weight:600;letter-spacing:0.16em;text-transform:uppercase;color:#C75C0F;margin:0 0 18px;}
.rb-h2{font-size:clamp(28px,3.6vw,44px);font-weight:700;letter-spacing:-0.03em;line-height:1.1;color:#111;margin:0 0 22px;}
.rb-band--ink .rb-h2{color:#fff;}
.rb-lead{font-size:16px;font-weight:300;line-height:1.75;color:#5a5a5a;max-width:640px;margin:0;}
.rb-band--ink .rb-lead{color:#bdbdbd;}
.rb-split{display:grid;grid-template-columns:minmax(240px,340px) 1fr;gap:60px;align-items:start;}
.rb-split__head{position:sticky;top:96px;}
.rb-defs{display:flex;flex-direction:column;}
.rb-def{display:grid;grid-template-columns:160px 1fr;gap:32px;padding:22px 0;border-top:1px solid #ececec;}
.rb-def:last-child{border-bottom:1px solid #ececec;}
.rb-def__k{font-size:14px;font-weight:600;color:#111;letter-spacing:-0.01em;}
.rb-def__v{font-size:15px;font-weight:300;line-height:1.7;color:#5a5a5a;}
.rb-head{max-width:720px;margin:0 0 52px;}
.rb-grid{display:grid;gap:22px;}
.rb-grid--3{grid-template-columns:repeat(3,1fr);}
.rb-grid--4{grid-template-columns:repeat(4,1fr);}
.rb-card{border:1px solid #e8e8e8;border-radius:16px;padding:30px 28px;background:#fff;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;}
.rb-card:hover{transform:translateY(-3px);border-color:#d8d8d8;box-shadow:0 14px 40px rgba(0,0,0,.06);}
.rb-card__num{font-size:13px;font-weight:600;letter-spacing:0.08em;color:#C75C0F;margin:0 0 16px;}
.rb-card__title{font-size:19px;font-weight:700;letter-spacing:-0.02em;color:#111;margin:0 0 12px;}
.rb-card__text{font-size:14px;font-weight:300;line-height:1.7;color:#5f5f5f;margin:0;}
.rb-flow{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #e8e8e8;border-radius:18px;overflow:hidden;background:#fff;}
.rb-stage{position:relative;padding:38px 32px;}
.rb-stage + .rb-stage{border-left:1px solid #ececec;}
.rb-stage__badge{width:44px;height:44px;border-radius:50%;background:#FBEFE6;color:#C75C0F;font-size:17px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-bottom:20px;}
.rb-stage__label{font-size:11px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:#C75C0F;margin:0 0 10px;}
.rb-stage__title{font-size:20px;font-weight:700;letter-spacing:-0.02em;color:#111;line-height:1.15;margin:0 0 14px;}
.rb-stage__text{font-size:14px;font-weight:300;line-height:1.7;color:#5f5f5f;margin:0;}
.rb-timeline{display:flex;flex-direction:column;border-top:1px solid #e2e2e2;}
.rb-tl{display:grid;grid-template-columns:88px 1fr;gap:28px;padding:24px 0;border-bottom:1px solid #ececec;transition:background-color .2s ease;}
.rb-tl:hover{background:#fafafa;}
.rb-tl__year{font-size:19px;font-weight:700;color:#111;letter-spacing:-0.01em;}
.rb-tl__title{font-size:16px;font-weight:600;color:#111;margin:0 0 8px;letter-spacing:-0.01em;}
.rb-tl__text{font-size:14px;font-weight:300;line-height:1.7;color:#5f5f5f;margin:0;}
.rb-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px;}
.rb-stat{border:1px solid #e3e3e0;border-radius:14px;padding:28px 26px;background:#fff;}
.rb-stat__num{font-size:clamp(28px,3.2vw,38px);font-weight:700;letter-spacing:-0.03em;color:#111;margin:0 0 6px;}
.rb-stat__lbl{font-size:13px;font-weight:300;color:#777;margin:0;}
.rb-statebox{border:1px solid #e8e8e8;border-radius:16px;background:#F7F7F5;padding:32px 30px;}
.rb-statebox__h{font-size:11px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:#C75C0F;margin:0 0 18px;}
.rb-statebox ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:15px;}
.rb-statebox li{position:relative;padding-left:22px;font-size:14.5px;font-weight:300;line-height:1.65;color:#444;}
.rb-statebox li::before{content:"";position:absolute;left:0;top:9px;width:7px;height:7px;border-radius:50%;background:#F18B42;}
.rb-pillar{border:1px solid #e8e8e8;border-radius:16px;padding:32px 28px;background:#fff;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;}
.rb-pillar:hover{transform:translateY(-3px);border-color:#d8d8d8;box-shadow:0 14px 40px rgba(0,0,0,.06);}
.rb-pillar__tag{font-size:11px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:#C75C0F;margin:0 0 16px;}
.rb-pillar__title{font-size:20px;font-weight:700;letter-spacing:-0.02em;color:#111;line-height:1.15;margin:0 0 14px;}
.rb-pillar__text{font-size:14px;font-weight:300;line-height:1.7;color:#5f5f5f;margin:0 0 20px;}
.rb-pillar ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;}
.rb-pillar li{position:relative;padding-left:20px;font-size:13.5px;font-weight:300;line-height:1.6;color:#555;}
.rb-pillar li::before{content:"";position:absolute;left:0;top:7px;width:6px;height:6px;border-radius:2px;background:#F18B42;}
.rb-cta{text-align:center;}
.rb-cta .rb-lead{margin:0 auto 30px;text-align:center;}
.rb-btn{display:inline-flex;align-items:center;gap:8px;background:#F18B42;color:#fff;font-size:14px;font-weight:600;padding:15px 30px;border-radius:40px;text-decoration:none;transition:background-color .2s ease,transform .2s ease;}
.rb-btn:hover{background:#a94e20;transform:translateY(-2px);}
@media (max-width:980px){
  .rb-split{grid-template-columns:1fr;gap:34px;}
  .rb-split__head{position:static;}
  .rb-grid--4{grid-template-columns:repeat(2,1fr);}
  .rb-flow{grid-template-columns:1fr;}
  .rb-stage + .rb-stage{border-left:0;border-top:1px solid #ececec;}
}
@media (max-width:760px){
  .page-transition-content > section.rb-band{margin-left:22px !important;margin-right:22px !important;}
  .rb-wrap{padding:56px 22px;}
  .rb-band--beige > .rb-wrap,.rb-band--ink > .rb-wrap{padding:48px 22px;}
  .rb-grid--3,.rb-grid--4,.rb-stats{grid-template-columns:1fr;}
  .rb-def{grid-template-columns:1fr;gap:6px;}
  .rb-tl{grid-template-columns:60px 1fr;gap:16px;}
}
@media (prefers-reduced-motion:reduce){
  .rb-card,.rb-pillar,.rb-btn,.rb-tl{transition:none;}
  .rb-card:hover,.rb-pillar:hover,.rb-btn:hover{transform:none;}
}

/* rb-cta2 */

.rb-cta2-band{
  position:relative;overflow:hidden;
  background:linear-gradient(180deg,#f6f6f5 0%,#ececeb 100%) !important;
  border:1px solid rgba(17,17,17,.05) !important;
  border-radius:28px !important;
  margin:10px 20px 88px !important;
}
.rb-cta2-band::before{
  content:"";position:absolute;inset:-35%;z-index:0;pointer-events:none;
  background:
    radial-gradient(42% 42% at 28% 30%, rgba(200,96,42,.07), transparent 72%),
    radial-gradient(46% 46% at 72% 66%, rgba(120,168,122,.07), transparent 72%),
    radial-gradient(40% 40% at 58% 24%, rgba(150,150,150,.10), transparent 70%);
  filter:blur(34px);
  animation:rbGlow 20s ease-in-out infinite alternate;
}
@keyframes rbGlow{
  0%{transform:translate(0,0) scale(1) rotate(0deg);}
  50%{transform:translate(5%,3%) scale(1.12) rotate(5deg);}
  100%{transform:translate(-3%,-2%) scale(1.06) rotate(-4deg);}
}
.rb-cta2{position:relative;z-index:1;max-width:880px;margin:0 auto;padding:92px 40px 100px;text-align:center;}
.rb-cta2__eyebrow{font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#b5541f;margin:0 0 18px;}
.rb-cta2__title{font-size:clamp(32px,4.4vw,56px);font-weight:700;letter-spacing:-.03em;line-height:1.04;color:#1a1a1a;margin:0 0 40px;}
.rb-cta2__bar{
  position:relative;display:flex;align-items:center;gap:14px;
  width:100%;max-width:600px;margin:0 auto;
  background:rgba(255,255,255,.45);
  -webkit-backdrop-filter:blur(18px) saturate(1.5);
  backdrop-filter:blur(18px) saturate(1.5);
  border:1px solid rgba(255,255,255,.65);
  border-radius:999px;padding:9px 9px 9px 28px;
  box-shadow:0 14px 44px rgba(17,17,17,.10),0 2px 8px rgba(17,17,17,.05);
  text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease;
}
.rb-cta2__bar:hover{transform:translateY(-2px);background:rgba(255,255,255,.6);box-shadow:0 20px 56px rgba(17,17,17,.14),0 3px 12px rgba(17,17,17,.06);}
.rb-cta2__ph{flex:1 1 auto;text-align:left;color:#5f5b56;font-size:16px;font-weight:500;}
.rb-cta2__go{flex:0 0 auto;width:50px;height:50px;border-radius:50%;background:#1a1a1a;color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;transition:background-color .18s ease;}
.rb-cta2__bar:hover .rb-cta2__go{background:#F18B42;}
@media(max-width:760px){
  .rb-cta2-band{margin:10px 16px 64px !important;}
  .rb-cta2{padding:60px 20px 70px;}
  .rb-cta2__bar{max-width:none;padding-left:22px;}
  .rb-cta2__ph{font-size:15px;}
  .rb-cta2__go{width:44px;height:44px;font-size:18px;}
}
@media (prefers-reduced-motion:reduce){
  .rb-cta2-band::before{animation:none;}
  .rb-cta2__bar,.rb-cta2__go{transition:none;}
}

/* having-v104-about-global-presence-actual-fix */

/* v104: actual About Global Presence class repair. */
.global-presence{
  background:#ECEAE6 !important;
  overflow:hidden !important;
  border-top:1px solid #e3e0db !important;
}
.global-presence-inner{
  max-width:none !important;
  width:100% !important;
  margin:0 !important;
  padding:76px 52px 86px !important;
  box-sizing:border-box !important;
}
.global-presence-head{
  display:grid !important;
  grid-template-columns:minmax(520px,.92fr) minmax(420px,.78fr) !important;
  gap:56px !important;
  align-items:end !important;
  margin:0 0 34px !important;
}
.global-presence-kicker{
  margin:0 0 14px !important;
  color:#C75C0F !important;
  font-size:11px !important;
  font-weight:800 !important;
  letter-spacing:.16em !important;
  text-transform:uppercase !important;
}
.global-presence-title{
  margin:0 !important;
  max-width:760px !important;
  font-size:clamp(58px,5.8vw,98px) !important;
  line-height:.9 !important;
  letter-spacing:-.07em !important;
  color:#111 !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
}
.global-presence-copy{
  margin:0 !important;
  max-width:620px !important;
  font-size:16px !important;
  line-height:1.78 !important;
  color:#666 !important;
  align-self:end !important;
}
.presence-list{
  max-width:none !important;
  width:100% !important;
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:1px !important;
  border-radius:22px !important;
}
.presence-item{
  min-height:132px !important;
  padding:24px 28px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
}
.presence-item .num{
  font-size:32px !important;
}
@media(max-width:980px){
  .global-presence-inner{
    padding:64px 28px 72px !important;
  }
  .global-presence-head{
    grid-template-columns:1fr !important;
    gap:22px !important;
  }
  .global-presence-title{
    font-size:clamp(48px,11vw,82px) !important;
  }
  .presence-list{
    grid-template-columns:1fr !important;
  }
}


/* ===== 라인아트 지구본 + 스크롤 연동 화살표 ===== */
.rb-globe{position:relative;width:100%;margin-top:14px;height:clamp(190px,22vw,300px);overflow:hidden;pointer-events:none;}
.rb-globe .gl-svg{position:absolute;left:50%;top:0;transform:translateX(-50%);width:min(1200px,132%);height:100%;display:block;}
.rb-globe .gl-line{fill:none;stroke:#d9d4cc;stroke-width:1;vector-effect:non-scaling-stroke;}
.rb-globe .gl-edge{fill:none;stroke:#bdb6ab;stroke-width:1.4;vector-effect:non-scaling-stroke;}
.rb-globe .gl-path{fill:none;stroke:#F18B42;stroke-width:1.8;stroke-linecap:round;vector-effect:non-scaling-stroke;opacity:.9;}
.rb-globe .gl-head{fill:#F18B42;opacity:0;}
.rb-globe .gl-dot{fill:#F18B42;opacity:0;}
.rb-globe .gl-kr-map{fill:#F18B42;stroke:#F18B42;stroke-width:.6;stroke-linejoin:round;}
.rb-globe .gl-kr-halo{fill:#F18B42;opacity:.10;}
.rb-globe .gl-kr{opacity:0;transform-box:fill-box;transform-origin:center;}

.rb-globe .gl-orig-dot{fill:#F18B42;}
.rb-globe .gl-orig-ring{fill:none;stroke:#F18B42;stroke-width:1.4;opacity:.45;}

.rb-globe .gl-arrow{opacity:.95;}
@media (prefers-reduced-motion:reduce){
  .rb-globe .gl-head{opacity:1;}
}
@media (max-width:640px){
  .rb-globe{margin-top:30px;}
}
/* 좁은 화면: 화살표가 잘리지 않도록 전체를 맞춰 보여줌 */
.rb-globe.is-narrow{height:auto;aspect-ratio:1200/330;}
.rb-globe.is-narrow .gl-svg{width:100%;height:100%;left:0;top:0;transform:none;}


/* 리드 문장 내 강조 */
.rb-lead .rb-hl{font-weight:800;color:#111;white-space:nowrap;border-bottom:2px solid #F18B42;padding-bottom:1px;}

/* 넓은 화면: 지구본을 위로 당겨 오른쪽 열 공백을 줄임 */
@media (min-width:821px){
  .rb-globe{margin-top:-96px;}
}
