/* HiHiro Homepage Visual Refresh V5
   Visual-only layer. Scoped to body.home-v4 to avoid changing product/account logic. */

body.home-v4{
  --hv5-ink:#0d2441;
  --hv5-muted:#64758a;
  --hv5-line:rgba(28,83,143,.10);
  --hv5-blue:#0878ff;
  --hv5-gold:#d5a733;
  --hv5-shadow:0 28px 80px rgba(36,77,124,.12);
  --hv5-soft-shadow:0 16px 44px rgba(43,82,127,.08);
}

/* Cleaner canvas: fewer competing layers, more depth around the key surfaces. */
body.home-v4{
  background:
    radial-gradient(circle at 6% 1%,rgba(17,132,255,.10),transparent 31rem),
    radial-gradient(circle at 95% 4%,rgba(222,174,49,.12),transparent 29rem),
    linear-gradient(180deg,#fbfdff 0%,#f5f9fe 52%,#fbfdff 100%);
}
body.home-v4::before{
  opacity:.55;
  background-size:64px 64px;
}
body.home-v4 .v2-wrap{width:min(1280px,calc(100% - 40px))}

/* Header */
body.home-v4 .v2-topbar{
  background:rgba(251,253,255,.82)!important;
  border-bottom:1px solid rgba(31,84,140,.07)!important;
  box-shadow:0 8px 28px rgba(37,76,121,.04);
}
body.home-v4 .brand-mark{filter:drop-shadow(0 5px 10px rgba(22,92,165,.12))}

/* Hero */
body.home-v4 .home-v4-hero{
  grid-template-columns:minmax(0,.91fr) minmax(500px,1.09fr);
  min-height:680px;
  gap:28px;
  padding:48px 0 34px;
}
body.home-v4 .home-v4-hero::before{
  inset:18px -18px 5px;
  border-radius:40px;
  background:
    radial-gradient(circle at 79% 12%,rgba(239,198,86,.12),transparent 30%),
    radial-gradient(circle at 18% 10%,rgba(58,154,255,.09),transparent 31%),
    linear-gradient(132deg,rgba(255,255,255,.91),rgba(247,251,255,.77) 62%,rgba(255,250,235,.67));
  border-color:rgba(255,255,255,.98);
  box-shadow:0 30px 90px rgba(36,77,124,.11),inset 0 1px 0 #fff;
}
body.home-v4 .home-v4-copy{padding:28px 22px 28px 14px}
body.home-v4 .home-v4-copy h1{
  max-width:710px;
  margin:19px 0 18px;
  font-size:clamp(2.75rem,4.85vw,5.05rem);
  line-height:1.055;
  letter-spacing:-.052em;
  color:var(--hv5-ink);
}
body.home-v4 .home-v4-lead{
  max-width:680px;
  font-size:clamp(1rem,1.25vw,1.14rem);
  line-height:1.95;
  color:var(--hv5-muted);
}
body.home-v4 .home-v4-slogan{
  margin-top:20px;
  padding:11px 13px;
  border-radius:14px;
  background:rgba(255,255,255,.66);
}
body.home-v4 .home-v4-actions{margin-top:24px;gap:10px}
body.home-v4 .v2-cta{
  min-height:51px;
  padding-inline:22px;
  border-radius:14px;
}
body.home-v4 .v2-cta.primary{
  background:linear-gradient(135deg,#0a7fff,#0869e6);
  box-shadow:0 14px 30px rgba(5,103,224,.21);
}
body.home-v4 .home-v4-principles{margin-top:22px;gap:7px}
body.home-v4 .home-v4-principles span{
  background:rgba(255,255,255,.60);
  border-color:rgba(34,90,149,.065);
}

/* Hero brand visual: give the artwork the frame, not the captions. */
body.home-v4 .home-brand-visual{
  min-height:560px;
  padding:20px 20px 16px;
  grid-template-rows:1fr;
}
body.home-v4 .brand-visual-frame{
  min-height:520px;
  border-radius:30px;
  box-shadow:0 38px 90px rgba(31,72,119,.15),inset 0 1px 0 #fff;
}
body.home-v4 .brand-visual-frame img{
  width:100%;
  height:100%;
  object-fit:contain;
  transform:scale(1.13);
}
body.home-v4 .brand-visual-footer{display:none}
body.home-v4 .blue-glow{width:500px;height:500px;right:-6%;top:0}
body.home-v4 .gold-glow{width:440px;height:440px;left:-2%;bottom:-3%}

/* Ecosystem axis: calmer, more premium navigation strip. */
body.home-v4 .ecosystem-axis{gap:12px;margin-top:14px}
body.home-v4 .axis-card{
  min-height:96px;
  padding:20px;
  border-radius:21px;
  background:rgba(255,255,255,.80);
  box-shadow:0 13px 38px rgba(41,82,128,.065);
}
body.home-v4 a.axis-card:hover{
  transform:translateY(-4px);
  box-shadow:0 22px 48px rgba(41,82,128,.11);
}
body.home-v4 .axis-code{width:42px;height:42px;border-radius:13px}

/* Goal / vision: copy first, then one full-width cinematic globe. */
body.home-v4 .home-story-section{padding:94px 0 72px}
body.home-v4 .home-story-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:30px;
}
body.home-v4 .home-story-copy{
  width:min(980px,100%);
  margin-inline:auto;
  padding:0 24px;
  text-align:center;
  align-items:center;
}
body.home-v4 .home-story-copy h2{max-width:920px;margin-inline:auto}
body.home-v4 .home-story-copy>p{max-width:820px;margin-inline:auto}
body.home-v4 .home-principle-grid{
  width:100%;
  max-width:900px;
  margin-inline:auto;
}
body.home-v4 .home-principle-grid article{
  min-height:150px;
  text-align:start;
  background:rgba(255,255,255,.78);
  border-color:rgba(255,255,255,.98);
  box-shadow:0 12px 34px rgba(41,82,128,.055);
}
body.home-v4 .vision-inline{
  width:min(820px,100%);
  margin:24px auto 0;
  padding:18px 22px;
  background:linear-gradient(135deg,rgba(238,248,255,.86),rgba(255,249,231,.80));
}
body.home-v4 .globe-showcase{
  width:100%;
  min-height:760px;
  border-radius:36px;
  box-shadow:0 35px 96px rgba(42,78,121,.15);
}
body.home-v4 .globe-showcase img{
  min-height:760px;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transform:scale(1.17);
}
body.home-v4 .globe-showcase::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(255,255,255,.04),transparent 24%,transparent 74%,rgba(22,39,61,.08)),
    radial-gradient(circle at 50% 48%,transparent 45%,rgba(18,47,80,.05) 100%);
}

