/* Shared masthead and main-screen proportions from the JJTOOLS reference. */
.jj-site #header.site-header {
  --header-height: 104px;
  height: var(--header-height);
  background: transparent;
  color: #fff;
  border-bottom: 1px solid rgba(255,255,255,.2);
  transition: height .2s ease, background .2s ease, color .2s ease, transform .2s ease-in-out;
}
.jj-site.is-home #header.site-header { border-bottom: 0; }
.jj-site #header.site-header .header-bottom {
  max-width: 1860px;
  margin: 0 auto;
  padding: 0 20px;
  gap: 0;
  color: inherit;
}
.jj-site #header .site-logo {
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
  width: 227px;
  margin: 0;
  transition: width .2s ease;
}
.jj-site #header .logo-light { display: block; }
.jj-site #header .logo-dark { display: none; }
.jj-site #header .site-navigation {
  flex: 0 1 auto;
  width: auto;
  height: 100%;
  margin: 0;
  padding: 0 80px 0 350px;
}
.jj-site #header .site-navigation > ul { gap: 0; justify-content: flex-start; }
.jj-site #header .nav-group { padding: 0 35px; flex: 0 0 auto; }
.jj-site #header .nav-title {
  font-family: 'JJ Sans',sans-serif;
  font-size: 23px;
  font-weight: 500;
  line-height: 1;
  height: 100%;
  padding: 0 5px;
  letter-spacing: 0;
  position: relative;
  color: rgba(255,255,255,.9);
  transition: transform .2s ease, color .2s ease;
}
.jj-site #header .order-link {
  display: block;
  margin-left: auto;
  padding: 8px 0;
  border: 0;
  border-radius: 0;
  font-size: 14px;
}
.jj-site #header .language-select { margin-left: 30px; min-width: 55px; font-size: 12px; }
.jj-site #header .language-select summary { min-height: 32px; }
.jj-site #header .language-select ul { top: 100%; }
.jj-site #header .menu-toggle { display: none; }

/* The hover area includes its panel, keeping it open while crossing into it. */
.jj-site #header .nav-dropdown {
  display: none;
  width: 200px;
  min-width: 200px;
  top: calc(100% - 5px);
  left: 50%;
  transform: translateX(-50%);
  margin: 0;
  padding: 0;
  border-top: 5px solid #aee008;
  border-radius: 0;
  box-shadow: none;
  background: rgba(0,0,0,.7);
  color: #fff;
  text-align: center;
  z-index: 20;
}
.jj-site #header .nav-dropdown li { position: relative; border-top: 1px solid rgba(51,51,51,.7); }
.jj-site #header .nav-dropdown a {
  display: block;
  padding: 12px 10px;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  word-break: keep-all;
  color: #fff;
  transition: background .15s ease;
}
.jj-site #header .nav-dropdown a:hover,
.jj-site #header .nav-dropdown a:focus-visible,
.jj-site #header .nav-has-children:focus-within > a { background: #000; color: #fff; }
.jj-site #header .nav-submenu-link { padding-right: 25px; padding-left: 25px; }
.jj-site #header .nav-submenu-indicator { position: absolute; right: 10px; top: 50%; transform: translateY(-50%); font-size: 11px; }
.jj-site #header .nav-submenu { display: none; position: absolute; left: 100%; top: -1px; width: 200px; background: rgba(6,6,6,.7); }
.jj-site #header .nav-submenu li { border-color: rgba(76,76,76,.7); }
.jj-site #header .nav-group:not(.nav-dismissed):is(:hover,:focus-within,.nav-open) > .nav-dropdown,
.jj-site #header .nav-has-children:not(.nav-dismissed):is(:hover,:focus-within,.nav-open) > .nav-submenu { display: block; }
@media (min-width:1200px) {
  .jj-site:not(.is-home) #header.site-header { --header-height: 105px; }
  .jj-site #header.site-header:is(.scrolled,:has(.nav-group:not(.nav-dismissed):is(:hover,:focus-within,.nav-open))) {
    --header-height: 56px;
    background: rgba(255,255,255,.9);
    color: #333;
    border-bottom: 1px solid rgba(0,0,0,.1);
  }
  .jj-site.is-home #header.site-header.section-header-hidden { transform: translateY(-100%); }
  .jj-site #header:is(.scrolled,:has(.nav-group:not(.nav-dismissed):is(:hover,:focus-within,.nav-open))) .site-logo { width: 150px; }
  .jj-site #header:is(.scrolled,:has(.nav-group:not(.nav-dismissed):is(:hover,:focus-within,.nav-open))) .logo-light { display: none; }
  .jj-site #header:is(.scrolled,:has(.nav-group:not(.nav-dismissed):is(:hover,:focus-within,.nav-open))) .logo-dark { display: block; }
  .jj-site #header:is(.scrolled,:has(.nav-group:not(.nav-dismissed):is(:hover,:focus-within,.nav-open))) .nav-title { color: #333; transform: scale(.8); }
  .jj-site #header .nav-group:not(.nav-dismissed):is(:hover,:focus-within,.nav-open) > .nav-title:before { content: ''; position: absolute; width: 5px; height: 5px; border-radius: 50%; background: currentColor; left: calc(50% - 2.5px); top: 6px; }
}
@media (min-width:1200px) and (max-width:1300px) {
  .jj-site #header .site-navigation { padding-left: 260px; }
  .jj-site #header .nav-group { padding-right: 25px; padding-left: 25px; }
}

