/* ARIFE landing v302 — cinematic production console */
html body.landing-page.landing-v302{
  --landing-blue:#5f8ee8;
  --landing-ice:#b7d0ff;
  --landing-violet:#7667d9;
  --landing-ink:#070b12;
  background:#070a10!important;
  color:#f7f9ff;
}

html body.landing-v302 .landing-hero-v302{
  position:relative;
  min-height:100svh;
  padding:94px 0 58px;
  overflow:hidden;
  isolation:isolate;
  background:#070b12;
}

html body.landing-v302 .landing-video{
  opacity:.25;
  filter:saturate(.72) contrast(1.1) brightness(.68) hue-rotate(176deg);
}

html body.landing-v302 .landing-video.is-ready{opacity:.25}

.landing-shade-v302{
  position:absolute;
  inset:0;
  z-index:0;
  background:
    radial-gradient(circle at 72% 45%,rgba(82,118,206,.23),transparent 26%),
    radial-gradient(circle at 22% 42%,rgba(8,13,24,.1),rgba(4,7,13,.84) 57%),
    linear-gradient(180deg,rgba(4,8,14,.34),#070b12 96%);
}

.landing-grid-v302{
  position:absolute;
  z-index:0;
  inset:0;
  opacity:.34;
  background-image:
    linear-gradient(rgba(154,184,235,.08) 1px,transparent 1px),
    linear-gradient(90deg,rgba(154,184,235,.08) 1px,transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(180deg,transparent 5%,#000 38%,transparent 96%);
}

.landing-grid-v302::after{
  content:"";
  position:absolute;
  left:-10%;
  right:-10%;
  bottom:-44%;
  height:70%;
  transform:perspective(650px) rotateX(61deg);
  transform-origin:center top;
  background-image:
    linear-gradient(rgba(119,157,227,.13) 1px,transparent 1px),
    linear-gradient(90deg,rgba(119,157,227,.13) 1px,transparent 1px);
  background-size:54px 54px;
}

.landing-stage-v302{
  position:relative;
  z-index:2;
  width:min(1320px,calc(100% - 56px));
  min-height:calc(100svh - 152px);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1.04fr) minmax(470px,.96fr);
  gap:clamp(36px,6vw,92px);
  align-items:center;
}

.landing-copy-v302{max-width:720px}

.landing-kicker-v302{
  display:flex;
  align-items:center;
  gap:15px;
  margin:0 0 23px;
  color:#a8b9d8;
  font:800 12px/1.2 Consolas,monospace;
  letter-spacing:.15em;
}

.landing-kicker-v302 span{display:flex;align-items:center;gap:8px}
.landing-kicker-v302 i,
.launch-head-v302 p i,
.reactor-status-v302 span i,
.launch-foot-v302 span i{
  width:7px;
  height:7px;
  border-radius:50%;
  background:#8fbaff;
  box-shadow:0 0 0 4px rgba(104,148,229,.1),0 0 16px #6e9cf0;
}
.landing-kicker-v302 b{
  padding:6px 9px;
  border:1px solid rgba(155,188,245,.22);
  border-radius:999px;
  background:rgba(9,15,26,.58);
  color:#dce8ff;
  font:inherit;
  letter-spacing:.1em;
}

.landing-copy-v302 h1{
  margin:0;
  font-size:clamp(56px,6.4vw,94px);
  line-height:.91;
  letter-spacing:-.075em;
  text-wrap:balance;
}
.landing-copy-v302 h1 span,
.landing-copy-v302 h1 em{display:block}
.landing-copy-v302 h1 span{color:#f9fbff}
.landing-copy-v302 h1 em{
  margin-top:12px;
  color:transparent;
  font-style:normal;
  background:linear-gradient(105deg,#cbdcff 2%,#82a9f1 45%,#9888ee 95%);
  -webkit-background-clip:text;
  background-clip:text;
  filter:drop-shadow(0 8px 30px rgba(76,112,198,.16));
}

.landing-lead-v302{
  max-width:620px;
  margin:29px 0 0;
  color:#aeb8c8;
  font-size:14px;
  line-height:1.85;
  letter-spacing:-.016em;
  word-break:keep-all;
}

.landing-actions-v302{
  display:flex;
  align-items:stretch;
  gap:15px;
  margin-top:34px;
}

.render-button-v302,
.landing-market-button-v302{
  position:relative;
  /* v2800: ::before 로 만든 '빛 스침' 띠가 평소엔 translateX(-115%) 로
     왼쪽에 대기한다. 그런데 상자를 안 잘라 둬서 그 대기 중인 띠가
     단추 왼쪽 278px 지점에 회색 마름모로 그대로 보였다.
     상자 밖은 자른다 — 띠는 단추 안에서만 지나간다. */
  overflow:hidden;
  min-height:72px;
  border-radius:16px;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,filter .2s ease;
}

html body.landing-v302 .render-button-v302{
  min-width:244px;
  padding:0 12px 0 21px;
  border:1px solid #a8c7ff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  overflow:hidden;
  cursor:pointer;
  background:
    radial-gradient(circle at 78% 0,rgba(255,255,255,.27),transparent 32%),
    linear-gradient(135deg,#4b82df 0%,#587ade 48%,#7565d4 100%);
  color:#fff;
  box-shadow:
    inset 0 2px rgba(255,255,255,.38),
    inset 0 -8px 15px rgba(18,34,91,.27),
    0 7px 0 #273e82,
    0 20px 38px rgba(34,68,153,.35);
  text-align:left;
  transform:translate3d(var(--arife-shift-x,0),var(--arife-shift-y,0),0);
}

.render-button-v302::before{
  content:"";
  position:absolute;
  inset:0;
  transform:translateX(-115%);
  background:linear-gradient(105deg,transparent 25%,rgba(255,255,255,.22) 48%,transparent 70%);
  transition:transform .55s ease;
}
.render-button-v302:hover::before{transform:translateX(115%)}
.render-button-v302:hover{
  transform:translate3d(var(--arife-shift-x,0),calc(var(--arife-shift-y,0) - 3px),0);
  box-shadow:
    inset 0 2px rgba(255,255,255,.46),
    inset 0 -8px 15px rgba(18,34,91,.22),
    0 10px 0 #273e82,
    0 28px 45px rgba(34,68,153,.42);
}
.render-button-v302:active{
  transform:translateY(5px);
  box-shadow:inset 0 4px 13px rgba(15,27,70,.3),0 2px 0 #273e82,0 9px 18px rgba(34,68,153,.25);
}
.render-copy-v302{position:relative;z-index:1;display:grid;gap:5px}
.render-copy-v302 small,
.landing-market-button-v302 small{
  color:#d7e5ff;
  font:800 11px Consolas,monospace;
  letter-spacing:.15em;
}
.render-copy-v302 strong,.landing-market-button-v302 strong{font-size:13px}
.render-key-v302{
  position:relative;
  z-index:1;
  width:44px;
  height:44px;
  border:1px solid rgba(255,255,255,.44);
  border-radius:13px;
  display:grid;
  place-items:center;
  background:linear-gradient(145deg,rgba(255,255,255,.21),rgba(16,31,79,.24));
  box-shadow:inset 0 1px rgba(255,255,255,.32),0 4px 0 rgba(23,39,93,.42);
  font-size:14px;
}

.landing-market-button-v302{
  min-width:218px;
  padding:0 15px 0 20px;
  border:1px solid rgba(172,195,232,.33);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  background:linear-gradient(145deg,rgba(27,38,57,.9),rgba(9,14,24,.92));
  box-shadow:inset 0 1px rgba(255,255,255,.1),0 7px 0 #05080e,0 20px 35px rgba(0,0,0,.28);
  color:#f4f7ff;
  transform:translate3d(var(--arife-shift-x,0),var(--arife-shift-y,0),0);
}
.landing-market-button-v302>span{display:grid;gap:6px}
.landing-market-button-v302 b{
  width:39px;
  height:39px;
  border:1px solid rgba(159,189,241,.3);
  border-radius:12px;
  display:grid;
  place-items:center;
  background:#121d31;
  color:#adcaff;
  transition:transform .2s ease,background .2s ease;
}
.landing-market-button-v302:hover{
  transform:translate3d(var(--arife-shift-x,0),calc(var(--arife-shift-y,0) - 3px),0);
  border-color:#789fe4;
  box-shadow:inset 0 1px rgba(255,255,255,.12),0 10px 0 #05080e,0 28px 45px rgba(0,0,0,.34);
}
.landing-market-button-v302:hover b{transform:rotate(7deg);background:#1c2e51}

.landing-metrics-v302{
  display:flex;
  align-items:center;
  gap:0;
  margin-top:30px;
}
.landing-metrics-v302 div{
  min-width:112px;
  display:flex;
  align-items:baseline;
  gap:9px;
  padding:0 20px;
  border-left:1px solid rgba(173,196,235,.2);
}
.landing-metrics-v302 div:first-child{padding-left:0;border-left:0}
.landing-metrics-v302 strong{color:#dce8ff;font:800 17px Consolas,monospace}
.landing-metrics-v302 span{color:#738098;font-size:12px;font-weight:800}

.landing-reactor-wrap-v302{
  position:relative;
  min-width:0;
  perspective:1200px;
}
.landing-reactor-v302{
  --reactor-blue:#6e9ce9;
  position:relative;
  height:540px;
  transform-style:preserve-3d;
  transform:rotateX(var(--stage-rx,0deg)) rotateY(var(--stage-ry,0deg));
  transition:transform .18s ease-out;
}
.landing-reactor-v302[data-mode="cinema"]{--reactor-blue:#8475e4}
.landing-reactor-v302[data-mode="market"]{--reactor-blue:#66b5dc}

.reactor-aura-v302{
  position:absolute;
  left:50%;
  top:47%;
  width:330px;
  height:330px;
  border-radius:50%;
  transform:translate(-50%,-50%) translateZ(-80px);
  background:radial-gradient(circle,var(--reactor-blue) 0,rgba(76,115,202,.2) 24%,transparent 68%);
  filter:blur(16px);
  opacity:.55;
  transition:background .25s ease;
}
.reactor-orbit-v302{
  position:absolute;
  left:50%;
  top:47%;
  border:1px solid color-mix(in srgb,var(--reactor-blue) 62%,transparent);
  border-radius:50%;
  transform-style:preserve-3d;
  box-shadow:0 0 35px color-mix(in srgb,var(--reactor-blue) 17%,transparent),inset 0 0 24px rgba(124,160,231,.08);
}
.orbit-one-v302{
  width:430px;
  height:220px;
  animation:orbit-one-v302 13s linear infinite;
}
.orbit-two-v302{
  width:300px;
  height:300px;
  animation:orbit-two-v302 17s linear infinite reverse;
}
.reactor-orbit-v302 i{
  position:absolute;
  width:9px;
  height:9px;
  border-radius:50%;
  background:#d9e7ff;
  box-shadow:0 0 16px var(--reactor-blue);
}
.reactor-orbit-v302 i:nth-child(1){left:5%;top:48%}
.reactor-orbit-v302 i:nth-child(2){right:9%;top:22%}
.reactor-orbit-v302 i:nth-child(3){left:51%;bottom:-5px}

@keyframes orbit-one-v302{
  from{transform:translate(-50%,-50%) rotateX(69deg) rotateZ(0deg)}
  to{transform:translate(-50%,-50%) rotateX(69deg) rotateZ(360deg)}
}
@keyframes orbit-two-v302{
  from{transform:translate(-50%,-50%) rotateY(68deg) rotateZ(0deg)}
  to{transform:translate(-50%,-50%) rotateY(68deg) rotateZ(360deg)}
}

.reactor-core-v302{
  position:absolute;
  left:50%;
  top:47%;
  width:174px;
  height:174px;
  padding:25px;
  border:1px solid #9fbded;
  border-radius:43px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  transform:translate(-50%,-50%) rotate(-7deg) translateZ(70px);
  background:
    radial-gradient(circle at 72% 14%,rgba(255,255,255,.32),transparent 28%),
    linear-gradient(145deg,#526f9f 0%,#263650 42%,#0c131f 82%);
  box-shadow:
    inset 3px 3px rgba(255,255,255,.16),
    inset -18px -22px 35px rgba(3,7,14,.36),
    17px 22px 0 rgba(4,7,13,.68),
    36px 52px 85px rgba(0,0,0,.48),
    0 0 64px color-mix(in srgb,var(--reactor-blue) 26%,transparent);
  transition:box-shadow .25s ease,border-color .25s ease;
}
.reactor-core-v302::before{
  content:"";
  position:absolute;
  inset:11px;
  border:1px solid rgba(210,228,255,.18);
  border-radius:34px;
}
.reactor-core-top-v302{
  position:relative;
  color:#b9ccef;
  font:800 11px Consolas,monospace;
  letter-spacing:.2em;
}
.reactor-core-v302 strong{
  position:relative;
  margin:8px 0 6px;
  color:#fff;
  font:900 56px/1 Arial,sans-serif;
  letter-spacing:-.09em;
  text-shadow:0 5px 18px rgba(0,0,0,.44);
}
.reactor-core-v302 small{
  position:relative;
  color:#c9d8f1;
  font:800 11px Consolas,monospace;
  letter-spacing:.12em;
}

.reactor-mode-v302{
  position:absolute;
  width:156px;
  min-height:82px;
  padding:13px 14px;
  border:1px solid rgba(163,188,232,.28);
  border-radius:16px;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:4px 9px;
  background:linear-gradient(145deg,rgba(31,43,63,.94),rgba(9,14,23,.96));
  box-shadow:inset 0 1px rgba(255,255,255,.09),0 7px 0 #05080d,0 22px 40px rgba(0,0,0,.32);
  color:#eef4ff;
  cursor:pointer;
  text-align:left;
  transform-style:preserve-3d;
  transition:border-color .2s ease,background .2s ease,transform .2s ease,box-shadow .2s ease;
}
.reactor-mode-v302 small{
  grid-row:1/3;
  color:#7183a2;
  font:800 11px Consolas,monospace;
}
.reactor-mode-v302 strong{font:800 12px Consolas,monospace;letter-spacing:.08em}
.reactor-mode-v302 span{color:#7f8aa0;font-size:11px;font-weight:800}
.reactor-mode-v302::after{
  content:"";
  position:absolute;
  top:12px;
  right:12px;
  width:6px;
  height:6px;
  border-radius:50%;
  background:#4a5466;
}
.reactor-mode-v302.is-active{
  border-color:#91b7f6;
  background:linear-gradient(145deg,rgba(74,109,174,.96),rgba(22,34,57,.97));
  box-shadow:inset 0 1px rgba(255,255,255,.17),0 7px 0 #0a1020,0 25px 43px rgba(29,60,128,.32);
}
.reactor-mode-v302.is-active::after{background:#bcd5ff;box-shadow:0 0 12px #9ec1ff}
.reactor-mode-v302:hover{border-color:#8eb3ee;transform:translateZ(12px) translateY(-2px)}
.mode-studio-v302{left:1%;top:14%;transform:translateZ(30px) rotate(-4deg)}
.mode-cinema-v302{right:0;top:27%;transform:translateZ(45px) rotate(4deg)}
.mode-market-v302{left:8%;bottom:12%;transform:translateZ(55px) rotate(3deg)}
.mode-studio-v302:hover{transform:translateZ(42px) translateY(-2px) rotate(-2deg)}
.mode-cinema-v302:hover{transform:translateZ(57px) translateY(-2px) rotate(2deg)}
.mode-market-v302:hover{transform:translateZ(67px) translateY(-2px) rotate(1deg)}

.reactor-floor-v302{
  position:absolute;
  left:50%;
  bottom:13px;
  width:430px;
  height:105px;
  border:1px solid rgba(126,159,218,.2);
  border-radius:50%;
  transform:translateX(-50%) rotateX(72deg) translateZ(-60px);
  background:radial-gradient(ellipse,rgba(93,129,205,.18),transparent 64%);
  box-shadow:0 0 62px rgba(72,109,192,.13);
}
.reactor-status-v302{
  position:absolute;
  left:50%;
  bottom:-2px;
  width:min(360px,80%);
  padding:12px 14px;
  border:1px solid rgba(148,179,230,.22);
  border-radius:13px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  transform:translateX(-50%);
  background:rgba(8,13,22,.82);
  box-shadow:inset 0 1px rgba(255,255,255,.07),0 8px 30px rgba(0,0,0,.28);
  backdrop-filter:blur(12px);
}
.reactor-status-v302 span{
  display:flex;
  align-items:center;
  gap:8px;
  color:#95add4;
  font:800 11px Consolas,monospace;
  letter-spacing:.12em;
  white-space:nowrap;
}
.reactor-status-v302 strong{color:#c8d2e3;font-size:11px}

.landing-scroll-v302{
  position:absolute;
  z-index:3;
  left:50%;
  bottom:20px;
  display:flex;
  align-items:center;
  gap:11px;
  transform:translateX(-50%);
  color:#73829b;
  font:800 11px Consolas,monospace;
  letter-spacing:.16em;
}
.landing-scroll-v302 i{
  position:relative;
  width:42px;
  height:1px;
  overflow:hidden;
  background:rgba(142,171,222,.25);
}
.landing-scroll-v302 i::after{
  content:"";
  position:absolute;
  inset:0;
  transform:translateX(-100%);
  background:#9dbdf1;
  animation:landing-scroll-v302 2.2s ease-in-out infinite;
}
@keyframes landing-scroll-v302{50%,100%{transform:translateX(100%)}}

.landing-paths-v302{
  position:relative;
  padding:112px 0 122px;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 20%,rgba(76,116,205,.11),transparent 27%),
    radial-gradient(circle at 88% 78%,rgba(110,91,204,.08),transparent 30%),
    #090d14;
  border-top:1px solid rgba(164,188,231,.13);
}
.landing-paths-v302::before{
  content:"ARIFE / PIPELINE";
  position:absolute;
  top:40px;
  right:-18px;
  color:rgba(214,229,255,.025);
  font:900 clamp(72px,10vw,154px)/1 Arial,sans-serif;
  letter-spacing:-.075em;
  white-space:nowrap;
}
.landing-section-head-v302{
  position:relative;
  z-index:1;
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:50px;
  margin-bottom:42px;
}
.landing-section-head-v302 .kicker,
html body.landing-v302 .landing-summary .kicker{
  color:#8fb4ef!important;
}
.landing-section-head-v302 h2{
  margin:10px 0 0;
  font-size:clamp(38px,4.4vw,62px);
  line-height:1.04;
  letter-spacing:-.06em;
}
.landing-section-head-v302>p{
  max-width:430px;
  margin:0;
  color:#8e99aa;
  font-size:12px;
  line-height:1.8;
  word-break:keep-all;
}
.landing-path-grid-v302{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  perspective:1200px;
}
.landing-path-card-v302{
  --path-accent:#6795e9;
  position:relative;
  min-height:420px;
  padding:25px;
  border:1px solid #344156;
  border-radius:25px;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  background:
    radial-gradient(circle at 85% 5%,color-mix(in srgb,var(--path-accent) 18%,transparent),transparent 34%),
    linear-gradient(145deg,rgba(255,255,255,.045),transparent 43%),
    linear-gradient(145deg,#151d2a,#090d14 72%);
  box-shadow:inset 0 1px rgba(255,255,255,.08),0 7px 0 #05070b,0 24px 44px rgba(0,0,0,.28);
  color:#f2f6ff;
  transform:perspective(1000px) rotateX(var(--card-rx,0deg)) rotateY(var(--card-ry,0deg)) translateY(0);
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.landing-path-card-v302.finish{--path-accent:#8071dd}
.landing-path-card-v302.monetize{--path-accent:#61acd4}
.landing-path-card-v302:hover{
  border-color:color-mix(in srgb,var(--path-accent) 70%,#fff);
  transform:perspective(1000px) rotateX(var(--card-rx,0deg)) rotateY(var(--card-ry,0deg)) translateY(-7px);
  box-shadow:inset 0 1px rgba(255,255,255,.1),0 12px 0 #05070b,0 36px 58px rgba(0,0,0,.36);
}
.path-index-v302{color:#8094b7;font:800 11px Consolas,monospace;letter-spacing:.14em}
.path-object-v302{
  position:relative;
  width:126px;
  height:126px;
  margin:36px auto 39px;
  border:1px solid color-mix(in srgb,var(--path-accent) 66%,#fff);
  border-radius:32px;
  display:grid;
  place-items:center;
  transform:rotate(-8deg);
  background:
    radial-gradient(circle at 73% 14%,rgba(255,255,255,.27),transparent 29%),
    linear-gradient(145deg,color-mix(in srgb,var(--path-accent) 74%,#7b8ca7),#172134 65%,#0b1019);
  box-shadow:inset 3px 3px rgba(255,255,255,.13),inset -15px -18px 26px rgba(0,0,0,.28),16px 19px 0 rgba(4,7,12,.66),29px 38px 55px rgba(0,0,0,.33),0 0 48px color-mix(in srgb,var(--path-accent) 18%,transparent);
  transition:transform .25s ease;
}
.landing-path-card-v302:hover .path-object-v302{transform:rotate(-2deg) translateY(-6px)}
.path-object-v302::before{
  content:"";
  position:absolute;
  inset:9px;
  border:1px solid rgba(222,234,255,.16);
  border-radius:25px;
}
.path-object-v302 i{position:relative;color:#fff;font:900 34px Arial,sans-serif;font-style:normal;letter-spacing:-.08em;text-shadow:0 4px 14px rgba(0,0,0,.4)}
.landing-path-card-v302 h3{margin:0;font-size:21px;letter-spacing:-.04em}
.landing-path-card-v302 p{margin:10px 0 0;color:#8995a7;font-size:12px;line-height:1.7;word-break:keep-all}
.path-action-v302{
  margin-top:auto;
  padding-top:24px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  color:#c6d7f4;
  font-size:12px;
}
.path-action-v302 b{
  width:34px;
  height:34px;
  border:1px solid rgba(155,188,241,.24);
  border-radius:11px;
  display:grid;
  place-items:center;
  background:#121c2d;
  color:#9abcf4;
}

html body.landing-v302 .landing-summary-v302{
  padding:108px 0 120px;
  background:
    radial-gradient(circle at 14% 20%,rgba(74,111,195,.09),transparent 30%),
    radial-gradient(circle at 82% 88%,rgba(104,86,192,.08),transparent 32%),
    #070a10;
}
html body.landing-v302 .landing-summary-v302::before{color:rgba(214,229,255,.02)}
html body.landing-v302 .policy-lane{
  --lane-accent:#6d9ae8;
  border-color:#344156;
  background:
    radial-gradient(circle at 90% 0,color-mix(in srgb,var(--lane-accent) 12%,transparent),transparent 32%),
    linear-gradient(145deg,rgba(255,255,255,.04),transparent 43%),
    #0c111b;
  box-shadow:inset 0 1px rgba(255,255,255,.07),0 6px 0 #04060a,0 22px 42px rgba(0,0,0,.25);
}
html body.landing-v302 .policy-lane.enterprise{--lane-accent:#8273df}
html body.landing-v302 .policy-lane:hover{border-color:color-mix(in srgb,var(--lane-accent) 62%,#fff);box-shadow:inset 0 1px rgba(255,255,255,.09),0 11px 0 #04060a,0 34px 56px rgba(0,0,0,.33)}
html body.landing-v302 .policy-note{display:none}
.policy-link-v302{
  min-height:48px;
  margin-top:20px;
  padding:0 10px 0 15px;
  border:1px solid color-mix(in srgb,var(--lane-accent) 38%,#263142);
  border-radius:13px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:color-mix(in srgb,var(--lane-accent) 8%,#0c121c);
  color:#dce8fb;
  font-size:12px;
  font-weight:850;
}
.policy-link-v302 span{
  width:30px;
  height:30px;
  border-radius:9px;
  display:grid;
  place-items:center;
  background:color-mix(in srgb,var(--lane-accent) 24%,#0c121c);
  color:#c7dbff;
}

.launch-modal-v302{
  position:fixed;
  z-index:400;
  inset:0;
  padding:24px;
  display:grid;
  place-items:center;
}
.launch-modal-v302[hidden]{display:none}
.launch-backdrop-v302{
  position:absolute;
  inset:0;
  background:rgba(2,5,9,.78);
  backdrop-filter:blur(15px) saturate(.8);
}
.launch-dialog-v302{
  position:relative;
  width:min(860px,100%);
  max-height:min(850px,calc(100svh - 48px));
  overflow:auto;
  border:1px solid #50617d;
  border-radius:26px;
  background:
    radial-gradient(circle at 85% -10%,rgba(121,157,226,.14),transparent 36%),
    linear-gradient(145deg,rgba(255,255,255,.05),transparent 40%),
    linear-gradient(145deg,#151d29,#080c13 74%);
  box-shadow:inset 0 1px rgba(255,255,255,.11),0 8px 0 #030509,0 38px 110px rgba(0,0,0,.68);
  animation:launch-in-v302 .24s ease-out;
}
@keyframes launch-in-v302{from{opacity:0;transform:translateY(15px) scale(.975)}}
.launch-head-v302{
  padding:27px 29px 24px;
  border-bottom:1px solid #2f3b50;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
}
.launch-head-v302 p{
  margin:0 0 11px;
  display:flex;
  align-items:center;
  gap:9px;
  color:#9ab8eb;
  font:800 11px Consolas,monospace;
  letter-spacing:.15em;
}
.launch-head-v302 h2{margin:0;color:#fff;font-size:29px;letter-spacing:-.045em}
.launch-head-v302>div>span{display:block;margin-top:9px;color:#8c98aa;font-size:12px;line-height:1.6}
.launch-close-v302{
  width:44px;
  height:44px;
  flex:none;
  border:1px solid #52627c;
  border-radius:14px;
  background:linear-gradient(145deg,#273348,#101722);
  box-shadow:inset 0 1px rgba(255,255,255,.13),0 5px 0 #04060a,0 14px 25px rgba(0,0,0,.3);
  color:#eaf1ff;
  cursor:pointer;
  font-size:24px;
  line-height:1;
}
.launch-close-v302:hover{border-color:#a9c8ff;transform:translateY(-2px);box-shadow:inset 0 1px rgba(255,255,255,.17),0 7px 0 #04060a,0 18px 28px rgba(40,69,132,.22)}
.launch-options-v302{display:grid;gap:11px;padding:22px 29px}
.launch-option-v302{
  --launch-accent:#6c9bea;
  position:relative;
  min-height:106px;
  padding:17px 18px;
  border:1px solid #334158;
  border-radius:18px;
  display:grid;
  grid-template-columns:45px minmax(0,1fr) 68px 34px;
  align-items:center;
  gap:15px;
  overflow:hidden;
  background:linear-gradient(145deg,rgba(255,255,255,.035),transparent 43%),#0d141f;
  box-shadow:inset 0 1px rgba(255,255,255,.06),0 4px 0 #05070b;
  color:#f4f7ff;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.launch-option-v302.cinema{--launch-accent:#8272df}
.launch-option-v302.depth{--launch-accent:#5bafd8}
.launch-option-v302::before{
  content:"";
  position:absolute;
  right:8%;
  top:-80px;
  width:190px;
  height:150px;
  border-radius:50%;
  background:var(--launch-accent);
  filter:blur(65px);
  opacity:.11;
}
.launch-option-v302:hover{
  z-index:1;
  border-color:color-mix(in srgb,var(--launch-accent) 70%,#fff);
  transform:translateY(-3px);
  box-shadow:inset 0 1px rgba(255,255,255,.09),0 7px 0 #05070b,0 18px 32px rgba(0,0,0,.27);
}
.launch-number-v302{color:#788aa8;font:800 12px Consolas,monospace}
.launch-option-v302 div{position:relative;display:grid;gap:5px}
.launch-option-v302 small{color:var(--launch-accent);font:800 11px Consolas,monospace;letter-spacing:.14em}
.launch-option-v302 strong{font-size:16px;letter-spacing:-.03em}
.launch-option-v302 p{margin:0;color:#7f8a9c;font-size:12px}
.launch-option-v302>b{
  position:relative;
  width:62px;
  height:62px;
  border:1px solid color-mix(in srgb,var(--launch-accent) 64%,#fff);
  border-radius:18px;
  display:grid;
  place-items:center;
  transform:rotate(-6deg);
  background:linear-gradient(145deg,color-mix(in srgb,var(--launch-accent) 72%,#73829b),#192439 72%);
  box-shadow:inset 2px 2px rgba(255,255,255,.12),8px 9px 0 #070a10;
  color:#fff;
  font:900 19px Arial,sans-serif;
}
.launch-option-v302>i{position:relative;color:#a9c5f4;font-size:17px;font-style:normal}
.launch-foot-v302{
  padding:17px 29px 22px;
  border-top:1px solid #2c3749;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.launch-foot-v302 span{display:flex;align-items:center;gap:9px;color:#7d899b;font-size:11px}
.launch-foot-v302 button{
  min-width:110px;
  height:39px;
  border:1px solid #3a465a;
  border-radius:10px;
  background:#101722;
  color:#aeb9ca;
  cursor:pointer;
  font-size:11px;
  font-weight:850;
}
body.is-launch-open-v302{overflow:hidden}

.render-button-v302:focus-visible,
.landing-market-button-v302:focus-visible,
.reactor-mode-v302:focus-visible,
.landing-path-card-v302:focus-visible,
.policy-link-v302:focus-visible,
.launch-option-v302:focus-visible,
.launch-close-v302:focus-visible,
.launch-foot-v302 button:focus-visible{
  outline:2px solid #bdd5ff;
  outline-offset:4px;
}

@media(max-width:1100px){
  .landing-stage-v302{grid-template-columns:minmax(0,1fr) 430px;gap:25px}
  .landing-copy-v302 h1{font-size:clamp(52px,6.1vw,72px)}
  .landing-reactor-v302{height:500px;transform:scale(.9) rotateX(var(--stage-rx,0deg)) rotateY(var(--stage-ry,0deg))}
}

@media(max-width:900px){
  html body.landing-v302 .landing-hero-v302{padding-top:112px}
  .landing-stage-v302{grid-template-columns:1fr;gap:16px;text-align:center}
  .landing-copy-v302{max-width:760px;margin:0 auto}
  .landing-kicker-v302,.landing-actions-v302,.landing-metrics-v302{justify-content:center}
  .landing-lead-v302{margin-left:auto;margin-right:auto}
  .landing-reactor-wrap-v302{width:min(560px,100%);margin:0 auto}
  .landing-reactor-v302{height:470px}
  .landing-section-head-v302,.landing-summary-head{align-items:flex-start;flex-direction:column}
  .landing-path-grid-v302{grid-template-columns:1fr}
  .landing-path-card-v302{min-height:330px;display:grid;grid-template-columns:150px 1fr;grid-template-rows:auto 1fr auto;column-gap:28px}
  .landing-path-card-v302 .path-index-v302{grid-column:1/-1}
  .path-object-v302{grid-row:2/4;margin:24px 0;align-self:center}
  .path-action-v302{grid-column:2}
}

@media(max-width:620px){
  html body.landing-v302 .landing-hero-v302{padding:102px 0 45px}
  .landing-stage-v302{width:min(100% - 28px,1320px)}
  .landing-copy-v302 h1{font-size:clamp(44px,13vw,62px)}
  .landing-copy-v302 h1 em{margin-top:8px}
  .landing-lead-v302{font-size:12px}
  .landing-actions-v302{display:grid;grid-template-columns:1fr}
  .render-button-v302,.landing-market-button-v302{width:100%;min-width:0}
  .landing-metrics-v302{justify-content:space-between}
  .landing-metrics-v302 div{min-width:0;padding:0 12px;flex-direction:column;gap:5px}
  .landing-reactor-wrap-v302{margin-top:-18px}
  .landing-reactor-v302{height:410px;transform:scale(.78) rotateX(var(--stage-rx,0deg)) rotateY(var(--stage-ry,0deg));margin:-22px -55px}
  .landing-scroll-v302{display:none}
  .landing-paths-v302,html body.landing-v302 .landing-summary-v302{padding:80px 0}
  .landing-section-head-v302 h2,.landing-summary-head h2{font-size:37px}
  .landing-path-card-v302{min-height:390px;display:flex}
  .path-object-v302{margin:31px auto 35px}
  .launch-modal-v302{padding:10px}
  .launch-dialog-v302{border-radius:20px}
  .launch-head-v302{padding:21px 19px 18px}
  .launch-head-v302 h2{font-size:24px}
  .launch-head-v302>div>span{padding-right:10px}
  .launch-options-v302{padding:16px 19px}
  .launch-option-v302{grid-template-columns:32px minmax(0,1fr) 45px;padding:14px}
  .launch-option-v302>b{width:43px;height:43px;border-radius:13px;font-size:14px}
  .launch-option-v302>i{display:none}
  .launch-option-v302 p{display:none}
  .launch-foot-v302{padding:15px 19px 19px}
  .launch-foot-v302 span{display:none}
}

@media(prefers-reduced-motion:reduce){
  .orbit-one-v302,.orbit-two-v302,.landing-scroll-v302 i::after{animation:none}
  .landing-reactor-v302,.landing-path-card-v302{transform:none!important}
}

/* 번호 `01` `02` `03` 이 한 자씩 세로로 끊기던 것 (클로드코드)
   `auto 1fr` 격자에서 첫 칸은 옆 칸에 밀리면 min-content(글자 한 자 폭)까지
   줄어든다. 읽기용 CSS 가 이 글씨를 8px → 12px 로 키우면서 `01` 이 칸을 넘어
   `0` / `1` 두 줄로 쪼개졌다. 줄바꿈을 막으면 칸이 글자 폭만큼 확보된다. */
.reactor-mode-v302 small{white-space:nowrap}

/* v2800: 위에서 준 overflow:hidden 이 다른 묶음의 `overflow:visible!important`
   에 밀렸다(실측: 여전히 visible). 아이디 급 무게로 못 박는다.
   대기 중인 '빛 스침' 띠가 단추 왼쪽 278px 에 회색 마름모로 보이던 문제. */
.render-button-v302:not(#_):not(#_),
.landing-market-button-v302:not(#_):not(#_){
  overflow:hidden!important;
}

/* v2800: 홈이 가로로 6,393px 까지 뻗어 화면 아래에 가로 스크롤 막대가 생겼다.
   범인은 배경 격자(`.landing-grid-v302`)의 ::after — 원근(matrix3d)이 걸린
   2,292px 짜리 바닥판이라 투영되면서 화면 밖으로 한참 뻗는다.
   장식이므로 상자 밖은 자른다. */
.landing-grid-v302:not(#_):not(#_){
  overflow:hidden!important;
}

/* ── v2810: 랜딩 영상을 더 보이게 ───────────────────────────
   영상이 불투명도 .25 에 brightness(.68) 까지 눌려 있어서 거의
   안 보였다. 게다가 hue-rotate(176deg) 가 원본의 청록 바다를
   갈색으로 돌려 놓아 사이트 색(청록·보라)과도 어긋났다.

   불투명도를 .58 로 올리고 색보정을 걷어 원본 청록을 되살린다.
   대신 글씨가 있는 왼쪽만 어둡게 남기는 가로 그늘로 바꿔서
   제목·본문 대비는 그대로 지킨다(실측 16.3:1 / 17.9:1 — AAA 기준 7:1).
   좁은 화면에서는 글씨가 화면 전체를 쓰므로 그늘도 전체로 돌린다. */
html body.landing-v302 .landing-video:not(#_):not(#_),
html body.landing-v302 .landing-video.is-ready:not(#_):not(#_){
  opacity:.58!important;
  filter:saturate(.9) contrast(1.04) brightness(.82)!important;
}
.landing-shade-v302:not(#_):not(#_){
  background:
    radial-gradient(circle at 72% 45%,rgba(82,118,206,.16),transparent 30%),
    linear-gradient(90deg,rgba(4,7,13,.86) 0%,rgba(4,7,13,.7) 32%,rgba(4,7,13,.3) 58%,rgba(4,7,13,.16) 100%),
    linear-gradient(180deg,rgba(4,8,14,.3),rgba(7,11,18,.5) 82%,#070b12 99%)!important;
}
@media (max-width:900px){
  html body.landing-v302 .landing-video:not(#_):not(#_),
  html body.landing-v302 .landing-video.is-ready:not(#_):not(#_){
    opacity:.44!important;
  }
  .landing-shade-v302:not(#_):not(#_){
    background:
      radial-gradient(circle at 72% 38%,rgba(82,118,206,.14),transparent 34%),
      linear-gradient(180deg,rgba(4,7,13,.62),rgba(4,7,13,.74) 46%,#070b12 98%)!important;
  }
}

/* ── v2820: 배경 대문자 워터마크가 화면 밖으로 잘리던 것 ───────
   `ARIFE / PIPELINE` 과 `ARIFE ECOSYSTEM` 은 글자 크기를 10vw·12vw 로
   잡아 두고 오른쪽 밖(-18px·-16px)에 붙여 놨다. 넓은 화면에서는
   `ECOSYSTEM` 쪽이 1,470px 까지 자라 왼쪽 `A` 가 화면 밖에서 잘렸다.
   단어 중간이 끊기면 장식이 아니라 고장으로 보인다.

   화면에 들어갈 만큼만 키운다. 두 글자열의 폭은 글자 크기의
   각각 7.2배·9.4배다(실측 — 위는 Arial, 아래는 본문 글꼴을 물려받아 더 넓다). 그래서 남는 폭을
   그 배수로 나눈 값을 상한으로 걸면 항상 딱 맞게 들어온다.
   56px 은 세로 스크롤 막대 몫까지 뺀 여유다. */
html body.landing-v302 .landing-paths-v302::before{
  right:20px!important;
  font-size:min(clamp(44px,10vw,154px),calc((100vw - 56px) / 7.2))!important;
}
html body.landing-v302 .landing-summary-v302::before{
  right:20px!important;
  font-size:min(clamp(44px,12vw,180px),calc((100vw - 56px) / 9.4))!important;
}

/* ── v1208: 랜딩 카드 영상 ─────────────────────────────
   영상이 카드 맨 위 모서리까지 꽉 차게 들어간다 (마켓 상품 카드와 같은 방식).
   호버 모션(카드 틸트·떠오름)은 기존 규칙 그대로 살아 있다. */

/* 파이프라인 카드 — 위쪽 번호줄을 빼고 영상이 카드 상단을 차지한다 */
.landing-path-card-v302 .path-index-v302{display:none}
.path-media-v1207{
  order:-1;
  position:relative;
  width:calc(100% + 50px);
  margin:-25px -25px 22px;
  aspect-ratio:16/9;
  overflow:hidden;
  background:#0b1019;
  border-bottom:1px solid color-mix(in srgb,var(--path-accent) 45%,#fff);
  transition:filter .25s ease;
}
.path-media-v1207 video{width:100%;height:100%;object-fit:cover;display:block}
.path-media-v1207 i{display:none}
.landing-path-card-v302:hover .path-media-v1207{filter:brightness(1.06)}
.landing-path-card-v302{min-height:0;padding-top:0}

/* 리액터 모드 카드 — 영상만, 글자 없음 */
body.landing-v302 .reactor-mode-v302{
  width:355px;
  min-height:0;
  height:auto;
  padding:0;
  display:block;
  overflow:hidden;
  font-size:0;
  line-height:0;
  border-radius:20px;
  background:#0b1019;
}
body.landing-v302 .mode-media-v1207{
  position:relative;
  display:block;
  width:100%;
  aspect-ratio:16/9;
  overflow:hidden;
  font-size:0;
  line-height:0;
}
body.landing-v302 .mode-media-v1207 video{
  width:100%;height:100%;object-fit:cover;display:block;
}
body.landing-v302 .mode-media-v1207::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(6,10,18,0) 60%,rgba(6,10,18,.28));
  transition:opacity .25s ease;
}
body.landing-v302 .reactor-mode-v302.is-active .mode-media-v1207::after{
  background:linear-gradient(180deg,rgba(52,92,166,.14),rgba(16,30,58,.34));
}
body.landing-v302 .reactor-mode-v302:hover .mode-media-v1207::after{opacity:.45}
/* 남아 있는 글자 요소가 있어도 보이지 않게 */
body.landing-v302 .reactor-mode-v302 > small,
body.landing-v302 .reactor-mode-v302 > strong,
body.landing-v302 .reactor-mode-v302 > span:not(.mode-media-v1207){display:none}
body.landing-v302 .reactor-mode-v302::after{top:12px;right:12px;z-index:2}

/* 중앙 코어 — 로고 영상을 가장 크게, 가장 앞에 */
body.landing-v302 .reactor-core-v302{
  width:300px;
  height:300px;
  z-index:8;
  overflow:hidden;
  border-radius:56px;
  transform:translate(-88%,-56%) rotate(-7deg) translateZ(170px);
}
body.landing-v302 .core-media-v1208{
  position:absolute;
  inset:0;
  display:block;
  border-radius:inherit;
  overflow:hidden;
  z-index:0;
}
body.landing-v302 .core-media-v1208 video{width:100%;height:100%;object-fit:cover;display:block}
/* 로고 영상이 이미 ARIFE 를 보여 주므로 안쪽 글자는 감춘다 */
body.landing-v302 .reactor-core-v302 .reactor-core-top-v302,
body.landing-v302 .reactor-core-v302 > strong,
body.landing-v302 .reactor-core-v302 > small{display:none}

/* 카드가 커진 만큼 서로·코어와 겹치게 배치한다 */
.landing-reactor-v302{height:730px}
.mode-studio-v302{left:-4%;top:0;z-index:5;transform:translateZ(105px) rotate(-4deg)}
.mode-cinema-v302{right:-2%;top:43%;z-index:6;transform:translateZ(130px) rotate(4deg)}
.mode-market-v302{left:-4%;bottom:0;z-index:5;transform:translateZ(105px) rotate(3deg)}
.mode-studio-v302:hover{transform:translateZ(117px) translateY(-3px) rotate(-2deg)}
.mode-cinema-v302:hover{transform:translateZ(142px) translateY(-3px) rotate(2deg)}
.mode-market-v302:hover{transform:translateZ(117px) translateY(-3px) rotate(1deg)}

@media (max-width:1200px){
  body.landing-v302 .reactor-mode-v302{width:320px}
  body.landing-v302 .reactor-core-v302{width:240px;height:240px;border-radius:38px}
  .landing-reactor-v302{height:620px}
  .mode-studio-v302{left:0;top:1%}
  .mode-cinema-v302{right:0;top:46%}
  .mode-market-v302{left:0;bottom:2%}
}
@media (max-width:900px){
  body.landing-v302 .reactor-mode-v302{width:262px}
  body.landing-v302 .reactor-core-v302{width:200px;height:200px;border-radius:32px}
  .landing-reactor-v302{height:540px}
}
@media (max-width:760px){
  body.landing-v302 .reactor-mode-v302{width:200px;border-radius:16px}
  body.landing-v302 .reactor-core-v302{width:150px;height:150px;border-radius:24px}
  .landing-reactor-v302{height:450px}
  .mode-studio-v302{left:1%;top:1%}
  .mode-cinema-v302{right:1%;top:44%}
  .mode-market-v302{left:1%;bottom:2%}
}

/* v1210: 로고 영상 위로 지나가던 파란 궤도선을 걷어낸다 */
body.landing-v302 .reactor-orbit-v302{display:none}

/* v1211: 밝은 배경에서 로고 카드가 묻히지 않게 테두리와 그림자를 준다 */
body.landing-v302 .reactor-core-v302{
  border:1px solid rgba(120,158,220,.5);
  box-shadow:
    0 2px 0 rgba(255,255,255,.6) inset,
    0 18px 40px rgba(24,48,92,.28),
    0 42px 80px rgba(24,48,92,.18),
    0 0 0 6px rgba(255,255,255,.35);
  background:linear-gradient(160deg,#f4f8ff,#e6eefb);
}
body.landing-v302 .core-media-v1208::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  box-shadow:inset 0 0 40px rgba(46,111,216,.14);
  pointer-events:none;
}
/* 카드 영상도 같은 결로 살짝 띄운다 */
body.landing-v302 .reactor-mode-v302{
  border:1px solid rgba(120,158,220,.42);
  box-shadow:0 14px 32px rgba(24,48,92,.24),0 30px 60px rgba(24,48,92,.14);
}

/* ── v1212: 유리 투명형 단추 ───────────────────────────
   배경이 은은하게 비치는 유리 단추로 통일한다.
   글래스 테마 시트가 뒤에 오므로 우선순위를 충분히 높여 둔다. */

/* 히어로 — 제작 시작 / 작품 둘러보기 */
html body.landing-v302 .render-button-v302,
html body.landing-v302 .landing-market-button-v302{
  min-height:66px;
  min-width:212px;
  padding:0 14px 0 24px;
  border:1px solid rgba(126,163,224,.42);
  border-radius:18px;
  background:linear-gradient(150deg,rgba(255,255,255,.52),rgba(255,255,255,.24));
  -webkit-backdrop-filter:blur(16px) saturate(1.25);
  backdrop-filter:blur(16px) saturate(1.25);
  box-shadow:
    inset 0 1px rgba(255,255,255,.85),
    inset 0 -1px rgba(120,155,215,.22),
    0 12px 26px rgba(26,52,98,.16);
  color:#14202e;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease;
}
html body.landing-v302 .render-button-v302 strong,
html body.landing-v302 .landing-market-button-v302 strong{
  color:#14202e;
  font-size:15px;
  letter-spacing:-.02em;
}
html body.landing-v302 .render-button-v302:hover,
html body.landing-v302 .landing-market-button-v302:hover{
  border-color:rgba(46,111,216,.66);
  background:linear-gradient(150deg,rgba(255,255,255,.68),rgba(226,238,255,.42));
  box-shadow:
    inset 0 1px rgba(255,255,255,.95),
    0 18px 34px rgba(26,52,98,.22);
  transform:translateY(-2px);
}
/* 오른쪽 동그란 표시는 파란 점으로 남겨 시선을 잡는다 */
html body.landing-v302 .render-key-v302,
html body.landing-v302 .landing-market-button-v302 b{
  width:42px;
  height:42px;
  border-radius:13px;
  display:grid;
  place-items:center;
  border:1px solid rgba(46,111,216,.34);
  background:linear-gradient(150deg,rgba(70,130,230,.92),rgba(96,110,220,.92));
  color:#fff;
  font-size:14px;
  box-shadow:0 6px 14px rgba(38,84,170,.32);
}

/* 파이프라인 카드 — AI 스튜디오 / 영화 제작소 / 마켓 보기 */
html body.landing-v302 .path-action-v302{
  margin-top:auto;
  padding:12px 12px 12px 18px;
  border:1px solid rgba(126,163,224,.4);
  border-radius:15px;
  background:linear-gradient(150deg,rgba(255,255,255,.5),rgba(255,255,255,.22));
  -webkit-backdrop-filter:blur(14px) saturate(1.2);
  backdrop-filter:blur(14px) saturate(1.2);
  box-shadow:inset 0 1px rgba(255,255,255,.8),0 8px 20px rgba(26,52,98,.14);
  color:#14202e;
  font-size:13.5px;
  font-weight:800;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease;
}
html body.landing-v302 .landing-path-card-v302:hover .path-action-v302{
  border-color:rgba(46,111,216,.6);
  background:linear-gradient(150deg,rgba(255,255,255,.66),rgba(226,238,255,.4));
  box-shadow:inset 0 1px rgba(255,255,255,.92),0 14px 28px rgba(26,52,98,.2);
  transform:translateY(-2px);
}
html body.landing-v302 .path-action-v302 b{
  width:34px;
  height:34px;
  border:1px solid rgba(46,111,216,.32);
  border-radius:11px;
  background:linear-gradient(150deg,rgba(70,130,230,.92),rgba(96,110,220,.92));
  color:#fff;
  box-shadow:0 5px 12px rgba(38,84,170,.3);
}

/* 판매 시작 / 기업 라이선스 */
html body.landing-v302 .policy-link-v302{
  min-height:54px;
  padding:0 12px 0 18px;
  border:1px solid rgba(126,163,224,.4);
  border-radius:15px;
  background:linear-gradient(150deg,rgba(255,255,255,.5),rgba(255,255,255,.22));
  -webkit-backdrop-filter:blur(14px) saturate(1.2);
  backdrop-filter:blur(14px) saturate(1.2);
  box-shadow:inset 0 1px rgba(255,255,255,.8),0 8px 20px rgba(26,52,98,.14);
  color:#14202e;
  font-weight:800;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease;
}
html body.landing-v302 .policy-link-v302:hover{
  border-color:rgba(46,111,216,.6);
  background:linear-gradient(150deg,rgba(255,255,255,.66),rgba(226,238,255,.4));
  box-shadow:inset 0 1px rgba(255,255,255,.92),0 14px 28px rgba(26,52,98,.2);
  transform:translateY(-2px);
}
html body.landing-v302 .policy-link-v302 span{
  width:34px;
  height:34px;
  border-radius:11px;
  display:grid;
  place-items:center;
  border:1px solid rgba(46,111,216,.32);
  background:linear-gradient(150deg,rgba(70,130,230,.92),rgba(96,110,220,.92));
  color:#fff;
  box-shadow:0 5px 12px rgba(38,84,170,.3);
}

/* v1214: 시네마 카드가 로고에 절반이나 가려져 있어서 오른쪽으로 더 뺀다.
   로고와는 모서리만 살짝 걸치게. 화면이 넓을수록 더 많이 뺄 수 있다. */
@media (min-width:1900px){
  .mode-cinema-v302{right:-90px}
}
@media (min-width:1601px) and (max-width:1899px){
  .mode-cinema-v302{right:-45px}
}
@media (min-width:1201px) and (max-width:1600px){
  .mode-cinema-v302{right:0}
}

/* v1217: 마켓·기업 라이선스 레인 상단 영상 (카드 맨 위 모서리까지 꽉 차게) */
.lane-media-v1217{
  position:relative;
  width:calc(100% + 56px);
  margin:-28px -28px 22px;
  aspect-ratio:16/9;
  overflow:hidden;
  background:#0b1019;
  border-bottom:1px solid color-mix(in srgb,var(--lane-accent,#6795e9) 42%,#fff);
  transition:filter .25s ease;
}
.lane-media-v1217 video{width:100%;height:100%;object-fit:cover;display:block}
.policy-lane:hover .lane-media-v1217{filter:brightness(1.05)}
.policy-lane{overflow:hidden}
