@charset "utf-8";
/* 2026-10 homepage interactive refresh — loaded only by theme/basic/index.php.
   1) .jh_*        scroll-controlled 3-film hero (driven by js/home.js)
   2) .jn_pop_*    latest-news popup (뉴스, sub05_01_data.php)
   3) .platform_*  "Our Platforms" external-site cards
   4) larger homepage type for the existing sections below the hero
   Base (no .is_cine) = vertical still-image layout: phones, reduced motion,
   no JavaScript. .jh.is_cine (added by home.js at >=768px, motion allowed)
   switches to the fixed full-screen film stage + an 800vh scroll runway. */

.jh{
	--gutter: max(16px, 1.63265vw);
	--ease: cubic-bezier(.16,1,.3,1);
	--c: 255; /* adaptive ink channel: 255 = white ink, 3 = near-black ink */
	position: relative;background: #030303;color: #fff;letter-spacing: -.02em;
}
.jh h1, .jh h2, .jh h3, .jh p, .jh dl, .jh dd{margin: 0;}
.jh .sr_only{position: absolute;width: 1px;height: 1px;overflow: hidden;clip: rect(0 0 0 0);white-space: nowrap;}
.jh a:focus-visible, .jh button:focus-visible{outline: 2px solid currentColor;outline-offset: 5px;}