/* Radar: stronger product identity and clearer hierarchy. */
body.home-v4 .home-radar-section{padding:84px 0}
body.home-v4 .radar-home-shell{
  grid-template-columns:minmax(0,1.08fr) minmax(400px,.92fr);
  gap:16px;
  padding:16px;
  border-radius:32px;
  background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(246,251,255,.86));
  box-shadow:0 30px 84px rgba(35,77,125,.12);
}
body.home-v4 .radar-home-copy{padding:36px 30px}
body.home-v4 .radar-home-copy h2{
  margin-top:14px;
  font-size:clamp(2.05rem,3.65vw,3.45rem);
}
body.home-v4 .radar-home-flow{gap:7px;margin:25px 0 22px}
body.home-v4 .radar-home-flow span{
  position:relative;
  overflow:hidden;
  padding:14px 10px;
  background:linear-gradient(180deg,#fbfdff,#f4f9ff);
}
body.home-v4 .radar-home-flow span::after{
  content:"";
  position:absolute;
  inset:auto 18% 0;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--hv5-blue),var(--hv5-gold));
  opacity:.42;
}
body.home-v4 .radar-home-panel{
  position:relative;
  overflow:hidden;
  padding:14px;
  border-radius:25px;
  background:
    radial-gradient(circle at 82% 8%,rgba(56,145,255,.19),transparent 31%),
    radial-gradient(circle at 12% 91%,rgba(218,173,55,.12),transparent 34%),
    linear-gradient(145deg,#102c4e,#091b32);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 18px 44px rgba(10,37,67,.18);
}
body.home-v4 .radar-home-panel::before{
  content:"";
  position:absolute;
  width:240px;
  height:240px;
  border:1px solid rgba(92,170,255,.11);
  border-radius:50%;
  top:-120px;
  right:-90px;
}
body.home-v4 .radar-home-panel article{
  position:relative;
  z-index:1;
  min-height:155px;
  border-radius:18px;
  background:rgba(255,255,255,.068);
  backdrop-filter:blur(8px);
  transition:transform .18s ease,background .18s ease;
}
body.home-v4 .radar-home-panel article:hover{
  transform:translateY(-3px);
  background:rgba(255,255,255,.10);
}
body.home-v4 .radar-home-panel article>span{
  box-shadow:0 8px 22px rgba(7,108,220,.22),inset 0 1px 0 rgba(255,255,255,.45);
}

/* Products: less card noise, stronger active product distinction. */
body.home-v4 .home-products-section{padding-top:76px}
body.home-v4 .home-product-feature-grid{gap:14px}
body.home-v4 .home-product-feature{
  min-height:150px;
  padding:28px;
  border-radius:24px;
  box-shadow:0 16px 44px rgba(41,82,128,.075);
  transition:transform .18s ease,box-shadow .18s ease;
}
body.home-v4 a.home-product-feature:hover{
  transform:translateY(-4px);
  box-shadow:0 24px 58px rgba(41,82,128,.11);
}
body.home-v4 .home-future-strip{gap:9px;margin-top:13px}
body.home-v4 .home-future-strip span{
  min-height:64px;
  padding:14px;
  background:rgba(255,255,255,.72);
}

/* Dark mode parity */
html[data-theme="dark"] body.home-v4{
  --hv5-ink:#f0f6ff;
  --hv5-muted:#a9b8c9;
  background:
    radial-gradient(circle at 6% 1%,rgba(0,121,255,.15),transparent 31rem),
    radial-gradient(circle at 95% 4%,rgba(220,170,44,.11),transparent 29rem),
    #081221;
}
html[data-theme="dark"] body.home-v4 .v2-topbar{background:rgba(8,18,33,.80)!important}
html[data-theme="dark"] body.home-v4 .home-v4-hero::before,
html[data-theme="dark"] body.home-v4 .axis-card,
html[data-theme="dark"] body.home-v4 .home-principle-grid article,
html[data-theme="dark"] body.home-v4 .vision-inline,
html[data-theme="dark"] body.home-v4 .radar-home-shell,
html[data-theme="dark"] body.home-v4 .home-product-feature,
html[data-theme="dark"] body.home-v4 .home-future-strip span{
  background:rgba(14,30,50,.86);
  border-color:rgba(255,255,255,.08);
}
html[data-theme="dark"] body.home-v4 .brand-visual-frame{
  background:rgba(14,30,50,.86);
  border-color:rgba(255,255,255,.08);
}
html[data-theme="dark"] body.home-v4 .radar-home-flow span{
  background:linear-gradient(180deg,#10243d,#0d2037);
}

/* Responsive */
@media(max-width:1020px){
  body.home-v4 .v2-wrap{width:min(100% - 28px,1280px)}
  body.home-v4 .home-v4-hero{grid-template-columns:1fr;min-height:auto;padding-top:34px;gap:6px}
  body.home-v4 .home-v4-copy{text-align:center;padding:26px 28px 12px}
  body.home-v4 .home-v4-lead{margin-inline:auto}
  body.home-v4 .home-v4-slogan{margin-inline:auto}
  body.home-v4 .home-v4-actions,body.home-v4 .home-v4-principles{justify-content:center}
  body.home-v4 .home-brand-visual{min-height:500px;padding:12px 28px 28px}
  body.home-v4 .brand-visual-frame{min-height:470px}
  body.home-v4 .home-story-copy{padding-inline:18px}
  body.home-v4 .globe-showcase,body.home-v4 .globe-showcase img{min-height:650px}
  body.home-v4 .radar-home-shell{grid-template-columns:1fr}
}

@media(max-width:680px){
  body.home-v4 .v2-wrap{width:min(100% - 20px,1280px)}
  body.home-v4 .home-v4-hero{padding:12px 0 20px;gap:0}
  body.home-v4 .home-v4-hero::before{inset:2px -3px 2px;border-radius:27px}
  body.home-v4 .home-v4-copy{order:1;padding:24px 14px 18px}
  body.home-v4 .home-v4-copy h1{font-size:clamp(2.25rem,11.3vw,3.25rem);line-height:1.08}
  body.home-v4 .home-v4-lead{font-size:.94rem;line-height:1.86}
  body.home-v4 .home-v4-actions{display:grid;grid-template-columns:1fr;width:100%}
  body.home-v4 .home-v4-actions .v2-cta{width:100%}
  body.home-v4 .home-v4-principles{display:grid;grid-template-columns:repeat(3,1fr);width:100%;gap:5px}
  body.home-v4 .home-brand-visual{order:2;width:100%;min-height:0;padding:4px 9px 12px}
  body.home-v4 .brand-visual-frame{min-height:335px;border-radius:23px}
  body.home-v4 .brand-visual-frame img{transform:scale(1.15)}
  body.home-v4 .ecosystem-axis{grid-template-columns:1fr;gap:8px;margin-top:9px}
  body.home-v4 .ecosystem-axis-card{grid-column:auto}
  body.home-v4 .axis-card{min-height:0;padding:16px}
  body.home-v4 .home-story-section{padding:62px 0 50px}
  body.home-v4 .home-story-grid{gap:20px}
  body.home-v4 .home-story-copy{padding:0 4px}
  body.home-v4 .home-story-copy h2{font-size:clamp(1.85rem,8.9vw,2.65rem)}
  body.home-v4 .home-principle-grid{grid-template-columns:1fr!important}
  body.home-v4 .home-principle-grid article{min-height:0;text-align:start}
  body.home-v4 .vision-inline{padding:18px;text-align:start}
  body.home-v4 .globe-showcase{min-height:490px;border-radius:25px}
  body.home-v4 .globe-showcase img{min-height:490px;transform:scale(1.19)}
  body.home-v4 .home-radar-section{padding:56px 0}
  body.home-v4 .radar-home-shell{padding:9px;border-radius:24px}
  body.home-v4 .radar-home-copy{padding:21px 17px}
  body.home-v4 .radar-home-flow{grid-template-columns:1fr 1fr}
  body.home-v4 .radar-home-cta{width:100%}
  body.home-v4 .radar-home-panel{grid-template-columns:1fr 1fr;padding:10px}
  body.home-v4 .radar-home-panel article{min-height:138px;padding:14px}
  body.home-v4 .home-product-feature-grid{grid-template-columns:1fr}
  body.home-v4 .home-product-feature{min-height:0;padding:20px;gap:13px}
}

@media(max-width:390px){
  body.home-v4 .home-v4-principles{grid-template-columns:1fr}
  body.home-v4 .globe-showcase,body.home-v4 .globe-showcase img{min-height:420px}
  body.home-v4 .radar-home-panel{grid-template-columns:1fr}
}

@media(prefers-reduced-motion:reduce){
  body.home-v4 .axis-card,
  body.home-v4 .radar-home-panel article,
  body.home-v4 .home-product-feature,
  body.home-v4 .v2-cta{transition:none!important}
}
