/* Continuous additions are isolated from every original page animation. */
.bmt-heading { position: relative; }
.bmt-overlay { position: absolute; inset: 0; display: block; pointer-events: none; user-select: none; -webkit-user-select: none; visibility: hidden; z-index: 2; }
.bmt-line { position: absolute; display: block; overflow: hidden; overflow: clip; contain: paint; }
.bmt-scroll,.bmt-base,.bmt-active-ink { display: block; position: absolute; inset: 0; width: 100%; height: 100%; }
.bmt-glyph { display: block; position: absolute; margin: 0; padding: 0; border: 0; white-space: pre; line-height: normal; text-decoration: none; }
.bmt-glyph::before { content: attr(data-glyph); }
.bmt-glyph.bmt-measuring::before { content: none; }
.bmt-active-ink .bmt-glyph { color: #ff5b1a !important; }
.bmt-active-ink { transform: translate3d(0,110%,0); visibility: hidden; }
.bmt-live { -webkit-text-fill-color: transparent !important; }
.bmt-live .bmt-overlay { visibility: visible; }
.bmt-live .bmt-glyph,.bmt-live .bmt-native-decoration { -webkit-text-fill-color: currentColor !important; }
.bmt-heading::selection,.bmt-heading *::selection { background: #ffd5c2; -webkit-text-fill-color: #242321; }
:is(.brand-about-content,.detail-service,.detail-article) .bm-stage { position: relative; isolation: isolate; perspective: 1050px; }
:is(.brand-about-content,.detail-service,.detail-article) .bm-scroll-layer { display: block; position: relative; width: 100%; transform-origin: 50% 50%; overflow: hidden; overflow: clip; border-radius: inherit; }
:is(.detail-service,.detail-article) :is(.detail-cover,.detail-related-card figure) > .bm-scroll-layer { height: 100%; }
:is(.brand-about-content,.detail-service,.detail-article) .bm-image { position: relative; z-index: 1; transform-origin: 50% 52%; backface-visibility: hidden; transition: none !important; }
:is(.brand-about-content,.detail-service,.detail-article) .bm-active :is(.bm-image,.bm-scroll-layer) { will-change: transform; }
:is(.brand-about-content,.detail-service,.detail-article) .bm-layer { position: absolute; inset: 0; z-index: 2; overflow: hidden; overflow: clip; pointer-events: none; user-select: none; border-radius: inherit; contain: paint; opacity: var(--bm-hover,0); }
.bm-layer > i { display: block; position: absolute; pointer-events: none; }
.bm-layer .bm-halo { inset: 0; background: radial-gradient(ellipse at 78% 23%,rgba(255,150,70,.45),rgba(255,91,26,.08) 36%,transparent 64%); mix-blend-mode: screen; }
.bm-layer .bm-orbit { width: 83%; height: 60%; top: 22%; left: 8.5%; border: 1px solid rgba(255,91,26,.55); border-radius: 50%; opacity: .7; transform: perspective(700px) rotateX(58deg) rotateZ(var(--bm-orbit-angle,-20deg)); }
.bm-layer .bm-orbit::after { content: ""; position: absolute; left: 14%; top: 14%; width: 7px; height: 7px; border-radius: 50%; background: #ff5b1a; box-shadow: 0 0 12px rgba(255,91,26,.3); }
.bm-layer .bm-sheen { inset: -20%; opacity: .22; background: linear-gradient(110deg,transparent 34%,rgba(255,255,255,.65) 49%,rgba(255,174,110,.2) 53%,transparent 64%); transform: translate3d(var(--bm-sheen-x,0%),0,0); mix-blend-mode: screen; }
:is(.brand-about-content,.detail-service,.detail-article) .bm-minor .bm-orbit { display: none; }
:is(.brand-about-content,.detail-service,.detail-article) .bm-limited .bm-sheen { display: none; }
.brand-about-content .bm-stage { overflow: hidden; overflow: clip; }
.brand-about-content .bm-stage figcaption { position: relative; z-index: 3; }
/* A hover/focus state persists until leave; aria-current and open are real UI states. */
.brand-about-content .brand-direction { position: relative; }
.brand-about-content .brand-direction::after { content: ""; position: absolute; top: -1px; left: 0; right: 0; height: 2px; background: #ff5b1a; transform: scaleX(0); transform-origin: 0 50%; transition: transform .55s cubic-bezier(.2,.7,.2,1); pointer-events: none; }
.brand-about-content .brand-direction:where(:hover,:focus-within)::after { transform: scaleX(1); }
.brand-about-content .brand-direction .brand-arrow { transition: transform .5s cubic-bezier(.2,.7,.2,1),color .4s; }
.brand-about-content .brand-direction:where(:hover,:focus-within) .brand-arrow { transform: translate3d(5px,-5px,0); color: #ff5b1a; }
:is(.detail-service,.detail-article) .detail-related-card { position: relative; }
:is(.detail-service,.detail-article) .detail-related-card h3 { transition: color .35s; }
:is(.detail-service,.detail-article) .detail-related-card:where(:hover,:focus-within) h3 { color: #ff5b1a; }
:is(.detail-service,.detail-article) .detail-related-card h3 > span:not(.bmt-overlay) { transition: transform .5s cubic-bezier(.2,.7,.2,1); }
:is(.detail-service,.detail-article) .detail-related-card:where(:hover,:focus-within) h3 > span:not(.bmt-overlay) { transform: translate3d(5px,-5px,0); }
:is(.detail-service,.detail-article) .detail-toc nav a { position: relative; }
:is(.detail-service,.detail-article) .detail-toc nav a::after { content: ""; position: absolute; top: -1px; left: 0; right: 0; height: 2px; background: #ff5b1a; transform: scaleX(0); transform-origin: 0 50%; transition: transform .45s; }
:is(.detail-service,.detail-article) .detail-toc nav a[aria-current="true"]::after { transform: scaleX(1); }
.detail-service .detail-service-menu a[aria-current="page"] { color: #ff5b1a; }
.detail-service .detail-faq[open] { border-top-color: #ff5b1a; }
.detail-service .detail-faq[open] summary { color: #ff5b1a; }
@media(prefers-reduced-motion:reduce) {
  .bmt-live { -webkit-text-fill-color: currentColor !important; }
  .bmt-overlay { display: none !important; }
  :is(.brand-about-content,.detail-service,.detail-article) :is(.bm-image,.bm-scroll-layer) { transform: none !important; clip-path: none !important; will-change: auto !important; }
  :is(.brand-about-content,.detail-service,.detail-article) .bm-layer { display: none !important; }
  .brand-about-content .brand-direction::after,.brand-about-content .brand-arrow,:is(.detail-service,.detail-article) .detail-toc nav a::after { transition: none !important; }
}
@media print {
  .bmt-live { -webkit-text-fill-color: currentColor !important; }.bmt-overlay,.bm-layer { display: none !important; }
  :is(.brand-about-content,.detail-service,.detail-article) :is(.bm-image,.bm-scroll-layer) { transform: none !important; clip-path: none !important; }
}