.jh_skip{position: absolute;left: 16px;top: -60px;z-index: 120;background: #fff;color: #030303 !important;padding: 10px 14px;border-radius: 8px;font-size: 16px;font-weight: 700;}
.jh_skip:focus{top: 90px;}

.jh_stage, .jh_runway, .jh_cue, .jh_chapter{display: none;}

/* shared type */
.jh_eyebrow{display: block;font-size: 15px;font-weight: 700;letter-spacing: .12em;line-height: 1.5;text-transform: uppercase;opacity: .85;}
.jh_eyebrow:before{content: "";display: inline-block;width: 6px;height: 6px;border-radius: 50%;background: #8FB1F5;margin: 0 10px 2px 0;vertical-align: middle;}
.jh_display{
	font-weight: 700;line-height: 1.12;letter-spacing: -.04em;word-break: keep-all;
	color: rgb(var(--c) var(--c) var(--c));
	/* soft halo in the opposite tone keeps solid type crisp over busy footage */
	text-shadow: 0 2px 28px rgb(calc(258 - var(--c)) calc(258 - var(--c)) calc(258 - var(--c)) / .45);
}
.jh_display .thin{font-weight: 300;}
.jh_note{font-size: 17px;line-height: 1.6;opacity: .92;word-break: keep-all;text-shadow: 0 1px 14px rgb(calc(258 - var(--c)) calc(258 - var(--c)) calc(258 - var(--c)) / .5);}
.jh_cta{display: inline-flex;align-items: center;gap: 14px;margin-top: 28px;padding: 5px 5px 5px 18px;border-radius: 8px;background: rgb(var(--c) var(--c) var(--c) / .1);border: 1px solid rgb(var(--c) var(--c) var(--c) / .18);color: rgb(var(--c) var(--c) var(--c)) !important;font-size: 17px;font-weight: 700;backdrop-filter: blur(12px);-webkit-backdrop-filter: blur(12px);}
.jh_arrow{display: inline-flex;align-items: center;justify-content: center;width: 34px;height: 34px;border-radius: 6px;background: rgb(var(--c) var(--c) var(--c));color: rgb(calc(258 - var(--c)) calc(258 - var(--c)) calc(258 - var(--c)));transition: transform .18s ease;flex-shrink: 0;}
.jh_arrow svg{width: 16px;height: 16px;transition: transform .2s ease;}
a:hover > .jh_arrow svg, button:hover > .jh_arrow svg{transform: translateX(1.5px);}
a:active > .jh_arrow, button:active > .jh_arrow{transform: scale(.94);}

/* badge: number + unit inside a thin ring */
.jh_badge{position: relative;width: 96px;height: 96px;border-radius: 50%;background: rgb(calc(258 - var(--c)) calc(258 - var(--c)) calc(258 - var(--c)) / .4);backdrop-filter: blur(10px);-webkit-backdrop-filter: blur(10px);display: flex;flex-direction: column;align-items: center;justify-content: center;gap: 2px;font-variant-numeric: tabular-nums;color: rgb(var(--c) var(--c) var(--c));}
.jh_badge_num{font-size: 22px;font-weight: 700;letter-spacing: -.02em;}
.jh_badge_unit{font-size: 14px;font-weight: 600;opacity: .7;text-align: center;line-height: 1.2;max-width: 80%;}
.jh_badge svg{position: absolute;inset: 0;width: 100%;height: 100%;transform: rotate(-90deg);overflow: visible;}
.jh_badge circle{fill: none;stroke: currentColor;stroke-width: .8;opacity: .6;stroke-dasharray: 1;stroke-dashoffset: 0;vector-effect: non-scaling-stroke;}

/* glass card (scene 1) */
.jh_card{border: 1px solid rgb(var(--c) var(--c) var(--c) / .15);background: rgb(calc(258 - var(--c)) calc(258 - var(--c)) calc(258 - var(--c)) / .55);backdrop-filter: blur(16px);-webkit-backdrop-filter: blur(16px);border-radius: 12px;padding: 4px;text-align: center;}
.jh_card_idx{display: block;font-size: 14px;font-weight: 700;letter-spacing: .08em;opacity: .6;margin: 22px 0 26px;}
.jh_card_tlt{font-size: 30px;line-height: 1.2;text-shadow: none;}
.jh .jh_card_txt{font-size: 17px;line-height: 1.55;opacity: .9;max-width: 290px;padding: 0 8px;margin: 22px auto 26px;word-break: keep-all;}
.jh_card_act{display: flex;align-items: center;justify-content: space-between;padding: 4px 4px 4px 14px;border-radius: 6px;background: rgb(var(--c) var(--c) var(--c) / .1);color: rgb(var(--c) var(--c) var(--c)) !important;font-size: 17px;font-weight: 700;}

/* ---------- vertical still-image layout (default) ---------- */
.jh_scene{position: relative;padding: 0 16px;margin-bottom: 12vh;}
.jh_s1{padding-top: 90px;min-height: 92svh;}
.jh_still{position: relative;margin: 0 -16px;height: 53svh;min-height: 330px;overflow: hidden;}
.jh_still img{width: 100%;height: 100%;object-fit: cover;display: block;}
.jh_still:after{content: "";position: absolute;inset: 0;background: linear-gradient(180deg, rgba(3,3,3,0) 45%, #030303 100%);}
.jh_s1 .jh_still + *{margin-top: -80px;position: relative;}
.jh_s2 .jh_still{height: 65svh;}
.jh_s2 .jh_still + *{margin-top: -55px;position: relative;}
.jh_s3 .jh_still{height: auto;min-height: 0;aspect-ratio: 4 / 3;max-height: 70svh;background: #e9e9ea;}
.jh_s3 .jh_still img{object-fit: cover;}
.jh_s3 .jh_still:after{display: none;}
.jh_s1_hero .jh_display{font-size: 40px;margin-top: 16px;}
.jh_s2_head .jh_display{font-size: 34px;margin-top: 16px;}
.jh_scene .jh_note{margin-top: 22px;max-width: 520px;}
.jh_scene .jh_badge{margin-top: 28px;width: 84px;height: 84px;}
.jh_scene .jh_card{margin-top: 28px;max-width: 420px;}
.jh_finale{background: #fff;color: #030303;--c: 3;padding: 70px 16px 60px;}
.jh_finale .jh_display{font-size: 34px;margin-top: 18px;}
.jh .jh_specs{max-width: 760px;margin: 42px 0 0;border-bottom: 1px solid #03030326;}
/* each row is a <div> group inside the <dl>; the <dt> link is stretched over
   the whole row so the entire line is clickable, arrow drawn by ::after */
.jh_specs > div{position: relative;display: grid;grid-template-columns: 1fr 1.4fr auto;gap: 8px;align-items: center;padding: 14px 0;border-top: 1px solid #03030326;line-height: 1.4;}
.jh_specs > div:after{content: "\2192";opacity: .45;font-size: 17px;font-weight: 700;transition: opacity .2s ease, transform .2s ease;}
.jh_specs > div:hover:after{opacity: 1;transform: translateX(3px);}
.jh_specs dt{font-size: 17px;font-weight: 700;}
.jh_specs dt a{color: #030303 !important;}
.jh_specs dt a:before{content: "";position: absolute;inset: 0;z-index: 1;}
.jh_specs dd{font-size: 17px;opacity: .75;word-break: keep-all;}
.jh_finale_act{display: inline-flex;align-items: center;gap: 14px;margin-top: 26px;height: 46px;padding: 0 5px 0 18px;border-radius: 8px;background: #030303;color: #fff !important;font-size: 17px;font-weight: 700;}
.jh_finale_act .jh_arrow{background: #fff;color: #030303;}
.jh_finale_note{margin-top: 18px;font-size: 16px;line-height: 1.5;opacity: .62;}
.jh_s1 .jh_cta{margin-top: 24px;}

@media (min-width: 768px){
	.jh_scene, .jh_finale{max-width: 1100px;margin-left: auto;margin-right: auto;}
	.jh_scene .jh_card{max-width: 400px;}
	.jh_s1_hero .jh_display{font-size: 56px;}
	.jh_s2_head .jh_display, .jh_finale .jh_display{font-size: 48px;}
	.jh_finale .jh_display, .jh_finale .jh_eyebrow{text-align: center;}
	.jh .jh_specs{margin: 48px auto 0;}
	.jh_specs > div{grid-template-columns: 1.1fr 1.9fr auto;gap: 12px;}
	.jh_specs dt{font-size: 18px;}
	.jh_specs dd{font-size: 17px;}
	.jh_finale_actions{text-align: center;}
}

/* ---------- cinematic mode ---------- */
.jh.is_cine{--c: 3;} /* dark ink over the bright opening frame until home.js takes over */
.jh.is_cine .jh_runway{display: block;height: 800vh;}
.jh.is_cine .jh_view{position: fixed;inset: 0;z-index: 2;overflow: hidden;will-change: transform;}
.jh.is_cine .jh_stage{display: block;position: absolute;inset: 0;}
.jh.is_cine .jh_still{display: none;}
.jh.is_cine .jh_scene, .jh.is_cine .jh_finale{position: absolute;inset: 0;max-width: none;margin: 0;padding: 0;min-height: 0;pointer-events: none;}
.jh.is_cine .jh_scene > *, .jh.is_cine .jh_finale_inner, .jh.is_cine .jh_cue{pointer-events: auto;}
.jh.is_cine .jh_scene{z-index: 10;color: rgb(var(--c) var(--c) var(--c));}

.jh_layer{position: absolute;inset: 0;overflow: hidden;contain: layout paint;background: #030303;}
.jh_layer_in{position: absolute;inset: 0;overflow: hidden;}
.jh_l1{z-index: 0;}
.jh_l2{z-index: 5;transform: translate3d(100%,0,0);}
.jh_l3{z-index: 7;transform: translate3d(0,100%,0);background: #e9e9ea;}
.jh_l2, .jh_l3, .jh_l2 > .jh_layer_in, .jh_l3 > .jh_layer_in{will-change: transform;}
.jh_layer img, .jh_layer video{position: absolute;inset: 0;width: 100%;height: 100%;object-fit: cover;display: block;}
.jh_layer video{opacity: 0;transition: opacity .3s ease;}
.jh_layer video.is_ready{opacity: 1;}
.jh_layer .jh_final{opacity: 0;z-index: 2;}
.jh_dive{position: absolute;inset: 0;transform-origin: 50% 52%;}
.jh_hair{position: absolute;z-index: 3;background: rgba(255,255,255,.55);display: none;}
.jh_l2 .jh_hair{left: 0;top: 0;bottom: 0;width: 1px;}
.jh_l3 .jh_hair{left: 0;right: 0;top: 0;height: 1px;}
.jh_hair.is_on{display: block;}
.jh_plate{position: absolute;inset: 0;z-index: 8;background: #fff;opacity: 0;}

/* scene 1 */
/* narrow column so the headline stays left of the robot (centre of frame) */
.jh.is_cine .jh_s1_hero{position: absolute;left: var(--gutter);bottom: 21vh;width: min(37vw, 580px);}
.jh.is_cine .jh_s1_hero .jh_display{font-size: clamp(32px, 3.3vw, 54px);margin-top: 16px;max-width: 8.6em;}
.jh.is_cine .jh_scene .jh_note{position: absolute;left: var(--gutter);bottom: 3.6667vh;width: 22vw;min-width: 240px;max-width: 330px;margin: 0;font-size: clamp(14px, 1.02vw, 16px);line-height: 1.5;}
.jh.is_cine .jh_scene .jh_badge{position: absolute;margin: 0;width: 8.1633vw;height: 8.1633vw;min-width: 86px;min-height: 86px;max-width: 124px;max-height: 124px;translate: -50% -50%;}
.jh.is_cine .jh_badge_num{font-size: clamp(18px, 1.633vw, 26px);}
.jh.is_cine .jh_s1 .jh_badge{left: 80%;top: 24%;}
.jh.is_cine .jh_scene .jh_card{position: absolute;right: var(--gutter);bottom: var(--gutter);width: 23.4694vw;min-width: 290px;max-width: 400px;margin: 0;}
.jh.is_cine .jh_card_tlt{font-size: clamp(24px, 2vw, 32px);}

/* scene 2 */
.jh.is_cine .jh_s2_head{position: absolute;left: var(--gutter);bottom: 56vh;max-width: 60vw;}
.jh.is_cine .jh_s2_head .jh_display{font-size: clamp(36px, 4.2vw, 64px);margin-top: 19px;}
.jh.is_cine .jh_s2 .jh_badge{left: 75.714%;top: 61.111%;}
.jh.is_cine .jh_s2{opacity: 0;}

/* scene 3 (drone on white): dark ink, heading top-left above the drone,
   product links bottom-right */
.jh.is_cine .jh_s3{--c: 3;opacity: 0;}
.jh.is_cine .jh_s3_head{position: absolute;left: var(--gutter);top: calc(78px + 6vh);max-width: 46vw;}
.jh.is_cine .jh_s3_head .jh_display{font-size: clamp(34px, 3.6vw, 58px);margin-top: 16px;}
.jh.is_cine .jh_chips{position: absolute;right: var(--gutter);bottom: var(--gutter);margin: 0;max-width: 620px;justify-content: flex-end;}

/* finale */
.jh.is_cine .jh_finale{z-index: 9;display: flex;align-items: center;justify-content: center;background: none;}
.jh.is_cine .jh_finale_inner{width: calc(100% - 2 * var(--gutter));max-width: 1000px;text-align: center;}
.jh.is_cine .jh_finale .jh_display{font-size: clamp(38px, 4.4vw, 68px);margin-top: 22px;}
.jh.is_cine .jh_finale_head, .jh.is_cine .jh_finale_rest{opacity: 0;}
.jh.is_cine .jh_specs{text-align: left;}

/* scroll cue + chapter marker */
.jh.is_cine .jh_cue{display: flex;flex-direction: column;align-items: center;gap: 8px;position: absolute;left: 50%;bottom: 21px;transform: translateX(-50%);z-index: 10;padding: 8px 12px;background: none;border: 0;cursor: pointer;color: rgb(var(--c) var(--c) var(--c));font: inherit;border-radius: 14px;background: rgb(calc(258 - var(--c)) calc(258 - var(--c)) calc(258 - var(--c)) / .45);backdrop-filter: blur(10px);-webkit-backdrop-filter: blur(10px);padding: 10px 18px 10px;}
.jh_cue_line{width: 1px;height: 33px;background: linear-gradient(180deg, transparent, currentColor);transition: transform .3s var(--ease);}
.jh_cue:hover .jh_cue_line{transform: translateY(3px);}
.jh_cue_main{font-size: 16px;font-weight: 600;}
.jh_cue_sub{font-size: 14px;opacity: .65;}
.jh.is_cine .jh_chapter{display: flex;align-items: center;gap: 8px;position: absolute;right: var(--gutter);top: 50%;z-index: 10;font-size: 14px;font-weight: 600;font-variant-numeric: tabular-nums;color: rgb(var(--c) var(--c) var(--c));translate: 0 -50%;}
.jh_chapter i{display: block;width: 26px;height: 1px;background: currentColor;opacity: .6;}

/* entrance (cinematic only; reduced motion never reaches cinematic mode) */
@keyframes jh-in{from{opacity: 0;transform: translateY(14px);filter: blur(10px);}}
@keyframes jh-ring{from{stroke-dashoffset: 1;}}
.jh.is_cine .jh_s1_hero, .jh.is_cine .jh_s1 .jh_note, .jh.is_cine .jh_s1 .jh_card{animation: jh-in .9s var(--ease) both;}
.jh.is_cine .jh_s1 .jh_note{animation-delay: 80ms;}
.jh.is_cine .jh_s1 .jh_card{animation-delay: 160ms;}
.jh.is_cine .jh_s1 .jh_badge_txt{animation: jh-in 1.1s var(--ease) .3s both;}
.jh.is_cine .jh_s1 .jh_badge circle{animation: jh-ring 1.5s var(--ease) .35s both;}
.jh_badge_txt{display: flex;flex-direction: column;align-items: center;gap: 2px;}

@media (max-height: 650px){
	.jh.is_cine .jh_chapter{display: none;}
	.jh.is_cine .jh_card_tlt{font-size: 30px;}
	.jh.is_cine .jh_card_idx{margin: 12px 0 15px;}
	.jh.is_cine .jh_card_txt{margin-top: 15px;margin-bottom: 15px;}
	.jh.is_cine .jh_finale_inner{scale: .82;}
	.jh.is_cine .jh_s1_hero{bottom: 28vh;}
	.jh.is_cine .jh_s2_head{bottom: 50vh;}
}

/* homepage header rides fixed over the film while the hero runway is active */
#wrap.jh_on .home_header{position: fixed;}
/* invisible hero panels never intercept input (fallback for browsers without inert) */
.jh [inert], .jh [inert] *{pointer-events: none !important;}

/* ---------- latest-news popup ---------- */
html.jn_pop_lock{overflow: hidden;}
.jn_pop{position: fixed;inset: 0;z-index: 10000;display: flex;align-items: center;justify-content: center;padding: 20px;box-sizing: border-box;}
.jn_pop[hidden]{display: none;}
.jn_pop_backdrop{position: absolute;inset: 0;background: rgba(8,12,24,.62);backdrop-filter: blur(4px);-webkit-backdrop-filter: blur(4px);}
.jn_pop_box{position: relative;display: grid;grid-template-columns: 340px 1fr;grid-template-rows: 1fr auto;width: 100%;max-width: 760px;max-height: calc(100vh - 40px);background: #fff;border-radius: 20px;overflow: hidden;box-shadow: 0 30px 80px rgba(0,0,0,.35);animation: jn-pop-in .45s cubic-bezier(.16,1,.3,1) both;}
@keyframes jn-pop-in{from{opacity: 0;transform: translateY(16px) scale(.98);}}
.jn_pop_media{grid-row: 1 / 3;background: var(--gray-bg, #F4F6F9);display: block;min-height: 0;}
.jn_pop_media img, .jn_pop_media video{width: 100%;height: 100%;object-fit: cover;object-position: top;display: block;}
.jn_pop_body{padding: 40px 36px 24px;overflow-y: auto;min-height: 0;}
.jn_pop_tag{display: inline-block;background: var(--navy-deep, #162032);color: #fff;font-size: 15px;font-weight: 800;letter-spacing: .1em;text-transform: uppercase;padding: 5px 12px;border-radius: 999px;margin-right: 10px;}
.jn_pop_date{font-size: 17px;color: #94a3b8;}
.jn_pop_tlt{font-size: 23px;font-weight: 800;line-height: 1.4;color: var(--ink, #1A1A1A);margin: 16px 0 14px;word-break: keep-all;}
.jn_pop_txt{font-size: 18px;line-height: 1.75;color: var(--text-body, #5B6472);margin: 0 0 22px;word-break: keep-all;}
.jn_pop_more{display: inline-flex;align-items: center;gap: 6px;padding: 12px 20px;border-radius: 10px;background: var(--navy-deep, #162032);color: #fff !important;font-size: 17px;font-weight: 700;}
.jn_pop_more:hover{background: var(--navy-hover, #223252);}
.jn_pop_foot{display: flex;justify-content: space-between;align-items: center;gap: 12px;padding: 14px 24px 14px 36px;border-top: 1px solid var(--line, #E4E6EC);}
.jn_pop_foot button{background: none;border: 0;padding: 8px 4px;font-size: 17px;font-weight: 600;color: #475569;cursor: pointer;font-family: inherit;}
.jn_pop_foot button:hover{color: var(--ink, #1A1A1A);text-decoration: underline;}
.jn_pop_foot .jn_pop_close{font-weight: 800;color: var(--ink, #1A1A1A);}
.jn_pop_x{position: absolute;top: 12px;right: 12px;width: 40px;height: 40px;border-radius: 50%;border: 0;background: rgba(255,255,255,.9);color: #1A1A1A;font-size: 24px;line-height: 1;cursor: pointer;display: flex;align-items: center;justify-content: center;box-shadow: 0 2px 8px rgba(0,0,0,.12);}
.jn_pop button:focus-visible, .jn_pop a:focus-visible{outline: 2px solid var(--navy-deep, #162032);outline-offset: 3px;}
@media (max-width: 700px){
	.jn_pop_box{grid-template-columns: 1fr;grid-template-rows: auto 1fr auto;}
	.jn_pop_media{grid-row: auto;height: 36vh;}
	.jn_pop_media img, .jn_pop_media video{object-fit: contain;}
	.jn_pop_body{padding: 24px 22px 18px;}
	.jn_pop_tlt{font-size: 20px;}
	.jn_pop_txt{font-size: 17px;}
	.jn_pop_foot{padding: 10px 18px;}
}
@media (prefers-reduced-motion: reduce){
	.jn_pop_box{animation: none;}
}

/* ---------- "Our Platforms" ---------- */
.platform_section{position: relative;background: var(--navy-deep, #162032);padding: 100px 0;overflow: hidden;}
.platform_section:before{content: "";position: absolute;inset: 0;pointer-events: none;opacity: .5;background-image: linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px);background-size: 42px 42px;}
.platform_wrap{position: relative;max-width: 1280px;margin: 0 auto;padding: 0 40px;box-sizing: border-box;}
.platform_head{margin-bottom: 44px;}
.platform_eyebrow{display: inline-block;font-size: 16px;font-weight: 700;letter-spacing: .14em;color: #8FB1F5;margin-bottom: 14px;}
.platform_head h2{font-size: 40px;font-weight: 800;line-height: 1.3;color: #fff;margin: 0 0 12px;letter-spacing: -.5px;word-break: keep-all;}
.platform_head p{font-size: 18px;line-height: 1.7;color: #CBD5E1;margin: 0;}
.platform_grid{display: grid;grid-template-columns: repeat(5, 1fr);gap: 16px;}
.platform_card{position: relative;display: flex;flex-direction: column;min-height: 260px;padding: 26px 22px 22px;border-radius: 20px;background: rgba(255,255,255,.06);border: 1px solid rgba(255,255,255,.14);backdrop-filter: blur(6px);-webkit-backdrop-filter: blur(6px);color: #fff !important;transition: transform .3s cubic-bezier(.16,1,.3,1), background-color .25s ease, border-color .25s ease;}
.platform_card:hover{transform: translateY(-6px);background: rgba(255,255,255,.11);border-color: rgba(143,177,245,.6);}
.platform_cat{align-self: flex-start;font-size: 15px;font-weight: 700;letter-spacing: .06em;color: #8FB1F5;background: rgba(143,177,245,.12);border: 1px solid rgba(143,177,245,.3);padding: 4px 11px;border-radius: 999px;}
.platform_name{display: block;font-size: 22px;font-weight: 800;line-height: 1.3;margin: 22px 0 10px;word-break: keep-all;}
.platform_desc{display: block;flex: 1;font-size: 17px;line-height: 1.65;color: #CBD5E1;word-break: keep-all;}
.platform_url{display: flex;align-items: center;justify-content: space-between;margin-top: 22px;padding-top: 16px;border-top: 1px solid rgba(255,255,255,.14);font-size: 17px;font-weight: 700;color: #fff;}
.platform_url .ext{display: inline-flex;align-items: center;justify-content: center;width: 34px;height: 34px;border-radius: 50%;background: #fff;color: var(--navy-deep, #162032);font-size: 18px;transition: transform .25s ease;}
.platform_card:hover .ext{transform: rotate(45deg);}
@media (max-width: 1100px){
	.platform_grid{grid-template-columns: repeat(3, 1fr);}
}
@media (max-width: 640px){
	.platform_section{padding: 70px 0;}
	.platform_wrap{padding: 0 20px;}
	.platform_head h2{font-size: 30px;}
	.platform_head p{font-size: 17px;}
	.platform_grid{grid-template-columns: 1fr;}
	.platform_card{min-height: 0;}
}

/* ---------- larger type for the existing homepage sections ---------- */
.main_con_wrap .about_v2_headline,
.main_con_wrap .news_teaser_head h2,
.main_con_wrap .global_map_panel h2{font-size: 40px;}
.main_con_wrap .about_v2_body{font-size: 18px;}
.main_con_wrap .about_v2_cta{font-size: 17px;padding: 13px 22px;}
.main_con_wrap .about_v2_pillars .about_v2_pillar_head h3{font-size: 19px;}
.main_con_wrap .about_v2_tags a{font-size: 17px;padding: 6px 12px;}
.main_con_wrap .about_v2_pillar_link{font-size: 17px;}
.main_con_wrap .stat_card .stat_num{font-size: 46px;}
.main_con_wrap .stat_card .stat_num span{font-size: 24px;}
.main_con_wrap .stat_card .stat_lbl{font-size: 18px;}
.main_con_wrap .div_card_tlt{font-size: 21px;}
.main_con_wrap .div_card_txt{font-size: 18px;}
.main_con_wrap .div_card_btn{font-size: 17px;}
.main_con_wrap .div_card_cat_badge{font-size: 15px;}
.main_con_wrap .news_teaser_more{font-size: 18px;}
.main_con_wrap .global_map_intro{font-size: 18px;}
.main_con_wrap .global_map_pill{font-size: 16px;}
.main_con_wrap .global_map_regions{font-size: 17px;}
.main_con_wrap .global_country_list .country_name{font-size: 18px;}
.main_con_wrap .global_country_list .country_desc{font-size: 17px;}
@media (max-width: 640px){
	.main_con_wrap .about_v2_headline,
	.main_con_wrap .news_teaser_head h2,
	.main_con_wrap .global_map_panel h2{font-size: 30px;}
	.main_con_wrap .about_v2_body, .main_con_wrap .global_map_intro{font-size: 18px;}
	.main_con_wrap .stat_card .stat_num{font-size: 36px;}
	.main_con_wrap .stat_card .stat_num span{font-size: 20px;}
}

/* secondary external link under the opening card's main action (haebotai.com) */
.jh_card_ext{display: flex;align-items: center;justify-content: space-between;margin-top: 4px;padding: 10px 12px 10px 14px;border-radius: 6px;border: 1px solid rgb(var(--c) var(--c) var(--c) / .18);color: rgb(var(--c) var(--c) var(--c)) !important;font-size: 17px;font-weight: 700;}
.jh_card_ext:hover{background: rgb(var(--c) var(--c) var(--c) / .08);}

/* scene 3 product links (chips) — shared by both layouts */
.jh_chips{display: flex;flex-wrap: wrap;align-items: center;gap: 8px;margin-top: 26px;}
.jh_chips_tlt{width: 100%;font-size: 15px;font-weight: 700;letter-spacing: .1em;opacity: .7;margin-bottom: 2px;}
.jh_chips a{padding: 9px 16px;border-radius: 999px;border: 1px solid rgb(var(--c) var(--c) var(--c) / .22);background: rgb(calc(258 - var(--c)) calc(258 - var(--c)) calc(258 - var(--c)) / .6);backdrop-filter: blur(10px);-webkit-backdrop-filter: blur(10px);color: rgb(var(--c) var(--c) var(--c)) !important;font-size: 17px;font-weight: 700;transition: background-color .2s ease, color .2s ease, transform .2s ease;}
.jh_chips a:hover{background: rgb(var(--c) var(--c) var(--c));color: rgb(calc(258 - var(--c)) calc(258 - var(--c)) calc(258 - var(--c))) !important;transform: translateY(-2px);}
.jh.is_cine .jh_chips_tlt{text-align: right;}
.jh_s3 .jh_still + *{margin-top: 28px;}
.jh_s3_head .jh_display{font-size: 34px;margin-top: 16px;}
@media (min-width: 768px){
	.jh_s3_head .jh_display{font-size: 48px;}
}
