/* Figma nodes 878:3584, 878:3844, 893:11823, 893:11873,
   878:6369, 896:5919, 878:6667 and 896:5952. */
:where(.business-page-body, .business-detail-page-body, .about-page-body, .faq-page-body, .cms-page-body) { color: #f5f2f3; background: #0b0b0c; }
:where(.about-page-body, .faq-page-body) { background: #0a0a0a; }
:where(.cms-page-body) { background: #0a0a0a; }
:where(.cms-page-body, .cms-page-body #main-content) { background: #0a0a0a; }
:where(.business-page-body, .business-detail-page-body, .about-page-body, .faq-page-body, .cms-page-body)::-webkit-scrollbar { width: 0; height: 0; }
:where(.business-page-body, .business-detail-page-body, .about-page-body, .faq-page-body, .cms-page-body) .bhome-nav { width: min(calc(100% - 48px), 1440px); }
body.business-page-body .bhome-site-header,
body.business-detail-page-body .bhome-site-header { position: absolute; inset: 0 0 auto; height: 80px; background: #0a0a0a; }
body.about-page-body .bhome-site-header,
body.faq-page-body .bhome-site-header { position: absolute; inset: 0 0 auto; height: 80px; background: #0a0a0a; }
body.cms-page-body .bhome-site-header,
body.cms-page-body .brand-site-header { position: absolute; inset: 0 0 auto; height: 80px; background: #0a0a0a; }
body.faq-page-body #main-content { overflow: visible; }
.business-page, .business-detail-page, .about-page, .faq-page, .cms-page { padding: 0; }
body.business-detail-page-body #main-content { background: #111; }
.about-page, .faq-page { min-height: 100vh; background: #0a0a0a; }
.brand-document-inner { display: contents; }

.about-document { width: 1920px; min-height: 827px; margin: 0 auto; padding: 104px 220px 80px; background: #0a0a0a; }
.about-copy { width: 1480px; min-height: 531px; margin-top: 32px; padding: 24px 28px; border-radius: 16px; color: #f4f0f1; background: #202020; font-size: 18px; font-weight: 500; line-height: 23.4px; white-space: pre-line; }
.about-copy h2 { margin: 0 0 18px; color: #fff; font-size: 18px; }
.about-copy p + p { margin-top: 18px; }

.faq-document { width: 1920px; margin: 0 auto; padding: 184px 220px 80px; background: #0a0a0a; }
.figma-faq-list { margin-top: 32px; display: grid; gap: 32px; }
.figma-faq-item { width: 1480px; padding: 24px 28px; border-radius: 16px; background: #1a1a1a; }
.figma-faq-row { display: grid; grid-template-columns: 28px 1fr; gap: 24px; align-items: start; }
.figma-faq-divider { width: 100%; height: 1px; margin: 16px 0; display: block; background: rgba(255, 255, 255, .06); }
.figma-faq-row b, .figma-faq-answer-label { margin: 0; color: #fff; font-family: Inter, "PingFang SC", "Microsoft YaHei", sans-serif; font-size: 28px; font-weight: 600; line-height: 33.6px; letter-spacing: -.14px; }
.figma-faq-row h2, .figma-faq-row .brand-richtext { min-width: 0; margin: 0; color: #fff; font-family: Inter, "PingFang SC", "Microsoft YaHei", sans-serif; font-size: 14px; font-weight: 500; line-height: 19.6px; overflow-wrap: anywhere; }
.figma-faq-answer .brand-richtext { white-space: pre-line; }
.figma-faq-cta { width: 260px; height: 61px; margin: 32px auto 0; padding: 16px 40px; display: flex; align-items: center; justify-content: center; border-radius: 30.5px; color: #fff; background: #ff6b35; font-family: Inter, "PingFang SC", "Microsoft YaHei", sans-serif; font-size: 18px; font-weight: 500; line-height: 23.4px; white-space: nowrap; }
.figma-faq-cta:hover { color: #fff; background: #ff6b35; }
.figma-faq-cta:focus-visible { outline: 3px solid rgba(255, 255, 255, .72); outline-offset: 3px; }

.cms-page-shell { width: 1920px; min-height: 1259px; margin: 0 auto; padding: 160px 220px 80px; background: #0a0a0a; }
.cms-page-shell .brand-document-title { margin-top: 80px; }
.cms-page-shell .cms-richtext { width: 1480px; margin-top: 40px; padding: 24px 28px; border-radius: 16px; color: #f1edef; background: #202020; font-size: 14px; font-weight: 500; line-height: 19.6px; white-space: pre-line; overflow-wrap: anywhere; }
.cms-page-shell .cms-richtext h2, .cms-page-shell .cms-richtext h3 { margin: 22px 0 8px; color: #fff; font-size: 15px; }
.cms-page-shell .cms-richtext > h3 { margin: 0; color: inherit; font: inherit; }
.cms-page-shell .cms-richtext > h3 + h3 { margin-top: 0; }
.cms-page-shell .cms-richtext p + p { margin-top: 12px; }
.cms-page-shell .cms-richtext ul, .cms-page-shell .cms-richtext ol { margin: 12px 0; padding-left: 24px; }
.cms-page-shell .cms-richtext a { color: #e5a0b7; text-decoration: underline; text-underline-offset: 3px; }

.business-hero { position: relative; width: 1480px; height: 635px; margin: 104px auto 0; overflow: hidden; background: #111; }
.business-hero-figma::after { content: none; display: none; }
.business-hero-track, .business-hero-slide, .business-hero-slide > a, .business-hero-slide picture { width: 100%; height: 100%; }
.business-hero-track { display: flex; transition: transform .5s cubic-bezier(.2, .8, .2, 1); }
.business-hero-slide { flex: 0 0 100%; }
.business-hero-slide > a, .business-hero-slide picture { display: block; }
.business-hero img { width: 100%; height: 100%; display: block; object-fit: cover; }
.business-hero-arrow { width: 60px; height: 60px; border: 0; border-radius: 0; color: #fff; background: transparent; transition: opacity .2s ease; }
.business-hero-arrow.prev { left: 0; }.business-hero-arrow.next { right: 0; }
.business-hero-arrow:hover, .business-hero-arrow:focus-visible { color: #fff; background: transparent; }
.business-hero-arrow:focus-visible { outline: 3px solid #e5a0b7; outline-offset: -3px; }
.business-hero-dots { bottom: 24px; gap: 10px; }
.business-hero-dots .dot { width: 8px; height: 8px; background: rgba(255, 255, 255, .55); transition: width .2s ease, background-color .2s ease; }
.business-hero-dots .dot.active { width: 48px; background: #fff; }
.business-services { width: 1480px; margin: 0 auto; padding: 80px 0 72px; }
.business-services > .brand-document-title { width: 427px; max-width: 100%; }
.business-services > .brand-document-title h1 { white-space: nowrap; }
.business-services > .brand-document-title span { margin-top: 12px; color: #f68804; font-weight: 500; line-height: 14.52px; letter-spacing: 3px; }
.business-service-list { margin-top: 56px; display: grid; grid-template-columns: 1fr; gap: 64px; }
.business-service-card { min-height: 264px; padding: 32px; display: grid; grid-template-columns: 200px minmax(0, 1fr) 52px; gap: 32px; align-items: center; border: 1px solid rgba(229, 160, 183, .28); border-radius: 16px; color: #fff; background: #101011; transition: border-color .2s ease, background-color .2s ease, transform .2s ease; }
.business-service-media { width: 200px; height: 200px; display: block; overflow: hidden; border-radius: 12px; background: #303030; }
.business-service-media img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform .35s cubic-bezier(.2, .8, .2, 1); }
.business-service-copy { min-width: 0; display: block; }
.business-service-heading { display: block; }
.business-service-card h2 { margin: 0; font-size: 24px; font-weight: 600; line-height: 31px; }
.business-service-heading small { margin-top: 6px; display: block; color: #858085; font-size: 12px; font-weight: 400; line-height: 17px; }
.business-service-rule { height: 1px; margin-top: 14px; display: block; background: #302629; }
.business-service-description { max-width: 1120px; margin: 14px 0 0; display: block; color: #aaa4a7; font-size: 13px; font-weight: 400; line-height: 20px; overflow-wrap: anywhere; }
.business-service-arrow { width: 44px; height: 44px; display: grid; place-items: center; justify-self: end; border: 1px solid #503b43; border-radius: 50%; color: #f2edef; }
.business-service-arrow svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.business-service-card:hover { border-color: rgba(229, 160, 183, .58); background: #151315; transform: translateY(-2px); }
.business-service-card:hover .business-service-media img { transform: scale(1.025); }
.business-service-card:focus-visible { outline: 3px solid rgba(229, 160, 183, .72); outline-offset: 4px; }
.business-service-card:focus-visible .business-service-arrow { border-color: #e5a0b7; color: #e5a0b7; }
.business-partners { width: 1920px; height: 810px; margin: 0 auto; padding: 80px 220px; display: flex; flex-direction: column; align-items: center; gap: 40px; background: #111; }
.business-partners .brand-document-title { width: 230px; height: 80px; flex: 0 0 80px; align-items: center; text-align: center; overflow: visible; }
.business-partners .brand-document-title h2 { font-family: Inter, "PingFang SC", "Microsoft YaHei", sans-serif; font-size: 28px; font-weight: 600; line-height: 33.6px; letter-spacing: -.14px; }
.business-partners .brand-document-title span { margin-top: 27px; font-family: Inter, "PingFang SC", "Microsoft YaHei", sans-serif; font-size: 16px; font-weight: 400; line-height: 25.6px; letter-spacing: 0; }
.business-partner-wall { width: 1480px; height: 530px; display: grid; grid-template-columns: repeat(8, 150px); grid-template-rows: repeat(3, 150px); gap: 40px; overflow: hidden; -webkit-mask-image: linear-gradient(90deg, rgba(0, 0, 0, .28), #000 10%, #000 90%, rgba(0, 0, 0, .28)); mask-image: linear-gradient(90deg, rgba(0, 0, 0, .28), #000 10%, #000 90%, rgba(0, 0, 0, .28)); }
.business-partner-wall a { width: 150px; height: 150px; display: block; overflow: hidden; border-radius: 12px; background: #333; }
.business-partner-wall img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform .25s cubic-bezier(.2, .8, .2, 1); }
.business-partner-wall a:hover img { transform: scale(1.025); }
.business-partner-wall a:focus-visible { outline: 3px solid #e5a0b7; outline-offset: -3px; }
.business-detail { width: 1920px; height: 731px; min-height: 0; margin: 0 auto; padding: 144px 220px 40px; background: #111; }
.business-detail .brand-document-title { margin-top: 23px; }
.business-case-list { margin-top: 18px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }.business-case-list article { padding: 20px; border-radius: 24px; background: #202020; }.business-case-list img { width: 100%; aspect-ratio: 295/164; border-radius: 16px; object-fit: cover; }.business-case-list h2 { margin-top: 12px; font-size: 14px; font-weight: 400; line-height: 22.4px; }
.business-case-list a, .business-case-card-content { display: block; color: inherit; }
.business-empty { margin-top: 40px; color: #aaa; text-align: center; }

@media (max-width: 1920px) and (min-width: 861px) {
  .about-document, .faq-document, .cms-page-shell, .business-detail { width: 100%; padding-inline: max(40px, calc((100% - 1480px) / 2)); }
  .about-copy, .figma-faq-item, .cms-page-shell .cms-richtext { width: 100%; }
  .business-hero { width: min(calc(100% - 80px), 1480px); height: auto; aspect-ratio: 1480 / 635; }
  .business-services { width: min(calc(100% - 80px), 1480px); }
  .business-partners { width: 100%; height: auto; padding-inline: max(40px, calc((100% - 1480px) / 2)); }
  .business-partner-wall { width: 100%; height: auto; grid-template-columns: repeat(8, minmax(0, 150px)); grid-template-rows: repeat(3, auto); gap: clamp(16px, 2.08vw, 40px); }
  .business-partner-wall a { width: 100%; height: auto; aspect-ratio: 1; }
}

@media (max-width: 860px) {
  body.business-page-body .bhome-site-header { position: absolute; inset: 0 0 auto; height: 55px; background: transparent; }
  body.business-detail-page-body .bhome-site-header { position: relative; inset: auto; height: 55px; background: #0a0a0a; }
  body.about-page-body .bhome-site-header,
  body.faq-page-body .bhome-site-header { position: relative; inset: auto; height: 55px; background: #0a0a0a; }
  body.cms-page-body .bhome-site-header,
  body.cms-page-body .brand-site-header { position: relative; inset: auto; height: 55px; background: #0a0a0a; }
  :where(.business-page-body, .business-detail-page-body, .about-page-body, .faq-page-body, .cms-page-body) .bhome-nav { height: 55px; }
  :where(.business-page-body, .business-detail-page-body, .about-page-body, .faq-page-body, .cms-page-body) .bhome-nav { width: 100%; }
  :where(.business-page-body, .business-detail-page-body, .about-page-body, .faq-page-body, .cms-page-body) .bhome-nav-toggle { top: 15px; }
  .about-document { width: 100%; min-height: 1147px; padding: 35px 20px 40px; background: #0a0a0a; }
  .about-copy { width: 335px; min-height: 884px; margin: 18px auto 0; padding: 24px 12px; border-radius: 16px; font-size: 14px; font-weight: 400; line-height: 22.4px; overflow-wrap: anywhere; }
  .about-copy h2 { font-size: 14px; line-height: 22.4px; }.about-copy p + p { margin-top: 16px; }

  .faq-document { width: 100%; padding: 35px 20px 40px; background: #0a0a0a; }
  .figma-faq-list { margin-top: 18px; gap: 18px; }
  .figma-faq-item { width: 335px; padding: 24px 12px; border-radius: 16px; }
  .figma-faq-row { grid-template-columns: 28px 1fr; gap: 24px; }
  .figma-faq-row b, .figma-faq-answer-label { font-size: 28px; line-height: 33.6px; }.figma-faq-row h2, .figma-faq-row .brand-richtext { font-size: 14px; font-weight: 400; line-height: 22.4px; }
  .figma-faq-cta { width: 260px; height: 61px; margin-top: 24px; }

  .cms-page-shell { width: 100%; min-height: 1945px; padding: 35px 20px 40px; background: #0a0a0a; }
  .cms-page-shell .brand-document-title { margin-top: 23px; }.cms-page-shell .cms-richtext { width: 335px; margin-top: 18px; padding: 24px 12px; border-radius: 16px; font-size: 14px; font-weight: 400; line-height: 22.4px; }

  .business-hero { width: 100%; height: 653px; margin: 0; aspect-ratio: auto; }.business-hero-arrow { display: none; }.business-hero-dots { bottom: 16px; }.business-hero-dots .dot { width: 6px; height: 6px; }.business-hero-dots .dot.active { width: 24px; }.business-services { width: 100%; padding: 40px 20px; }.business-services > .brand-document-title { width: max-content; max-width: 100%; height: auto; }.business-services > .brand-document-title h1 { font-family: Inter, "PingFang SC", "Microsoft YaHei", sans-serif; }.business-services > .brand-document-title span { margin-top: 6px; font-weight: 500; line-height: 14.52px; letter-spacing: 1.5px; }.business-service-list { margin-top: 18px; grid-template-columns: 1fr; gap: 18px; }
  .business-service-card { position: relative; width: 335px; height: 559px; min-height: 0; padding: 18px; display: block; border: 0; border-radius: 24px; background: #202020; transform: none; }
  .business-service-media { width: 299px; height: 299px; border-radius: 18px; }
  .business-service-copy { height: 212px; padding-top: 12px; }
  .business-service-card h2 { font-size: 22px; line-height: 28.6px; }
  .business-service-heading small { margin-top: 0; color: #e5a0b7; font-size: 12px; line-height: 16.8px; }
  .business-service-rule { margin-top: 12px; }
  .business-service-description { height: 76px; margin: 18px 0 0; display: -webkit-box; overflow: hidden; color: #aaa; font-size: 12px; line-height: 19px; -webkit-box-orient: vertical; -webkit-line-clamp: 4; }
  .business-service-arrow { position: absolute; right: 18px; bottom: 18px; width: 40px; height: 40px; }
  .business-service-card:hover { background: #202020; transform: none; }
  .business-service-card:hover .business-service-media img { transform: none; }
  .business-partners { width: 100%; height: 220px; padding: 40px 20px; display: block; }
  .business-partners .brand-document-title { width: auto; height: auto; }
  .business-partners .brand-document-title h2 { font-size: 24px; line-height: 26.4px; }
  .business-partners .brand-document-title span { margin-top: 10.5px; font-size: 12px; line-height: 19.2px; }
  .business-partner-wall { width: 100%; height: 60px; margin-top: 24px; display: grid; grid-template-columns: repeat(4, 44px); grid-template-rows: 44px; justify-content: space-around; align-items: center; gap: 20px; -webkit-mask-image: none; mask-image: none; }
  .business-partner-wall a { width: 44px; height: 44px; border-radius: 8px; }
  .business-partner-wall a:nth-child(n+5) { display: none; }
  .business-detail { width: 100%; height: auto; min-height: 0; padding: 40px 20px; background: #111; }.business-case-list { grid-template-columns: 1fr; gap: 18px; }.business-case-list article { width: 335px; height: 238px; }.business-case-list img { width: 295px; height: 164px; }
}

@media (prefers-reduced-motion: reduce) {
  .business-hero-track, .business-hero-arrow, .business-hero-dots .dot, .business-service-card, .business-service-media img, .business-partner-wall img { transition: none; }
  .business-service-card:hover { transform: none; }
}