/* The source video keeps its native 1920x1080 frame and is cropped from the top. */
.jj-site .hero-backdrop:after { content: none; }
.jj-site .home-endmills { background: transparent; }
/* Static pages do not run the original thumbnail reveal script. */
.jj-site .main_section03__inner .thumb_fig img { opacity: 1; }
.jj-site .hero-backdrop video { width: auto; height: auto; min-width: 100%; min-height: 100%; max-width: none; left: 50%; top: 0; right: auto; bottom: auto; transform: translateX(-50%); object-fit: fill; }
.jj-site .home-hero { min-height: 0; height: 100svh; padding: 0; display: flex; align-items: center; }
.jj-site .home-hero .section_tit_inner {
  width: 100%;
  max-width: 1742px;
  flex: 0 0 auto;
  margin: 370px auto 0 !important;
  padding: 110px !important;
}
.jj-site .home-hero .main_section01_tit { font-size: 80px; line-height: 1.3; font-weight: 700; letter-spacing: 0; }
.jj-site .home-hero .hero-tagline { font-size: 25px; line-height: 1.8; margin-top: 30px !important; color: rgba(255,255,255,.8); }
.jj-site .hero-tools { right: 80px; bottom: 60px; left: auto; gap: 30px; }
.jj-site .hero-tools a { transition: none; }
.jj-site .hero-tools a:hover { transform: none; }
.jj-site .hero-tools a:nth-child(1) { width: 163px; }
.jj-site .hero-tools a:nth-child(2) { width: 185px; }
.jj-site .hero-tools a:nth-child(3) { width: 214px; }
.jj-site .scroll-cue { left: 50%; bottom: 40px; }
.jj-site .video-control { left: max(30px,calc((100vw - 1742px)/2 + 110px)); bottom: 35px; }
.jj-site .social-rail { top: 50%; margin-top: 50px; transform: translateY(-50%); width: 50px; transition: transform .2s ease, opacity .2s ease, visibility .2s; }
.jj-site:not(.is-home) .social-rail { display: none; }
.jj-site.is-home .social-rail.is-section-hidden { opacity: 0; visibility: hidden; transform: translate(-100%,-50%); pointer-events: none; }
.jj-site .social-rail-links { display: flex; flex-direction: column; }
.jj-site .social-rail-links[hidden] { display: none; }
.jj-site .social-rail-links > a { width: 50px; height: 160px; padding: 15px 10px; border-top: 1px solid #ffffff80; justify-content: space-between; }
.jj-site .social-rail-links > a:first-child { background: linear-gradient(to right,#2698cc,#2cb94c); background-size: 300% 100%; animation: social-rail-gradient 3s ease alternate infinite; }
.jj-site .social-rail:is(.is-section-hidden,.is-collapsed) .social-rail-links > a:first-child { animation-play-state: paused; }
@keyframes social-rail-gradient { 0%,100% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } }
@media (prefers-reduced-motion: reduce) { .jj-site .social-rail { transition: none; } .jj-site .social-rail-links > a:first-child { animation: none; } }
.jj-site .social-rail span { display: block; }
.jj-site .social-rail-toggle { position: absolute; bottom: 100%; left: 0; width: 50px; height: 50px; padding: 0; border: 0; color: #aee008; background: #090f13 url('original/_skin/img/main/ico_quick_arrow_left.png') no-repeat center/10px; font: 28px/1 Arial,sans-serif; }
.jj-site .social-rail-toggle[aria-expanded="false"] { background-image: url('original/_skin/img/main/ico_quick_arrow_right.png'); }
.jj-site .social-rail-toggle span { display: none; }
.jj-site .social-rail.is-collapsed { height: 480px; transform: translateY(-50%); pointer-events: none; }
.jj-site .social-rail.is-collapsed .social-rail-toggle { pointer-events: auto; }
.jj-site .section-position { --position-ink: 255,255,255; right: 60px; bottom: 130px; width: 75px; gap: 0; color: rgba(var(--position-ink),.5); transition: right .5s ease, opacity .5s ease; }
.jj-site .section-position.on-light { --position-ink: 0,0,0; }
.jj-site .section-position.at-footer { right: -100px; opacity: 0; pointer-events: none; }
.jj-site .section-position-current { position: absolute; right: calc(100% + 20px); top: -15px; width: max-content; max-width: 220px; font-family: 'NanumSquare',sans-serif; font-size: 18px; font-weight: 700; line-height: 1.3; pointer-events: none; }
.jj-site .section-position-current [data-section-number] { display: block; margin-bottom: 15px; }
.jj-site .section-position-current [data-section-name] { display: block; white-space: pre-line; }
.jj-site .section-position-controls { display: grid; gap: 10px; }
.jj-site .section-position button { display: grid; place-items: center; width: 75px; height: 75px; padding: 0; border-radius: 50%; background-color: rgba(var(--position-ink),.1); background-position: center; background-repeat: no-repeat; color: #fff; transition: background-color .2s; }
.jj-site .section-position button[data-section-direction="-1"] { background-image: url('original/_skin/img/main/full_nav_up_btn.png'); }
.jj-site .section-position button[data-section-direction="1"] { background-image: url('original/_skin/img/main/full_nav_down_btn.png'); }
.jj-site .section-position button:is(:hover,:focus-visible) { background-color: rgba(var(--position-ink),.3); }
.jj-site .section-position button:disabled { cursor: default; opacity: .5; }
.jj-site .section-position button span { display: none; }
.jj-site .section-position-dots { display: flex; flex-direction: column; align-items: center; gap: 19px; padding: 19px 0; }
.jj-site .section-position-dots a { width: 31px; height: 31px; display: grid; place-items: center; }
.jj-site .section-position i { width: 11px; height: 11px; margin: -3px 0 0 -3px; opacity: 1; background: rgba(var(--position-ink),.1); transition: background .2s; }
.jj-site .section-position .active i { background: rgba(var(--position-ink),.3); }
.jj-site .section-position-dots a:hover i { background: rgba(var(--position-ink),.5); }
.jj-site .section-position :is(a,button):focus-visible { outline: 2px solid #7ca500; outline-offset: 3px; }
/* Keep the original 3D map and its transparent animation frames aligned. */
.jj-site .home-global { scroll-margin-top: -100px; }
.jj-site .home-global .global-map { width: 100%; height: auto; aspect-ratio: 1920 / 950; }
.jj-site .global-map-arrows { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 2; pointer-events: none; }
.jj-site .home-global .map-overlay { z-index: auto; opacity: 1; transition: none; }
.jj-site .home-global .map-overlay img { opacity: 0; transition: opacity .2s; }
.jj-site .home-global .map-overlay img:first-child { z-index: 1; }
.jj-site .home-global .map-overlay img:last-child { z-index: 3; }
.jj-site .home-global .map-point:is(:hover,:focus-visible) + .map-overlay img { opacity: 1; }
.jj-site .home-global.map-motion-ready:not(.map-in-view) .global-map-arrows { opacity: 0; }
.jj-site .home-global .global-caption { top: 46%; left: 48.1%; width: 23.125%; }
.jj-site .home-global .map-point { width: 2.2%; height: 4.5%; padding: 0; margin: 0; transform: translate(-50%,-50%) rotateX(49deg); }
.jj-site .home-global .map-point span { background: #80b52b; border: clamp(2px,.25vw,5px) solid #b6d976; box-shadow: none; animation: none; }
.jj-site .home-global .map-point:focus-visible { outline: 2px solid #527900; outline-offset: 4px; }
@media (min-width:1200px) and (max-height:600px) {
  .jj-site .section-position { bottom: 24px; }
  .jj-site .section-position button { width: 54px; height: 54px; }
  .jj-site .section-position-dots a { height: 34px; }
}
@media (max-width:1600px) {
  .jj-site .hero-tools { right: 30px; bottom: 40px; }
  .jj-site .scroll-cue { left: 30px; transform: none; }
}
@media (max-width:1375px) { .jj-site .home-hero .section_tit_inner { padding-right: 40px !important; } }
@media (max-height:900px), (max-width:1199px) {
  .jj-site .home-hero .section_tit_inner { margin-top: 0 !important; }
  .jj-site .scroll-cue { display: none; }
}
@media (max-height:767px) {
  .jj-site .social-rail-links > a { height: 50px; padding: 0; justify-content: center; }
  .jj-site .social-rail span,.jj-site .social-rail-toggle { display: none; }
}

/* Touch layouts show all navigation levels in a scrollable menu. */
@media (max-width:1199px) {
  .jj-site #header.site-header { --header-height: 80px; }
  .jj-site #header.site-header:is(.menu-open,.scrolled) { background: #fff; color: #333; border-color: #ddd; }
  .jj-site #header .site-logo { width: 180px; }
  .jj-site #header:is(.menu-open,.scrolled) .logo-light { display: none; }
  .jj-site #header:is(.menu-open,.scrolled) .logo-dark { display: block; }
  .jj-site #header .site-navigation { display: none; position: fixed; inset: 80px 0 0; width: 100%; height: calc(100dvh - 80px); padding: 15px 30px 80px; overflow-y: auto; background: #fff; color: #222; }
  .jj-site #header.menu-open .site-navigation { display: block; }
  .jj-site #header .site-navigation > ul { display: block; height: auto; }
  .jj-site #header .nav-group { display: block; padding: 16px 0; border-bottom: 1px solid #e5e5e5; }
  .jj-site #header .nav-title { height: auto; padding: 5px 0 10px; color: #222; font-size: 22px; line-height: 1.5; transform: none; }
  .jj-site #header .nav-title:before { display: none; }
  .jj-site #header .nav-dropdown,
  .jj-site #header .nav-group:not(.nav-dismissed):is(:hover,:focus-within,.nav-open) > .nav-dropdown { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); position: static; width: 100%; min-width: 0; transform: none; background: none; border: 0; text-align: left; gap: 0 20px; }
  .jj-site #header .nav-dropdown li { border: 0; }
  .jj-site #header .nav-dropdown a { color: #666; background: transparent; padding: 8px 0; font-size: 14px; }
  .jj-site #header .nav-dropdown a:hover,.jj-site #header .nav-dropdown a:focus-visible { color: #547800; background: #f4f7ed; }
  .jj-site #header .nav-submenu { display: block; position: static; width: auto; padding-left: 12px; background: none; border-left: 1px solid #d8e4b3; }
  .jj-site #header .nav-submenu a { font-size: 13px; }
  .jj-site #header .nav-submenu-indicator { display: none; }
  .jj-site #header .order-link { display: none; }
  .jj-site #header .language-select { margin-left: auto; margin-right: 24px; }
  .jj-site #header .menu-toggle { display: block; width: 26px; flex-shrink: 0; }
  .jj-site .home-hero .main_section01_tit { font-size: 60px; }
  .jj-site .home-hero .hero-tagline { font-size: 21px; }
  .jj-site .section-position { display: none; }
}
@media (max-width:767px) {
  html { scroll-padding-top: 55px; }
  .jj-site .home-global { scroll-margin-top: -55px; }
  .jj-site #header.site-header { --header-height: 55px; }
  .jj-site #header .site-logo { width: 150px; }
  .jj-site #header .site-navigation { top: 55px; height: calc(100dvh - 55px); padding: 10px 20px 65px; }
  .jj-site #header .language-select { min-width: 50px; margin-right: 18px; }
  .jj-site .home-hero { min-height: 540px; }
  .jj-site .home-hero .section_tit_inner { padding: 0 35px !important; }
  .jj-site .home-hero .main_section01_tit { font-size: clamp(30px,8vw,54px); line-height: 1.4; }
  .jj-site .home-hero .hero-tagline { font-size: 16px; margin-top: 20px !important; }
  .jj-site .hero-tools { right: 22px; left: 35px; bottom: 65px; gap: 15px; }
  .jj-site .hero-tools a:nth-child(1) { width: 25%; }
  .jj-site .hero-tools a:nth-child(2) { width: 28%; }
  .jj-site .hero-tools a:nth-child(3) { width: 32%; }
  .jj-site .video-control { left: auto; right: 25px; bottom: 15px; }
  .jj-site .social-rail { display: none; }
}

/* Homepage promotion cards: three full cards and a faded preview at the edge. */
.jj-site .home-pr { overflow: hidden; background: #e6e6e6; }
.jj-site .home-pr:before { content: none; }
.jj-site .home-pr .pr-symbol { position: absolute; top: 40px; right: -70px; width: 450px; height: auto; pointer-events: none; }
.jj-site .home-pr > .site-inner { width: calc(100% - 240px); max-width: 1260px; margin: 0 auto; }
.jj-site .home-pr .section-heading { font-size: clamp(36px,2.65vw,50px); color: #111; }
.jj-site .home-pr .pr-accent { color: #f8a251; }
.jj-site .home-pr .section-description { color: #555; opacity: 1; font-size: 18px; margin-top: 12px !important; }
.jj-site .home-pr .pr-tabs { border: 0; gap: 0; margin: 28px 0 26px; }
.jj-site .home-pr .pr-tablist { display: flex; }
.jj-site .home-pr .pr-tabs :is(button, .pr-video-link) { position: relative; padding: 4px 0; margin-right: 40px; font-size: 22px; font-weight: 700; border-bottom-width: 2px; line-height: 1.4; }
.jj-site .home-pr .pr-tabs button:after { content: ''; position: absolute; right: -20px; top: 9px; height: 19px; width: 1px; background: #aaa; }
.jj-site .home-pr .pr-tabs button[aria-selected=true] { color: #62a602; border-color: #62a602; }
.jj-site .home-pr .pr-video-link { display: block; color: inherit; border-bottom: 2px solid transparent; text-decoration: none; transition: color .15s, border-color .15s; }
.jj-site .home-pr .pr-video-link:hover, .jj-site .home-pr .pr-video-link:focus-visible { color: #62a602; border-bottom-color: #62a602; }
.jj-site .pr-carousel { --pr-visible: 3; --pr-gap: 20px; width: 100%; touch-action: pan-y pinch-zoom; }
.jj-site .pr-carousel:not(.is-ready) { overflow-x: auto; }
.jj-site .pr-track { display: flex; gap: var(--pr-gap); transition: transform .45s ease; }
.jj-site .pr-carousel.is-ready .pr-track { cursor: grab; user-select: none; -webkit-user-select: none; }
.jj-site .pr-carousel.is-ready .pr-card > a { cursor: inherit; -webkit-user-drag: none; }
.jj-site .pr-carousel.is-ready .pr-card img { -webkit-user-drag: none; }
.jj-site .pr-carousel.is-dragging .pr-track { cursor: grabbing; transition: none; }
.jj-site .pr-card { flex: 0 0 calc((100% - (var(--pr-visible) - 1) * var(--pr-gap)) / var(--pr-visible)); min-width: 0; background: #fff; transition: opacity .45s; }
.jj-site .pr-carousel.is-ready .pr-card:not(.is-active) { opacity: .2; }
.jj-site .pr-card > a { display: block; height: 100%; }
.jj-site .pr-card-image { width: 100%; aspect-ratio: 20 / 11; overflow: hidden; background: #f5f5f5; }
.jj-site .pr-card-image img { display: block; width: 100%; height: 100%; object-fit: fill; transition: transform .35s; }
.jj-site .pr-card > a:hover img { transform: scale(1.025); }
.jj-site .pr-card-copy { padding: 34px 20px 20px; }
.jj-site .pr-card-copy h3 { height: 60px; padding: 0 10px; font-size: 20px; font-weight: 700; line-height: 1.5; text-align: center; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; }
.jj-site .pr-card-copy time { display: block; margin-top: 20px; font-size: 16px; line-height: 1.4; font-weight: 500; color: #777; }
.jj-site .pr-carousel-controls { display: flex; align-items: center; width: max-content; gap: 4px; margin-top: 28px; }
.jj-site .pr-carousel-controls[hidden] { display: none; }
.jj-site .pr-carousel-controls > button { width: 20px; height: 30px; padding: 0; background: transparent; border: 0; color: #999; font: 28px/1 Arial,sans-serif; }
.jj-site .pr-carousel-controls > button:disabled { color: #bbb; cursor: default; }
.jj-site .pr-carousel-dots { display: flex; align-items: center; }
.jj-site .pr-carousel-dots button { display: grid; place-items: center; width: 18px; height: 30px; padding: 0; border: 0; background: transparent; }
.jj-site .pr-carousel-dots button:before { content: ''; width: 7px; height: 7px; border: 1px solid #c5c5c7; border-radius: 50%; }
.jj-site .pr-carousel-dots button[aria-current=true]:before { background: #1b1b1b; border-color: #1b1b1b; }
.jj-site .pr-carousel :is(a,button):focus-visible { outline: 2px solid #669500; outline-offset: 3px; }

/* The wheel controller uses native document scrolling between viewport-sized sections. */
html.home-fullpage { scroll-behavior: auto; scroll-padding-top: 0; scrollbar-width: none; }
html.home-fullpage::-webkit-scrollbar { display: none; }
html.home-fullpage .jj-site #main-content > section { height: 100svh; min-height: 0; box-sizing: border-box; scroll-margin-top: 0; }
html.home-fullpage .jj-site .home-hero .section_tit_inner { margin-top: min(30vh,300px) !important; }
html.home-fullpage .jj-site .home-endmills .section_tit_inner { padding: 90px 110px 50px !important; }
html.home-fullpage .jj-site .main_section02__inner .main_section02_tit { font-size: clamp(38px,7vh,80px); }
html.home-fullpage .jj-site .section02_txt > p { font-size: clamp(15px,2.2vh,20px); line-height: 1.75; }
html.home-fullpage .jj-site .main_section03__inner,
html.home-fullpage .jj-site .main_section03__inner ul { height: 100%; }
html.home-fullpage .jj-site .main_section03__inner ul { grid-template-rows: repeat(2,minmax(0,1fr)); }
html.home-fullpage .jj-site .main_section03__inner ul li { height: 100%; min-height: 0; }
html.home-fullpage .jj-site .home-support { padding: 85px 0 40px; }
html.home-fullpage .jj-site .home-support > .site-inner { width: calc(100% - 240px); max-width: 1260px; }
html.home-fullpage .jj-site .support-layout { margin-top: clamp(20px,4vh,40px); height: clamp(250px,43vh,420px); }
html.home-fullpage .jj-site .support-video { min-height: 0; }
html.home-fullpage .jj-site .support-grid a { padding: clamp(12px,2.5vh,26px); gap: 20px; }
html.home-fullpage .jj-site .support-grid a > img { width: 40px; height: 48px; }
html.home-fullpage .jj-site .support-grid h3 { font-size: clamp(18px,1.5vw,24px); }
html.home-fullpage .jj-site .support-grid p { font-size: 15px; line-height: 1.4; }
html.home-fullpage .jj-site .support-grid span { margin-top: 15px; font-size: 26px; }
html.home-fullpage .jj-site .home-pr { display: flex; align-items: center; padding: 90px 0 30px; }
html.home-fullpage .jj-site .home-global .global-map { height: 100%; aspect-ratio: auto; object-fit: fill; }
@media (min-width:1200px) and (max-height:760px) {
  html.home-fullpage .jj-site .home-hero .section_tit_inner { margin-top: 0 !important; }
  html.home-fullpage .jj-site .home-pr { padding: 75px 0 25px; }
  .jj-site .home-pr .pr-tabs { margin: 20px 0; }
  .jj-site .home-pr .pr-tabs :is(button, .pr-video-link) { font-size: 19px; }
  .jj-site .pr-card-image { height: min(23vh,200px); aspect-ratio: auto; }
  .jj-site .pr-card-copy { padding: 18px 16px 14px; }
  .jj-site .pr-card-copy h3 { height: 48px; padding: 0; font-size: 16px; }
  .jj-site .pr-card-copy time { margin-top: 12px; font-size: 13px; }
  .jj-site .pr-carousel-controls { margin-top: 18px; }
}
@media (max-width:1199px) {
  .jj-site .home-pr > .site-inner { width: calc(100% - 100px); }
  .jj-site .home-pr .pr-symbol { width: 320px; right: -60px; }
}
@media (max-width:991px) {
  .jj-site .pr-carousel { --pr-visible: 2; }
}
@media (max-width:767px) {
  .jj-site .home-pr > .site-inner { width: calc(100% - 40px); }
  .jj-site .home-pr .section-heading { font-size: 32px; }
  .jj-site .home-pr .section-description { font-size: 15px; }
  .jj-site .home-pr .pr-symbol { width: 170px; right: -30px; }
  .jj-site .home-pr .pr-tabs :is(button, .pr-video-link) { font-size: 18px; margin-right: 30px; }
  .jj-site .home-pr .pr-tabs button:after { right: -15px; height: 15px; }
  .jj-site .pr-card-copy { padding: 22px 18px 18px; }
  .jj-site .pr-card-copy h3 { font-size: 18px; height: 54px; }
  .jj-site .pr-card-copy time { margin-top: 14px; font-size: 14px; }
}
@media (max-width:575px) { .jj-site .pr-carousel { --pr-visible: 1; } }

/* Customer support uses the original lime outline play icon. */
.jj-site .support-video::before {
  content: ''; position: absolute; inset: 0; z-index: 1;
  background: rgba(0,0,0,.8); pointer-events: none;
  transition: background-color .2s ease;
}
.jj-site .support-video .play-icon {
  z-index: 2; width: 116px; height: 116px; border: 0; padding: 0;
  background: url('original/_skin/img/main/ico_play.png') center / contain no-repeat;
  font-size: 0; pointer-events: none;
}
.jj-site .support-video:is(:hover,:focus-visible)::before { background-color: rgba(0,0,0,.9); }
@media (max-width:767px) {
  .jj-site .support-video .play-icon { width: 86px; height: 86px; }
}
@media (prefers-reduced-motion:reduce) {
  .jj-site .support-video::before, .jj-site .support-video > img { transition: none; }
}
