:root {
  color-scheme: dark;
  --scheme: dark;
  --bg: #050100;
  --surface: rgba(13, 4, 1, .74);
  --ink: #fff3d1;
  --muted: rgba(255, 238, 199, .64);
  --line: rgba(242, 185, 60, .32);
  --accent: #f0b52c;
  --accent-ink: #120500;
  --campaign: 860px;
  --scroll: 0;
  --hero-depth: 0;
}

* { box-sizing: border-box; }
.sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
html { scroll-behavior: smooth; background: var(--bg); }
body { min-width: 1100px; margin: 0; overflow-x: hidden; background: #030000; color: var(--ink); font-family: "Helvetica Neue", Arial, sans-serif; -webkit-font-smoothing: antialiased; }
a { color: inherit; }

.section-caption,
.section-caption--wide,
.hero-copy__jp,
.reason-card__content > span,
.role-card__detail b,
.role-card__detail p,
.flow-option__scene b,
.flow-option__scene em,
.faq-drawer > button span,
.faq-drawer__answer p,
.entry-copy > strong,
.trial-modal__lead,
.trial-modal__note,
.trial-field small { word-break: auto-phrase; }

.ambient { position: fixed; inset: -8%; background: linear-gradient(rgba(31,0,0,.62),rgba(0,0,0,.8)), url("./assets/powder-field.webp") center / cover; filter: blur(36px) brightness(.46); transform: scale(1.1) translateY(calc(var(--scroll) * -22px)); }
.campaign { position: relative; width: var(--campaign); margin: 0 auto; overflow: visible; background: #080100; box-shadow: 0 0 110px #000; isolation: isolate; }
.panel { --local:.5; --bg-x:0px; --bg-y:0px; --bg-scale:1.09; --bg-rotation:0deg; --bg-bright:1; --bg-saturate:1.06; --light-x:0px; --light-y:0px; --light-rotation:0deg; --light-inverse-x:0px; --light-inverse-y:0px; --light-inverse-rotation:0deg; position:relative; min-height:1280px; overflow:hidden; background:#080100; isolation:isolate; }
.panel__bg { position:absolute; z-index:0; inset:-92px; overflow:hidden; background-position:var(--panel-position,center); background-size:var(--panel-size,cover); background-repeat:no-repeat; filter:brightness(var(--bg-bright)) saturate(var(--bg-saturate)); transform:translate3d(var(--bg-x),var(--bg-y),0) rotate(var(--bg-rotation)) scale(var(--bg-scale)); transform-origin:var(--bg-origin,center); pointer-events:none; }

.panel__light { position:absolute; z-index:1; inset:0; pointer-events:none; -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 20px,#000 calc(100% - 20px),transparent 100%); mask-image:linear-gradient(90deg,transparent 0,#000 20px,#000 calc(100% - 20px),transparent 100%); }
.panel__light::after { content:""; position:absolute; inset:-14%; background:radial-gradient(ellipse at 22% 24%,rgba(255,224,148,.2),transparent 28%),radial-gradient(ellipse at 78% 72%,rgba(145,5,26,.24),transparent 34%),linear-gradient(108deg,transparent 34%,rgba(255,245,211,.07) 48%,transparent 61%); mix-blend-mode:screen; opacity:.8; transform:translate3d(var(--light-x),var(--light-y),0) rotate(var(--light-rotation)) scale(1.08); }
.panel__light::before { content:""; position:absolute; inset:-14%; background:radial-gradient(circle at calc(18% + var(--local) * 64%) calc(24% + var(--local) * 48%),rgba(255,246,199,.4) 0 1px,rgba(255,155,27,.16) 2px,transparent 17%),radial-gradient(ellipse at calc(78% - var(--local) * 42%) calc(70% - var(--local) * 36%),rgba(155,17,32,.28),transparent 34%); mix-blend-mode:screen; opacity:calc(.42 + var(--local) * .38); transform:translate3d(var(--light-inverse-x),var(--light-inverse-y),0) rotate(var(--light-inverse-rotation)) scale(1.08); }

.panel.is-art-ready .panel__bg { background-image:var(--panel-image); }
.panel.is-motion-active .panel__bg { will-change:transform,filter; }
.panel.is-motion-active .panel__light::before,
.panel.is-motion-active .panel__light::after { will-change:transform; }
.panel.is-motion-active .panel__gold-dust { will-change:transform,opacity; }

.panel:not(.is-motion-active) .panel__gold-dust { display:none; }

.panel__shade { position: absolute; z-index: 2; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,.1), transparent 26%, transparent 62%, rgba(0,0,0,.62)); }
.panel--hero .panel__shade { background:radial-gradient(ellipse at 50% 46%,transparent 22%,rgba(0,0,0,.1) 58%),linear-gradient(180deg,rgba(0,0,0,.48),transparent 32%,transparent 70%,rgba(31,0,3,.28)); }
.panel--luxury .panel__shade { display:none; }

.panel--hero { --panel-image:url("./assets/hero-no-apple-v4.webp"); --panel-position:center -105px; --bg-origin:50% 38%; height:1420px; background-color:#040000; }
.panel--luxury { --panel-image:url("./assets/powder-field.webp"); --panel-position:center; --bg-origin:50% 58%; z-index:1; height:2050px; margin-top:-180px; clip-path:polygon(0 180px,4% 151px,9% 121px,15% 88px,22% 58px,30% 33px,40% 13px,50% 0,60% 13px,70% 33px,78% 58px,85% 88px,91% 121px,96% 151px,100% 180px,100% 100%,0 100%); }
.panel--training { --panel-image:linear-gradient(rgba(10,0,0,.16),rgba(0,0,0,.25)),url("./assets/hero-no-apple-v4.webp"); --panel-position:center,center 58%; --cut-left:150px; --cut-right:0px; --bg-origin:50% 70%; z-index:2; height:1470px; margin-top:-150px; clip-path:polygon(0 var(--cut-left),100% var(--cut-right),100% 100%,0 100%); }

.panel--roles { --panel-image:url("./assets/finale-field.webp"); --panel-position:center; --cut-left:24px; --cut-right:150px; z-index:5; height:1410px; margin-top:-150px; clip-path:polygon(0 var(--cut-left),100% var(--cut-right),100% 100%,0 100%); }
.panel--entry { --panel-image:url("./assets/finale-field.webp"); --panel-position:center bottom; z-index:6; height:1360px; margin-top:-140px; clip-path:path("M0 40 C210 150 650 150 860 40 L860 1360 L0 1360 Z"); }
.panel--training { filter:drop-shadow(0 -30px 28px rgba(0,0,0,.88)); }
.panel--training::after,
.panel--roles::after { display:none; }

.hero-copy { position:absolute; z-index:8; top:236px; left:50%; width:820px; translate:0 calc(var(--hero-depth) * -8px); transform:translateX(-50%); text-align:center; }
.hero-copy p,
.entry-copy > p { margin: 0; color: var(--accent); font-size: 9px; letter-spacing: .42em; text-shadow: 0 2px 10px #000; }
.hero-copy h1 { position:relative; width:760px; margin:18px auto -2px; isolation:isolate; }
.hero-copy h1 img { display:block; width:100%; height:auto; mix-blend-mode:screen; filter:drop-shadow(0 7px 0 rgba(69,21,0,.9)) drop-shadow(0 16px 22px rgba(0,0,0,.72)) drop-shadow(0 0 26px rgba(255,148,0,.42)); }
.hero-copy strong { display:flex; align-items:center; justify-content:center; gap:18px; margin:18px 0 0; color:#fff0be; font-family:"Hiragino Mincho ProN","Yu Mincho",serif; font-size:15px; font-weight:500; letter-spacing:.11em; text-shadow:0 3px 3px #190000,0 0 13px #000,0 0 22px rgba(255,159,16,.54); }
.hero-copy strong i { width:92px; height:1px; background:linear-gradient(90deg,transparent,#ffe297); box-shadow:0 0 9px rgba(255,167,26,.75); }
.hero-copy strong i:last-child { transform:scaleX(-1); }
.entry-copy h2 span { display:block; }

.hero-scroll { position: absolute; z-index: 7; bottom: 88px; left: 50%; display: flex; flex-direction: column; align-items: center; gap: 10px; transform: translateX(-50%); font-size: 7px; letter-spacing: .3em; }
.hero-scroll i { width: 1px; height: 54px; background: linear-gradient(var(--accent),transparent); animation: scrollLine 1.8s ease infinite; transform-origin: top; }

.flare { position: absolute; z-index: 6; width: 240px; height: 240px; border-radius: 50%; background: radial-gradient(circle,#fff 0 1%,#ffd771 2%,rgba(255,115,0,.24) 13%,transparent 66%); mix-blend-mode: screen; animation: flarePulse 3.4s ease-in-out infinite alternate; }
.flare::before, .flare::after { content:""; position:absolute; top:50%; left:50%; background:linear-gradient(90deg,transparent,#fff7d1,transparent); transform:translate(-50%,-50%); }
.flare::before { width: 220px; height: 2px; } .flare::after { width: 2px; height: 220px; }
.flare--left { top:650px; left:-48px; } .flare--right { right:-48px; bottom:280px; animation-delay:-1.7s; }
.venue-comparison { position:absolute; z-index:7; top:745px; left:50%; display:grid; gap:24px; width:820px; transform:translateX(-50%); }
.venue-window { position:relative; width:820px; }

.venue-window--ornate { aspect-ratio:1448/1086; }
.venue-window__screen { position:absolute; z-index:0; overflow:hidden; background:#050100; box-shadow:inset 0 0 36px #000; }

.venue-window--ornate .venue-window__screen { top:26.34%; right:17.89%; bottom:27.81%; left:17.75%; }
.venue-window__screen::after { content:""; position:absolute; inset:0; background:linear-gradient(115deg,rgba(255,255,255,.08),transparent 18% 72%,rgba(255,183,58,.08)); mix-blend-mode:screen; pointer-events:none; }
.venue-window video { width:100%; height:100%; object-fit:cover; filter:saturate(.72) contrast(1.12) brightness(.76) sepia(.08); }
.venue-window__frame { position:absolute; z-index:2; inset:0; width:100%; height:100%; filter:drop-shadow(0 8px 7px rgba(0,0,0,.72)) drop-shadow(0 30px 25px rgba(0,0,0,.62)) drop-shadow(0 0 14px rgba(255,224,153,.16)); pointer-events:none; }

   
.entry-copy { position:absolute; z-index:7; top:320px; left:50%; width:760px; transform:translateX(-50%); text-align:center; }
.entry-copy h2 { margin:30px 0 32px; color:#fff0c4; font-family:"Hiragino Mincho ProN","Yu Mincho",serif; font-size:74px; font-weight:700; line-height:1; letter-spacing:-.07em; text-shadow:0 6px 0 #541500,0 14px 34px #000; }
.entry-copy > strong { display:block; color:#ffe291; font-family:"Hiragino Mincho ProN","Yu Mincho",serif; font-size:24px; letter-spacing:.12em; text-shadow:0 0 20px #ff7600; }
.entry-actions { display:grid; grid-template-columns:1fr; gap:14px; width:620px; margin:54px auto 0; }
.entry-actions a { position:relative; display:grid; grid-template-columns:1fr auto; align-content:center; min-height:192px; padding:46px 42px; overflow:hidden; border:1px solid rgba(255,205,91,.7); background:linear-gradient(105deg,rgba(34,3,5,.9),rgba(4,0,0,.82)); box-shadow:inset 0 0 0 4px rgba(255,206,99,.045),0 18px 38px rgba(0,0,0,.42); text-align:left; text-decoration:none; backdrop-filter:blur(12px); isolation:isolate; }
.entry-actions a::before,.entry-actions a::after { content:""; position:absolute; pointer-events:none; }

.entry-actions small { color:var(--accent); font-size:8px; letter-spacing:.25em; } .entry-actions span { grid-row:2; margin-top:8px; font-family:"Hiragino Mincho ProN","Yu Mincho",serif; font-size:18px; letter-spacing:.12em; } .entry-actions i { grid-column:2; grid-row:1/3; align-self:center; width:62px; height:1px; background:linear-gradient(90deg,currentColor,transparent); transition:width .3s; } .entry-actions a:hover i { width:92px; }
.panel--entry footer { position:absolute; z-index:7; right:42px; bottom:170px; color:var(--muted); font-size:8px; letter-spacing:.24em; }

.atmosphere,.particles,.living-flare {
  position:fixed;
  top:0;
  left:50%;
  width:var(--campaign);
  height:100vh;
  pointer-events:none;
  transform:translateX(-50%);
  
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 8px,#000 calc(100% - 8px),transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0,#000 8px,#000 calc(100% - 8px),transparent 100%);
}
.atmosphere { mix-blend-mode:screen; }
.atmosphere--back,.particles--back { z-index:3; }
.atmosphere--mid,.particles--mid { z-index:5; }
.atmosphere--front,.particles--front { z-index:10; }

.atmosphere--back { opacity:.54; }
.atmosphere--mid { opacity:.5; }
.atmosphere--front { opacity:.32; }
.particles--back { opacity:.56; }
.particles--mid { opacity:.94; }
.particles--front { opacity:.86; }
.living-flare { left:50%; width:var(--campaign); height:100vh; transform:translateX(-50%); mix-blend-mode:screen; }
.living-flare { z-index:12; }
.living-flare--a { background:radial-gradient(circle at 11% 24%,rgba(255,255,255,.95) 0 1px,rgba(255,165,0,.46) 2px,transparent 12%),linear-gradient(90deg,transparent 1%,rgba(255,204,95,.27) 13%,transparent 30%); animation:liveLightA 6.2s ease-in-out infinite alternate; }
.living-flare--b { background:radial-gradient(circle at 88% 76%,rgba(255,255,255,.9) 0 1px,rgba(255,134,0,.4) 2px,transparent 13%); animation:liveLightB 7.3s ease-in-out -3s infinite alternate; }

 

[data-reveal] { opacity:0; transform:translateY(48px) scale(.985); filter:blur(7px); transition:opacity .8s ease,transform 1.15s cubic-bezier(.16,1,.3,1),filter .9s ease; }
[data-reveal].is-visible { opacity:1; transform:none; filter:none; }
.hero-copy[data-reveal],
.entry-copy[data-reveal] { transform:translate(-50%,48px) scale(.985); }
.hero-copy[data-reveal].is-visible,
.entry-copy[data-reveal].is-visible { transform:translateX(-50%); }
.venue-comparison[data-reveal] { transform:translate(-50%,48px) scale(.985); }
.venue-comparison[data-reveal].is-visible { transform:translateX(-50%); }

@keyframes scrollLine { 0%{transform:scaleY(0);opacity:0} 45%{transform:scaleY(1);opacity:1} 100%{transform:scaleY(1);opacity:0;translate:0 24px} }
@keyframes flarePulse { from{opacity:.45;transform:scale(.78)} to{opacity:1;transform:scale(1.12)} }

@keyframes liveLightA { from{opacity:.3;background-position:-18px 15px} to{opacity:.8;background-position:34px -18px} }
@keyframes liveLightB { from{opacity:.24;background-position:14px -20px} to{opacity:.72;background-position:-30px 24px} }

@media(max-width:1099px){body::after{content:"PC CONCEPT / 1100PX MINIMUM";position:fixed;z-index:200;inset:0;display:grid;place-items:center;background:#050100;color:var(--accent);font-size:10px;letter-spacing:.3em}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition-duration:.01ms!important}.atmosphere{opacity:.38}}
.brand-lockup { position:absolute; z-index:14; bottom:48px; left:50%; display:grid; grid-template-columns:230px 68px 230px; align-items:center; gap:14px; transform:translateX(-50%) scale(1.5); transform-origin:center bottom; text-decoration:none; }
.brand-lockup img { width:68px; filter:drop-shadow(0 8px 15px #000); }
.brand-lockup span { display:grid; gap:5px; color:rgba(255,255,255,.48); font-size:5px; letter-spacing:.16em; text-shadow:0 2px 8px #000; }
.brand-lockup span:first-child { text-align:right; }
.brand-lockup b { font-weight:400; white-space:nowrap; }

.panel--hero { height:1420px; }
.panel--luxury { height:2180px; }
.panel--training { height:1530px; }

.panel--roles { height:1430px; }

.hero-copy--poster { top:300px; width:820px; text-align:center; }
.hero-copy--poster > p { color:#f7d77b; font:500 8px/1 "Helvetica Neue",Arial,sans-serif; letter-spacing:.48em; }
.hero-copy--poster h1 { width:810px; margin:18px auto 0; }
.hero-copy--poster h1 img { filter:drop-shadow(0 8px 0 rgba(58,15,0,.88)) drop-shadow(0 24px 32px #000) drop-shadow(0 0 34px rgba(255,148,0,.58)); }
.hero-copy--poster > strong { margin-top:20px; font-size:12px; letter-spacing:.28em; }

.hero-sidecopy { position:absolute; z-index:7; left:31px; bottom:250px; margin:0; color:rgba(255,230,168,.42); font-size:7px; letter-spacing:.42em; writing-mode:vertical-rl; }
.hero-scroll { right:49px; bottom:85px; left:auto; transform:none; }

.venue-comparison { top:590px; gap:30px; width:820px; }
.frame-study { position:relative; }
.frame-study > p { position:absolute; z-index:4; top:50%; left:-29px; display:flex; justify-content:space-between; width:168px; margin:0; color:rgba(255,238,201,.58); font-size:7px; letter-spacing:.26em; transform:translate(-100%,-50%) rotate(-90deg); transform-origin:right center; }
.frame-study > p b { color:#f2c65b; font-weight:500; }

.salary-lockup { position:absolute; z-index:7; top:505px; right:36px; left:36px; height:440px; padding-top:86px; text-align:center; isolation:isolate; }
.salary-lockup::before { content:""; position:absolute; z-index:-1; inset:0; background:radial-gradient(ellipse at 50% 42%,rgba(255,188,50,.18),transparent 44%),linear-gradient(105deg,transparent 4%,rgba(0,0,0,.66) 20% 80%,transparent 96%); clip-path:polygon(3% 18%,48% 0,97% 18%,100% 82%,52% 100%,0 82%); filter:drop-shadow(0 30px 34px rgba(0,0,0,.62)); }
.salary-lockup::after { content:""; position:absolute; z-index:-1; top:62px; left:50%; width:720px; height:220px; background:linear-gradient(90deg,transparent,#f5c85d 16% 84%,transparent) top/100% 1px no-repeat,linear-gradient(90deg,transparent,#8b510d 20% 80%,transparent) bottom/100% 1px no-repeat; transform:translateX(-50%); opacity:.6; }
.salary-lockup > small { display:block; color:rgba(255,220,139,.62); font-size:8px; letter-spacing:.5em; }
.salary-lockup > strong { display:flex; justify-content:center; align-items:flex-start; margin-top:28px; background:linear-gradient(180deg,#fff9d8 0%,#f5d06e 18%,#8c3d05 42%,#ffe07a 58%,#9a4c0b 76%,#fff1bd 100%); -webkit-background-clip:text; background-clip:text; color:transparent; filter:drop-shadow(0 7px 0 #4e1100) drop-shadow(0 22px 32px #000) drop-shadow(0 0 18px rgba(255,169,25,.55)); }
.salary-lockup > strong i { margin:20px 12px 0 0; font:400 62px/.7 Didot,"Times New Roman",serif; }
.salary-lockup > strong em { font:400 146px/.72 Didot,"Times New Roman",serif; letter-spacing:-.07em; }
.salary-lockup > span { display:block; margin-top:24px; color:#fff0c1; font-family:"Hiragino Mincho ProN","Yu Mincho",serif; font-size:20px; letter-spacing:.24em; text-shadow:0 4px 20px #000; }
.salary-lockup > b { display:block; margin-top:16px; color:rgba(255,232,187,.34); font-size:7px; font-weight:400; letter-spacing:.16em; }

.position-gates { position:absolute; z-index:7; top:565px; right:38px; bottom:112px; left:38px; display:flex; overflow:hidden; box-shadow:0 36px 70px rgba(0,0,0,.62); }
.panel--roles.is-art-ready .position-gates a { background:linear-gradient(180deg,rgba(25,4,3,.22),rgba(1,0,0,.9)),url("./assets/hero-no-apple-v4.webp") center/cover; }
.position-gates a { position:relative; flex:1; display:flex; flex-direction:column; justify-content:flex-end; min-width:0; padding:0 26px 70px; overflow:hidden; border-top:1px solid rgba(245,205,116,.38); border-bottom:1px solid rgba(140,73,14,.24); border-left:1px solid rgba(245,205,116,.15); background:linear-gradient(180deg,rgba(25,4,3,.22),rgba(1,0,0,.9)); color:#fff0c5; text-decoration:none; text-shadow:0 6px 24px #000; isolation:isolate; transition:flex .72s cubic-bezier(.16,1,.3,1),filter .55s ease; }
.position-gates a:nth-child(2) { background-position:42% center; }
.position-gates a:nth-child(3) { background-position:72% center; }
.position-gates:hover a:not(:hover) { flex:.72; filter:brightness(.52) saturate(.58); }
.position-gates a:hover,.position-gates a:focus-visible { flex:1.58; }
.position-gates a::before { content:""; position:absolute; z-index:-1; inset:-20% -30%; background:linear-gradient(105deg,transparent 28%,rgba(255,242,202,.18) 45%,rgba(255,255,255,.38) 49%,rgba(216,136,25,.12) 56%,transparent 70%); transform:translateX(-62%) skewX(-10deg); transition:transform .9s cubic-bezier(.16,1,.3,1); }
.position-gates a:hover::before,.position-gates a:focus-visible::before { transform:translateX(50%) skewX(-10deg); }
.position-gates small { color:#dda53d; font-size:8px; letter-spacing:.24em; }
.position-gates strong { margin-top:18px; font:400 64px/.78 Didot,"Times New Roman",serif; letter-spacing:-.04em; transition:letter-spacing .7s cubic-bezier(.16,1,.3,1); }
.position-gates a:hover strong { letter-spacing:.06em; }
.position-gates span { margin-top:18px; font-family:"Hiragino Mincho ProN","Yu Mincho",serif; font-size:15px; letter-spacing:.18em; }
.position-gates i { position:absolute; top:30px; right:24px; color:rgba(255,231,178,.42); font-size:7px; font-style:normal; letter-spacing:.28em; writing-mode:vertical-rl; }

.floating-contact { --rim:8px; --tint-r:24; --tint-g:28; --tint-b:36; --tint-a:.3; --blur:10px; position:fixed; z-index:40; top:50%; right:calc(50% - 504px); display:flex; flex-direction:column; gap:12px; transform:translateY(-50%); transition:opacity .5s ease,transform .7s cubic-bezier(.16,1,.3,1); }
.floating-contact.is-muted { opacity:0; transform:translate(32px,-50%); pointer-events:none; }

@keyframes methodSweep { 0%,20%{opacity:0;transform:translateX(-52%)} 42%{opacity:.9} 72%,100%{opacity:0;transform:translateX(48%)} }

@media(max-width:1210px){.floating-contact{right:16px}}

.panel--luxury { height:1550px; }
.panel--reasons { --panel-image:linear-gradient(180deg,rgba(2,0,0,.08),rgba(18,0,2,.3)),url("./assets/powder-field.webp"); --panel-position:center,center 42%; --cut-left:145px; --cut-right:0; z-index:2; height:1320px; margin-top:-145px; clip-path:polygon(0 var(--cut-left),100% var(--cut-right),100% 100%,0 100%); }
.panel--training { z-index:3; height:1580px; --cut-left:0; --cut-right:145px; }

.panel--roles { z-index:5; height:1430px; --cut-left:0; --cut-right:145px; }
.panel--flow { --panel-image:linear-gradient(180deg,rgba(2,0,0,.15),rgba(11,0,1,.34)),url("./assets/hero-no-apple-v4.webp"); --panel-position:center,center 62%; --cut-left:145px; --cut-right:0; z-index:6; height:1260px; margin-top:-145px; clip-path:polygon(0 var(--cut-left),100% var(--cut-right),100% 100%,0 100%); }
.panel--faq { --panel-image:linear-gradient(180deg,rgba(5,0,0,.12),rgba(14,0,2,.3)),url("./assets/powder-field.webp"); --panel-position:center,center 48%; --cut-left:0; --cut-right:145px; z-index:7; height:1320px; margin-top:-145px; clip-path:polygon(0 var(--cut-left),100% var(--cut-right),100% 100%,0 100%); }
.panel--entry { z-index:8; height:1460px; margin-top:-140px; clip-path:path("M0 40 C210 150 650 150 860 40 L860 1460 L0 1460 Z"); }
.panel--training,.panel--flow { filter:drop-shadow(0 -30px 28px rgba(0,0,0,.88)); }
.panel--reasons::after,.panel--flow::after,.panel--faq::after { display:none; }

.artwork-head { position:absolute; z-index:7; left:50%; width:780px; transform:translateX(-50%); text-align:center; }
.artwork-head > p { margin:0; color:rgba(236,185,73,.74); font:500 8px/1 "Helvetica Neue",Arial,sans-serif; letter-spacing:.48em; text-shadow:0 4px 16px #000; }
.artwork-head h2 { display:flex; justify-content:center; margin:22px 0 0; }
.artwork-head h2 img { display:block; width:auto; max-width:100%; height:auto; filter:drop-shadow(0 8px 0 rgba(43,7,1,.76)) drop-shadow(0 22px 30px rgba(0,0,0,.82)) drop-shadow(0 0 20px rgba(255,213,155,.18)); }
.artwork-head[data-reveal] { transform:translate(-50%,48px) scale(.985); }
.artwork-head[data-reveal].is-visible { transform:translateX(-50%); }
.artwork-head--floor { top:310px; }
.artwork-head--floor h2 img { width:490px; }
.artwork-head--reasons { top:290px; }
.artwork-head--reasons h2 img { width:730px; }
.artwork-head--rookie { top:280px; }
.artwork-head--rookie h2 img { width:790px; }

.artwork-head--positions { top:275px; }
.artwork-head--positions h2 img { width:520px; }
.artwork-head--flow { top:275px; }
.artwork-head--flow h2 img { width:770px; }
.artwork-head--faq { top:275px; }
.artwork-head--faq h2 img { width:690px; }

.venue-comparison--single { top:570px; display:block; width:820px; }
.venue-comparison--single .frame-study { width:820px; }

.glass-surface { position:absolute; z-index:7; overflow:hidden; border-top:1px solid rgba(255,235,188,.42); border-bottom:1px solid rgba(159,87,16,.28); background:linear-gradient(110deg,rgba(2,0,0,.76),rgba(36,7,3,.38) 48%,rgba(3,0,0,.72)); -webkit-backdrop-filter:blur(16px) saturate(1.18); backdrop-filter:blur(16px) saturate(1.18); box-shadow:inset 0 1px rgba(255,255,255,.07),inset 0 -24px 50px rgba(0,0,0,.28),0 34px 62px rgba(0,0,0,.54); isolation:isolate; }
.glass-surface::before { content:""; position:absolute; z-index:-1; inset:-45% -18%; background:linear-gradient(112deg,transparent 32%,rgba(255,235,187,.11) 45%,rgba(255,255,255,.25) 50%,rgba(219,139,28,.08) 56%,transparent 70%); transform:translateX(-52%); animation:methodSweep 7.2s cubic-bezier(.16,1,.3,1) infinite; }

.reason-ledger { top:615px; right:48px; left:48px; }
.reason-ledger article { display:grid; grid-template-columns:150px 135px 1fr; align-items:center; min-height:170px; padding:34px 46px; text-align:left; }
.reason-ledger article+article { border-top:1px solid rgba(230,180,76,.18); }
.reason-ledger small { color:#d9a441; font:400 8px/1 Didot,"Times New Roman",serif; letter-spacing:.24em; }
.reason-ledger strong { color:#fff1c8; font-family:"Hiragino Mincho ProN","Yu Mincho",serif; font-size:30px; font-weight:500; letter-spacing:.12em; text-shadow:0 5px 18px #000; }
.reason-ledger span { color:rgba(255,237,201,.6); font-size:11px; letter-spacing:.1em; }

.salary-lockup--artwork { top:500px; right:42px; left:42px; display:flex; flex-direction:column; align-items:center; height:470px; padding:42px 34px 28px; }
.salary-lockup--artwork::before { inset:-45% -18%; background:linear-gradient(112deg,transparent 32%,rgba(255,235,187,.11) 45%,rgba(255,255,255,.25) 50%,rgba(219,139,28,.08) 56%,transparent 70%); clip-path:none; filter:none; transform:translateX(-52%); animation:methodSweep 7.2s cubic-bezier(.16,1,.3,1) infinite; }
.salary-lockup--artwork::after { top:auto; right:38px; bottom:26px; left:38px; width:auto; height:1px; background:linear-gradient(90deg,transparent,#e8bb5d,transparent); transform:none; opacity:.42; }
.salary-lockup__label { width:330px; height:auto; filter:drop-shadow(0 8px 18px #000); }
.salary-lockup__amount { width:680px; height:auto; margin-top:-6px; filter:drop-shadow(0 10px 0 #491100) drop-shadow(0 22px 32px #000) drop-shadow(0 0 22px rgba(255,157,15,.38)); }
.salary-lockup--artwork > b { margin-top:-18px; }

.position-gates { top:520px; }
.position-gates a { background:#060100; }
.role-card > img { position:absolute; z-index:-3; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 22%; filter:brightness(.68) saturate(.72) contrast(1.08); transition:filter .62s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1); }
.role-card--internal > img { object-position:center 16%; image-rendering:auto; }
.role-card--management > img { object-position:center 34%; }
.role-card::after { content:""; position:absolute; z-index:-2; inset:0; background:linear-gradient(180deg,rgba(3,0,0,.04) 0%,rgba(4,0,0,.2) 38%,rgba(2,0,0,.96) 88%); pointer-events:none; }
.role-card:hover > img,.role-card:focus-visible > img { filter:brightness(.86) saturate(.92) contrast(1.04); transform:scale(1.025); }
.role-card--cast strong { font-size:60px; }
.role-card--internal strong { font-size:40px; }
.role-card--management strong { font-size:28px; letter-spacing:-.018em; }
.role-card--management:hover strong { letter-spacing:.01em; }

.entry-copy { top:300px; width:780px; }
.entry-copy > p { color:#dfad49; font-size:8px; letter-spacing:.48em; }
.entry-copy h2 { display:flex; justify-content:center; margin:24px 0 34px; }
.entry-copy h2 img { display:block; width:780px; height:auto; filter:drop-shadow(0 8px 0 rgba(43,7,1,.76)) drop-shadow(0 22px 30px rgba(0,0,0,.82)) drop-shadow(0 0 20px rgba(255,213,155,.18)); }
.entry-copy > strong { --soft-rise:0; width:680px; margin:0 auto; color:rgba(255,240,207,.86); font-size:17px; font-weight:500; line-height:1.9; letter-spacing:.08em; text-shadow:0 6px 22px #000; opacity:var(--soft-rise); filter:blur(calc((1 - var(--soft-rise)) * 8px)); transform:translateY(calc((1 - var(--soft-rise)) * 62px)); will-change:opacity,filter,transform; }
.entry-actions { width:620px; margin-top:48px; }
.entry-actions a { min-height:184px; border:1px solid rgba(255,215,125,.44); box-shadow:inset 0 1px rgba(255,255,255,.13),inset 0 -1px rgba(135,72,14,.24),0 24px 48px rgba(0,0,0,.4); -webkit-backdrop-filter:saturate(1.25); backdrop-filter:saturate(1.25); transition:border-color .5s ease,background .6s cubic-bezier(.16,1,.3,1),box-shadow .6s ease; }
.entry-actions .entry-action--smoke { background:linear-gradient(108deg,rgba(2,0,0,.48),rgba(31,6,4,.24),rgba(2,0,0,.43)); -webkit-backdrop-filter:blur(22px) saturate(1.25)!important; backdrop-filter:blur(22px) saturate(1.25)!important; }
.entry-actions .entry-action--crystal { background:linear-gradient(108deg,rgba(255,238,197,.07),rgba(89,43,11,.055),rgba(255,255,255,.025)); -webkit-backdrop-filter:blur(7px) brightness(1.08) saturate(1.3)!important; backdrop-filter:blur(7px) brightness(1.08) saturate(1.3)!important; border-color:rgba(255,239,199,.58)!important; }
.entry-action--smoke::before,.entry-action--crystal::before { z-index:-1; inset:0; background:linear-gradient(100deg,transparent,rgba(255,247,220,.18) 48%,transparent); transform:translateX(-110%) skewX(-12deg); transition:transform .9s cubic-bezier(.16,1,.3,1); }
.entry-action--smoke::after,.entry-action--crystal::after { z-index:2; top:0; bottom:0; left:-26%; width:20%; background:linear-gradient(102deg,transparent,rgba(255,248,224,.46),rgba(213,143,40,.1),transparent); transform:skewX(-12deg); transition:left .9s cubic-bezier(.16,1,.3,1); }
.entry-action--smoke:hover::before,.entry-action--smoke:focus-visible::before,.entry-action--crystal:hover::before,.entry-action--crystal:focus-visible::before { transform:translateX(110%) skewX(-12deg); }
.entry-action--smoke:hover::after,.entry-action--smoke:focus-visible::after,.entry-action--crystal:hover::after,.entry-action--crystal:focus-visible::after { left:106%; }
.entry-actions .entry-action--crystal:hover,.entry-actions .entry-action--crystal:focus-visible { background:linear-gradient(108deg,rgba(255,243,211,.12),rgba(111,55,14,.1),rgba(255,255,255,.05)); box-shadow:inset 0 1px rgba(255,255,255,.23),0 28px 58px rgba(0,0,0,.44),0 0 26px rgba(255,182,55,.1); }

.floating-contact { position:fixed; z-index:40; top:auto; right:18px; bottom:20px; display:grid; width:172px; gap:8px; transform:none; transition:opacity .45s ease,transform .65s cubic-bezier(.16,1,.3,1); }
.floating-contact.is-muted { opacity:0; transform:translateY(24px); pointer-events:none; }
.floating-contact__button { position:relative; display:grid; grid-template-columns:44px 1fr; align-items:center; min-height:58px; padding:0 16px 0 13px; overflow:hidden; border:1px solid rgba(255,228,164,.44); border-radius:2px; background:linear-gradient(110deg,rgba(3,0,0,.72),rgba(39,10,5,.42)); color:#fff1c8; text-decoration:none; -webkit-backdrop-filter:blur(14px) saturate(1.2); backdrop-filter:blur(14px) saturate(1.2); box-shadow:inset 0 1px rgba(255,255,255,.1),0 12px 28px rgba(0,0,0,.48); transition:transform .55s cubic-bezier(.16,1,.3,1),border-color .45s ease; }
.floating-contact__button::before { content:""; position:absolute; inset:-40% -25%; background:linear-gradient(105deg,transparent 32%,rgba(255,244,214,.28) 49%,rgba(207,132,27,.08) 57%,transparent 70%); transform:translateX(-70%); transition:transform .8s cubic-bezier(.16,1,.3,1); }
.floating-contact__button:hover,.floating-contact__button:focus-visible { transform:translateX(-6px); border-color:rgba(255,232,177,.78); }
.floating-contact__button:hover::before,.floating-contact__button:focus-visible::before { transform:translateX(70%); }
.floating-contact__button small { position:relative; color:#e3b557; font:500 8px/1 Didot,"Times New Roman",serif; letter-spacing:.14em; }
.floating-contact__button span { position:relative; padding-left:12px; border-left:1px solid rgba(233,185,83,.24); font-family:"Hiragino Mincho ProN","Yu Mincho",serif; font-size:11px; letter-spacing:.1em; }
.floating-contact__button--trial { background:linear-gradient(110deg,rgba(255,235,190,.09),rgba(26,5,2,.62)); }

@media(max-width:1210px){.floating-contact{right:14px;width:158px}.floating-contact__button{grid-template-columns:40px 1fr;padding-right:12px}}

.panel__gold-dust {
  position:absolute;
  z-index:1;
  inset:-3%;
  background:url("./assets/gold-dust-overlay.webp") center bottom / cover no-repeat;
  mix-blend-mode:screen;
  opacity:.28;
  transform:translate3d(-5px,-2px,0) scale(1.045);
  animation:goldDustDrift 16s ease-in-out infinite alternate;
  pointer-events:none;
}
.hero-copy--poster { top:315px; }
.hero-copy--poster > strong { margin-top:12px; }

.artwork-head > p {
  color:rgba(246,205,118,.88);
  font-size:10px;
  letter-spacing:.42em;
}
.section-caption {
  display:block;
  width:700px;
  margin:20px auto 0;
  color:rgba(255,241,210,.82);
  font-family:"Hiragino Mincho ProN","Yu Mincho",serif;
  font-size:14px;
  line-height:1.9;
  letter-spacing:.075em;
  text-shadow:0 5px 20px #000;
}
.section-caption--wide { width:700px; }

.venue-comparison--single,
.venue-comparison--single .frame-study { width:840px; }
.venue-window { width:100%; }

.glass-surface,
.floating-contact__button,
.entry-actions .entry-action--smoke,
.entry-actions .entry-action--crystal {
  background:linear-gradient(108deg,rgba(255,238,197,.07),rgba(89,43,11,.055),rgba(255,255,255,.025));
  -webkit-backdrop-filter:blur(7px) brightness(1.08) saturate(1.3);
  backdrop-filter:blur(7px) brightness(1.08) saturate(1.3);
}
.glass-surface {
  border-top-color:rgba(255,239,199,.5);
  border-bottom-color:rgba(144,80,18,.24);
  box-shadow:inset 0 1px rgba(255,255,255,.12),inset 0 -18px 42px rgba(0,0,0,.16),0 30px 58px rgba(0,0,0,.48);
}
.glass-surface::before { opacity:.62; }

.floating-contact__button { box-shadow:inset 0 1px rgba(255,255,255,.12),0 12px 28px rgba(0,0,0,.44); }
.entry-actions .entry-action--smoke,
.entry-actions .entry-action--crystal {
  border-color:rgba(255,239,199,.58)!important;
  -webkit-backdrop-filter:blur(7px) brightness(1.08) saturate(1.3)!important;
  backdrop-filter:blur(7px) brightness(1.08) saturate(1.3)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.15),inset 0 -1px rgba(135,72,14,.18),0 24px 48px rgba(0,0,0,.4);
}

.salary-lockup--artwork {
  top:500px;
  right:42px;
  left:42px;
  height:auto;
  padding:0;
  background:none;
  box-shadow:none;
}
.salary-lockup--artwork::before,
.salary-lockup--artwork::after { display:none; }
.salary-lockup__amount { margin-top:-38px; }
.salary-lockup--artwork > b { margin-top:-14px; }

.role-card--cast strong,
.role-card--internal strong,
.role-card--management strong {
  font-size:28px;
  letter-spacing:-.018em;
}
.role-card--management strong {
  width:139%;
  transform:scaleX(.72);
  transform-origin:left center;
}
.position-gates a:hover strong,
.role-card--management:hover strong { letter-spacing:.04em; }

.brand-lockup {
  grid-template-columns:210px 100px 210px;
  gap:13px;
}
.brand-lockup img { width:100px; }
.brand-lockup span { gap:6px; font-size:5.5px; line-height:1.35; letter-spacing:.14em; }

@keyframes goldDustDrift {
  0% { opacity:.22; transform:translate3d(-5px,-2px,0) scale(1.045); }
  100% { opacity:.31; transform:translate3d(6px,-15px,0) scale(1.065); }
}

@media(prefers-reduced-motion:reduce) {
  .panel__gold-dust { animation:none; }
}

.panel--hero {
  --panel-image:url("./assets/hero-no-apple-v4.webp");
  --panel-position:center -105px;
  --bg-origin:50% 38%;
  --bg-bright:1;
  --bg-saturate:1.06;
}
.panel--hero .panel__light::after {
  background:radial-gradient(ellipse at 22% 24%,rgba(255,224,148,.2),transparent 28%),radial-gradient(ellipse at 78% 72%,rgba(145,5,26,.24),transparent 34%),linear-gradient(108deg,transparent 34%,rgba(255,245,211,.07) 48%,transparent 61%);
  opacity:.8;
}
.panel--hero .panel__shade {
  background:radial-gradient(ellipse at 50% 46%,transparent 22%,rgba(0,0,0,.1) 58%),linear-gradient(180deg,rgba(0,0,0,.48),transparent 32%,transparent 70%,rgba(31,0,3,.28));
}
.hero-copy--poster > strong { margin-top:-10px; }

.section-caption { width:740px; margin-top:22px; font-size:18px; line-height:1.8; letter-spacing:.055em; }
.section-caption--wide { width:740px; }

.panel--reasons {
  --panel-image:linear-gradient(180deg,rgba(1,0,0,.36),rgba(3,0,0,.76)),url("./assets/hero-no-apple-v4.webp");
  --panel-position:center,center 58%;
  --cut-left:0;
  --cut-right:0;
  height:1350px;
  clip-path:polygon(0 0,100% 0,100% 100%,0 100%);
  background:#070301;
}
.panel--reasons .panel__bg { filter:brightness(calc(var(--bg-bright) * .32)) saturate(calc(var(--bg-saturate) * .42)) contrast(1.14); }
.panel--reasons .panel__light::after { opacity:.22; }
.panel--reasons .panel__shade { background:linear-gradient(180deg,rgba(0,0,0,.78),rgba(5,2,0,.12) 32%,rgba(0,0,0,.36) 100%); }
.panel--training {
  --panel-image:linear-gradient(180deg,rgba(11,0,0,.12),rgba(3,0,0,.34)),url("./assets/powder-field.webp");
  --panel-position:center,center 48%;
  min-height:1200px;
  height:1200px;
}
.panel--roles { background:#060201; }
.panel--roles > .panel__bg { filter:brightness(calc(var(--bg-bright) * .54)) saturate(calc(var(--bg-saturate) * .65)); }
.panel--flow { --panel-image:linear-gradient(180deg,rgba(4,0,0,.12),rgba(19,0,2,.33)),url("./assets/hero-no-apple-v4.webp"); }
.panel--faq {
  --panel-image:linear-gradient(180deg,rgba(0,0,0,.54),rgba(6,1,0,.82)),url("./assets/powder-field.webp");
  min-height:2250px;
  height:2250px;
  background:#050201;
}
.panel--faq > .panel__bg { filter:brightness(calc(var(--bg-bright) * .3)) saturate(calc(var(--bg-saturate) * .48)); }

.reason-ledger {
  top:630px;
  right:44px;
  left:44px;
  overflow:hidden;
  border:1px solid rgba(239,199,111,.22);
}
.reason-card {
  position:relative;
  display:grid;
  width:100%;
  min-height:180px;
  padding:0 46px;
  overflow:hidden;
  border:0;
  border-bottom:1px solid rgba(230,180,76,.16);
  background:rgba(0,0,0,.08);
  color:inherit;
  cursor:pointer;
  text-align:left;
  isolation:isolate;
}
.reason-card:last-child { border-bottom:0; }
.reason-card:focus-visible { outline:1px solid rgba(255,232,174,.88); outline-offset:-5px; }
.reason-card__content {
  position:relative;
  z-index:4;
  display:grid;
  grid-template-columns:150px 135px 1fr;
  align-items:center;
  min-height:180px;
  transition:transform .8s cubic-bezier(.16,1,.3,1);
}
.reason-card small { color:#d9a441; font:400 8px/1 Didot,"Times New Roman",serif; letter-spacing:.24em; }
.reason-card strong { color:#fff1c8; font-family:"Hiragino Mincho ProN","Yu Mincho",serif; font-size:30px; font-weight:500; letter-spacing:.12em; text-shadow:0 5px 18px #000; }
.reason-card__content > span { color:rgba(255,237,201,.67); font-size:12px; letter-spacing:.09em; }

.reason-card__video {
  position:absolute;
  z-index:-2;
  inset:-18% 0;
  width:100%;
  height:136%;
  object-fit:cover;
  filter:brightness(.46) saturate(.78) contrast(1.12);
  opacity:0;
  transform:scale(1.075);
  transition:opacity .9s cubic-bezier(.16,1,.3,1),transform 1.4s cubic-bezier(.16,1,.3,1);
}
.reason-card--floor::after {
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  background:linear-gradient(90deg,rgba(2,0,0,.92),rgba(4,0,0,.34) 54%,rgba(2,0,0,.74));
  opacity:0;
  transition:opacity .7s ease;
}
.reason-card__cue {
  position:absolute;
  z-index:5;
  right:30px;
  bottom:22px;
  color:rgba(255,229,163,.66);
  font:400 7px/1 Didot,"Times New Roman",serif;
  letter-spacing:.28em;
  opacity:0;
  transform:translateX(18px);
  transition:opacity .55s ease,transform .75s cubic-bezier(.16,1,.3,1);
}
.reason-card--floor:is(:hover,:focus-visible,[aria-pressed="true"]) .reason-card__video { opacity:1; transform:scale(1.015); }
.reason-card--floor:is(:hover,:focus-visible,[aria-pressed="true"])::after { opacity:1; }
.reason-card--floor:is(:hover,:focus-visible,[aria-pressed="true"]) .reason-card__cue { opacity:1; transform:none; }

.reason-card--training::before {
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 77% 50%,rgba(213,139,24,.18),transparent 28%);
  opacity:0;
  transition:opacity .8s ease;
}
.reason-card--training:is(:hover,:focus-visible,[aria-pressed="true"])::before { opacity:1; }
.reason-card--training:is(:hover,:focus-visible,[aria-pressed="true"]) .reason-card__content { transform:translateX(10px); }

.reason-card--conditions::before,
.reason-card--conditions::after {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
}
.reason-card--conditions::before {
  z-index:-1;
  background:linear-gradient(96deg,rgba(42,28,19,.1),rgba(140,100,56,.2) 42%,rgba(245,214,145,.08) 58%,rgba(42,28,19,.08));
  clip-path:inset(0 100% 0 0);
  transition:clip-path .92s cubic-bezier(.16,1,.3,1);
}
.reason-card--conditions::after {
  z-index:2;
  left:-38%;
  width:18%;
  background:linear-gradient(105deg,transparent,rgba(255,249,223,.48),rgba(255,183,46,.12),transparent);
  transform:skewX(-13deg);
  opacity:0;
}

.reason-card--conditions:is(:hover,:focus-visible,[aria-pressed="true"])::before { clip-path:inset(0); }
.reason-card--conditions:is(:hover,:focus-visible,[aria-pressed="true"])::after { opacity:1; animation:reasonDoubleSweep 1.35s cubic-bezier(.16,1,.3,1) both; }

.salary-lockup--training { top:650px; }
.salary-lockup--training .salary-lockup__label { width:300px; }
.salary-lockup--training .salary-lockup__amount { width:680px; margin-top:-78px; }
.salary-lockup--training > b { margin-top:-22px; }

.panel--faq .artwork-head--faq { top:270px; }
.faq-sampler {
  position:absolute;
  z-index:7;
  top:590px;
  right:44px;
  left:44px;
  display:grid;
  gap:46px;
}
.faq-study { position:relative; color:#fff0c8; }
.faq-study > header {
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  min-height:54px;
  padding:0 4px 16px;
  border-bottom:1px solid rgba(229,178,74,.25);
}
.faq-study > header small { color:#c9922d; font:400 8px/1 Didot,"Times New Roman",serif; letter-spacing:.28em; }
.faq-study > header strong { color:rgba(255,233,184,.54); font:400 10px/1 Didot,"Times New Roman",serif; letter-spacing:.24em; }

.faq-study--crystal { display:grid; gap:10px; }
.faq-study--crystal > header { margin-bottom:8px; }
.faq-study--crystal details {
  position:relative;
  overflow:hidden;
  background:linear-gradient(108deg,rgba(255,238,197,.055),rgba(52,22,7,.14),rgba(255,255,255,.018));
  -webkit-backdrop-filter:blur(7px) brightness(1.08) saturate(1.3);
  backdrop-filter:blur(7px) brightness(1.08) saturate(1.3);
  clip-path:polygon(0 0,97% 0,100% 30%,100% 100%,3% 100%,0 70%);
  box-shadow:inset 0 1px rgba(255,255,255,.12);
}
.faq-study--crystal details::before { content:""; position:absolute; inset:0; border-top:1px solid rgba(241,199,107,.2); border-bottom:1px solid rgba(137,75,16,.22); pointer-events:none; }
.faq-study--crystal details::after { content:""; position:absolute; top:0; bottom:0; left:-25%; width:18%; background:linear-gradient(102deg,transparent,rgba(255,248,220,.38),rgba(219,145,30,.08),transparent); transform:skewX(-13deg); opacity:0; }
.faq-study--crystal details[open]::after { opacity:1; animation:crystalDrawerSweep 1.05s cubic-bezier(.16,1,.3,1) both; }
.faq-study--crystal summary { position:relative; z-index:2; display:grid; grid-template-columns:70px 1fr 68px; align-items:center; min-height:92px; padding:0 34px; cursor:pointer; list-style:none; }
.faq-study--crystal summary::-webkit-details-marker { display:none; }
.faq-study--crystal summary b { color:#d5a13c; font:400 20px/1 Didot,"Times New Roman",serif; }
.faq-study--crystal summary span { font-family:"Hiragino Mincho ProN","Yu Mincho",serif; font-size:17px; letter-spacing:.07em; }
.faq-study--crystal summary i { color:rgba(255,230,174,.42); font:400 7px/1 Didot,"Times New Roman",serif; font-style:normal; letter-spacing:.2em; text-align:right; }
.faq-study--crystal details p { margin:-8px 102px 30px 104px; color:rgba(255,239,206,.68); font-size:13px; line-height:1.9; letter-spacing:.06em; }

@keyframes reasonDoubleSweep { 0%{left:-38%} 45%{left:108%} 52%{left:-30%} 100%{left:108%} }

@keyframes crystalDrawerSweep { from{left:-25%} to{left:110%} }

@media(prefers-reduced-motion:reduce) {
  .reason-card--conditions::after,
.faq-study--crystal details::after { animation:none!important; }
}

.hero-copy--poster { top:360px; }
.hero-copy--poster > strong { margin-top:-24px; }

.panel--luxury {
  --panel-position:center bottom;
  --bg-origin:50% 76%;
}

.artwork-head h2 { margin-top:16px; }
.section-caption,
.section-caption--wide {
  margin-top:8px;
  line-height:1.65;
}

.panel--reasons {
  height:1350px;
  clip-path:polygon(0 0,100% 0,100% 100%,0 100%);
}
.reason-card::before,
.reason-card::after { display:none!important; }
.reason-card__video {
  z-index:-1;
  inset:-12% 0;
  height:124%;
  filter:brightness(.42) saturate(.82) contrast(1.12);
}
.reason-card:is(:hover,:focus-visible,[aria-pressed="true"]) .reason-card__video {
  opacity:1;
  transform:scale(1.025);
}
.reason-card:is(:hover,:focus-visible,[aria-pressed="true"]) .reason-card__content { transform:translateX(10px); }
.reason-card:is(:hover,:focus-visible,[aria-pressed="true"]) .reason-card__cue { opacity:1; transform:none; }

.panel--training {
  height:1260px;
  min-height:1260px;
  margin-top:0;
  clip-path:polygon(0 0,100% 0,100% 100%,0 100%);
}
.panel--training .panel__bg { filter:brightness(calc(var(--bg-bright) * .8)) saturate(calc(var(--bg-saturate) * .92)) contrast(1.08); }
.panel--training .panel__shade { background:linear-gradient(180deg,rgba(0,0,0,.5),rgba(0,0,0,.04) 34%,rgba(0,0,0,.16) 64%,rgba(0,0,0,.72)); }
.salary-lockup--training { top:650px; }
.salary-lockup--training .salary-lockup__amount { width:790px; margin-top:-84px; }

.panel--roles {
  --cut-left:145px;
  --cut-right:0;
  height:1490px;
  margin-top:-145px;
  clip-path:polygon(0 var(--cut-left),100% var(--cut-right),100% 100%,0 100%);
}
.panel--flow {
  --cut-left:120px;
  --cut-right:0;
  height:2260px;
  min-height:2260px;
  margin-top:-58px;
  clip-path:polygon(0 var(--cut-left),100% var(--cut-right),100% 100%,0 100%);
}
.panel--flow .artwork-head--flow { top:285px; }

.flow-lab {
  position:absolute;
  z-index:7;
  top:610px;
  right:38px;
  left:38px;
}

.flow-lab__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.flow-option {
  position:relative;
  min-width:0;
  height:278px;
  padding:24px;
  overflow:hidden;
  border:1px solid rgba(229,181,82,.18);
  background:linear-gradient(125deg,rgba(7,1,0,.78),rgba(64,24,5,.14),rgba(5,1,0,.82));
  color:#fff0c8;
  cursor:pointer;
  text-align:left;
  box-shadow:inset 0 1px rgba(255,255,255,.035),0 20px 38px rgba(0,0,0,.3);
  transition:border-color .65s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1),background .65s ease;
}
.flow-option:hover,
.flow-option:focus-visible { transform:translateY(-4px); border-color:rgba(255,221,147,.54); outline:0; }
.flow-option[aria-pressed="true"] { border-color:rgba(255,222,151,.78); background:linear-gradient(125deg,rgba(18,5,1,.86),rgba(113,55,12,.21),rgba(7,1,0,.88)); box-shadow:inset 0 1px rgba(255,255,255,.08),0 0 28px rgba(223,151,27,.12),0 24px 42px rgba(0,0,0,.42); }

.flow-option__scene { position:relative; display:block; height:195px; margin-top:16px; }
.flow-option__scene > i { position:absolute; display:block; pointer-events:none; }
.flow-option__scene > span {
  position:absolute;
  z-index:2;
  display:grid;
  align-content:center;
  width:31%;
  min-height:70px;
  color:#fff0c5;
}
.flow-option__scene > span:nth-of-type(1) { left:0; }
.flow-option__scene > span:nth-of-type(2) { left:34.5%; }
.flow-option__scene > span:nth-of-type(3) { right:0; }
.flow-option__scene small { color:#d49a30; font:400 9px/1 Didot,"Times New Roman",serif; letter-spacing:.1em; }
.flow-option__scene b { margin-top:11px; font-family:"Hiragino Mincho ProN","Yu Mincho",serif; font-size:14px; font-weight:500; letter-spacing:.04em; white-space:nowrap; }

.panel--faq {
  height:1360px;
  min-height:1360px;
  margin-top:0;
  clip-path:polygon(0 0,100% 0,100% 100%,0 100%);
}
.panel--faq .artwork-head--faq { top:250px; }
.faq-sampler--single { top:590px; gap:0; }
.faq-study--crystal { gap:10px; }
.faq-drawer {
  position:relative;
  overflow:hidden;
  background:linear-gradient(108deg,rgba(255,238,197,.055),rgba(52,22,7,.14),rgba(255,255,255,.018));
  -webkit-backdrop-filter:blur(7px) brightness(1.08) saturate(1.3);
  backdrop-filter:blur(7px) brightness(1.08) saturate(1.3);
  clip-path:polygon(0 0,97% 0,100% 30%,100% 100%,3% 100%,0 70%);
  box-shadow:inset 0 1px rgba(255,255,255,.12);
}
.faq-drawer::before { content:""; position:absolute; z-index:3; inset:0; border-top:1px solid rgba(241,199,107,.2); border-bottom:1px solid rgba(137,75,16,.22); pointer-events:none; }
.faq-drawer::after { content:""; position:absolute; z-index:2; top:0; bottom:0; left:-25%; width:18%; background:linear-gradient(102deg,transparent,rgba(255,248,220,.38),rgba(219,145,30,.08),transparent); transform:skewX(-13deg); opacity:0; pointer-events:none; }
.faq-drawer.is-open::after { opacity:1; animation:crystalDrawerSweep 1.05s cubic-bezier(.16,1,.3,1) both; }
.faq-drawer > button { position:relative; z-index:4; display:grid; grid-template-columns:70px 1fr 68px; align-items:center; width:100%; min-height:92px; padding:0 34px; border:0; background:none; color:#fff0c8; cursor:pointer; text-align:left; }
.faq-drawer > button:focus-visible { outline:1px solid rgba(246,212,135,.72); outline-offset:-5px; }
.faq-drawer > button b { color:#d5a13c; font:400 20px/1 Didot,"Times New Roman",serif; }
.faq-drawer > button span { font-family:"Hiragino Mincho ProN","Yu Mincho",serif; font-size:17px; letter-spacing:.07em; }
.faq-drawer > button i { color:rgba(255,230,174,.42); font:400 0/1 Didot,"Times New Roman",serif; font-style:normal; letter-spacing:.2em; text-align:right; }
.faq-drawer > button i::after { content:"OPEN"; font-size:7px; }
.faq-drawer.is-open > button i::after { content:"CLOSE"; color:#efc56b; }
.faq-drawer__answer { position:relative; z-index:4; display:grid; grid-template-rows:0fr; opacity:0; transition:grid-template-rows .82s cubic-bezier(.16,1,.3,1),opacity .42s ease; }
.faq-drawer__answer > div { min-height:0; overflow:hidden; }
.faq-drawer__answer p { margin:0 102px 0 104px; padding:0 0 0; color:rgba(255,239,206,.68); font-size:13px; line-height:1.9; letter-spacing:.06em; transform:translateY(-14px); filter:blur(4px); transition:padding .82s cubic-bezier(.16,1,.3,1),transform .72s cubic-bezier(.16,1,.3,1),filter .55s ease; }
.faq-drawer.is-open .faq-drawer__answer { grid-template-rows:1fr; opacity:1; }
.faq-drawer.is-open .faq-drawer__answer p { padding-bottom:32px; transform:none; filter:none; }

.panel--entry {
  height:1180px;
  min-height:1180px;
  margin-top:-120px;
  clip-path:path("M0 54 C160 244 700 244 860 54 L860 1180 L0 1180 Z");
}
.entry-copy { top:310px; }
.panel--entry footer { bottom:150px; }
.brand-lockup { bottom:36px; }

@media(prefers-reduced-motion:reduce) {
  .flow-option,
  .faq-drawer__answer,
  .faq-drawer__answer p { transition-duration:.01ms!important; }
  .faq-drawer.is-open::after { animation:none!important; }
}

.hero-copy--poster { top:470px; }

.panel--training {
  --panel-image:linear-gradient(180deg,rgba(3,0,0,.2),rgba(4,0,0,.12) 46%,rgba(0,0,0,.72)),url("./assets/training-vip-ai-v2.webp");
  --panel-position:center,center 50%;
  --bg-origin:54% 48%;
}
.panel--training .panel__bg {
  filter:brightness(calc(var(--bg-bright) * .88)) saturate(calc(var(--bg-saturate) * .94)) contrast(1.06);
}
.panel--training .panel__shade {
  background:linear-gradient(180deg,rgba(0,0,0,.62),rgba(0,0,0,.02) 38%,rgba(0,0,0,.18) 67%,rgba(0,0,0,.76));
}

.role-card > img {
  filter:grayscale(.18) sepia(.34) hue-rotate(-16deg) saturate(.76) contrast(1.11) brightness(.62);
}
.role-card--cast > img { filter:grayscale(.18) sepia(.34) hue-rotate(-16deg) saturate(.76) contrast(1.11) brightness(.54); }
.role-card--internal > img { filter:grayscale(.18) sepia(.34) hue-rotate(-16deg) saturate(.76) contrast(1.11) brightness(.76); }
.role-card--management > img { filter:grayscale(.18) sepia(.34) hue-rotate(-16deg) saturate(.76) contrast(1.11) brightness(.56); }
.role-card::after {
  background:
    linear-gradient(128deg,rgba(78,4,3,.34),rgba(161,73,10,.08) 48%,rgba(2,0,0,.3)),
    linear-gradient(180deg,rgba(3,0,0,.08) 0%,rgba(4,0,0,.24) 40%,rgba(2,0,0,.96) 88%);
  background-blend-mode:color,multiply;
}
.role-card:hover > img,
.role-card:focus-visible > img {
  filter:grayscale(.12) sepia(.28) hue-rotate(-16deg) saturate(.9) contrast(1.08) brightness(.78);
}

.panel--roles { height:1540px; }
.position-gates { bottom:170px; }
.panel--flow {
  margin-top:-120px;
  clip-path:polygon(0 120px,100% 0,100% 100%,0 100%);
}

.flow-lab { top:600px; }
.flow-option__scene {
  display:grid;
  height:198px;
  margin-top:16px;
}
.flow-option__scene > i { inset:auto; transform:none; filter:none; }
.flow-option__scene > span {
  position:relative;
  top:auto!important;
  right:auto!important;
  left:auto!important;
  display:flex;
  width:auto;
  min-height:0;
  padding:0;
  border:0;
  background:none;
  clip-path:none;
  transform:none;
  text-align:left;
}
.flow-option__scene small { flex:0 0 auto; }
.flow-option__scene b { margin-top:0; }
.flow-option__scene em {
  display:block;
  margin-top:7px;
  color:rgba(255,235,197,.5);
  font:400 9px/1.55 "Helvetica Neue",Arial,sans-serif;
  font-style:normal;
  letter-spacing:.04em;
}

.flow-option--stack .flow-option__scene { grid-template-rows:repeat(3,1fr); gap:8px; }
.flow-option--stack .flow-option__scene > i { display:none; }
.flow-option--stack .flow-option__scene > span {
  display:grid;
  grid-template-columns:48px 135px 1fr;
  align-items:center;
  padding:0 16px;
  background:linear-gradient(90deg,rgba(138,71,13,.28),rgba(12,3,1,.3));
}
.flow-option--stack .flow-option__scene > span:not(:last-of-type)::after {
  content:"";
  position:absolute;
  bottom:-7px;
  left:50%;
  width:8px;
  height:8px;
  border-right:1px solid #d9a549;
  border-bottom:1px solid #d9a549;
  transform:translateX(-50%) rotate(45deg);
}
.flow-option--stack .flow-option__scene em { margin:0; }

.panel--faq {
  --panel-image:linear-gradient(180deg,rgba(0,0,0,.5),rgba(6,1,0,.58)),url("./assets/powder-field.webp");
  height:1850px;
  min-height:1850px;
}
.panel--faq > .panel__bg { filter:brightness(calc(var(--bg-bright) * .4)) saturate(calc(var(--bg-saturate) * .56)); }
.faq-sampler--single { top:570px; }
.panel--entry {
  height:1180px;
  min-height:1180px;
  margin-top:-190px;
  clip-path:polygon(0 0,32% 0,50% 190px,68% 0,100% 0,100% 100%,0 100%);
  filter:drop-shadow(0 -28px 30px rgba(0,0,0,.86));
}
.entry-copy { top:330px; }

.panel--hero > .panel__bg { filter:brightness(var(--bg-bright)) saturate(var(--bg-saturate)); }
.panel--luxury > .panel__bg,
.panel--flow > .panel__bg,
.panel--entry > .panel__bg { filter:brightness(var(--bg-bright)) saturate(var(--bg-saturate)) blur(.85px); }
.panel--reasons > .panel__bg { filter:brightness(calc(var(--bg-bright) * .32)) saturate(calc(var(--bg-saturate) * .42)) contrast(1.14) blur(.85px); }
.panel--training > .panel__bg { filter:brightness(calc(var(--bg-bright) * .88)) saturate(calc(var(--bg-saturate) * .94)) contrast(1.06) blur(.85px); }
.panel--roles > .panel__bg { filter:brightness(calc(var(--bg-bright) * .54)) saturate(calc(var(--bg-saturate) * .65)) blur(.85px); }
.panel--faq > .panel__bg { filter:brightness(calc(var(--bg-bright) * .4)) saturate(calc(var(--bg-saturate) * .56)) blur(.85px); }

.panel--reasons .panel__shade {
  background:linear-gradient(180deg,rgba(0,0,0,.78),rgba(5,2,0,.12) 32%,rgba(0,0,0,.36) 100%);
  box-shadow:inset 0 38px 58px rgba(0,0,0,.82),inset 0 -38px 58px rgba(0,0,0,.76);
}

.position-gates a { padding-bottom:58px; }
.role-card__detail {
  max-height:0;
  margin-top:0;
  padding-top:0;
  overflow:hidden;
  border-top:1px solid transparent;
  opacity:0;
  transform:translate3d(0,18px,0);
  transition:max-height .76s cubic-bezier(.16,1,.3,1),margin-top .76s cubic-bezier(.16,1,.3,1),padding-top .76s cubic-bezier(.16,1,.3,1),opacity .42s ease,transform .76s cubic-bezier(.16,1,.3,1),border-color .42s ease;
}
.role-card:is(:hover,:focus-visible) .role-card__detail {
  max-height:150px;
  margin-top:24px;
  padding-top:18px;
  border-color:rgba(240,193,91,.28);
  opacity:1;
  transform:none;
}
.role-card__detail b { display:block; color:#ffe8b4; font-family:"Hiragino Mincho ProN","Yu Mincho",serif; font-size:15px; font-weight:500; letter-spacing:.08em; }
.role-card__detail p { max-width:320px; margin:10px 0 0; color:rgba(255,238,203,.7); font-size:11px; line-height:1.8; letter-spacing:.045em; }

.panel--flow {
  --panel-image:linear-gradient(180deg,rgba(3,0,0,.28),rgba(2,0,0,.5) 58%,rgba(0,0,0,.7)),url("./assets/flow-mirror-ai-v1.webp");
  --panel-position:center,center 46%;
  --bg-origin:50% 48%;
  height:1380px;
  min-height:1380px;
}
.flow-lab { top:600px; }
.flow-lab__grid { display:block; width:700px; margin:0 auto; }
.flow-option { height:540px; padding:30px; }
.flow-option--selected { cursor:default; border-color:transparent; background:none; box-shadow:none; }
.flow-option--selected:hover { transform:none; border-color:transparent; }
.flow-option__scene { height:480px; margin-top:0; }
.flow-option--stack .flow-option__scene {
  display:grid;
  grid-template-rows:repeat(3,1fr);
  gap:14px;
  height:480px;
}
.flow-option--stack .flow-option__scene > span { grid-template-columns:56px 170px 1fr; padding:24px 34px 24px 88px; background:linear-gradient(90deg,rgba(174,109,24,.36),rgba(39,13,2,.38) 72%,rgba(10,2,0,.14)); text-shadow:0 3px 16px rgba(0,0,0,.92); }
.flow-option--stack .flow-option__scene > span::before { left:34px; }
.flow-option--stack .flow-option__scene small { font-size:11px; }
.flow-option--stack .flow-option__scene b { font-size:18px; }
.flow-option--stack .flow-option__scene em { font-size:11.5px; }
.flow-option--stack .flow-option__scene > span:not(:last-of-type)::after {
  bottom:-12px;
  left:50%;
  width:0;
  height:0;
  border:0;
  border-top:8px solid #e0ad4d;
  border-right:9px solid transparent;
  border-left:9px solid transparent;
  filter:drop-shadow(0 0 7px rgba(224,153,29,.65));
  animation:flowArrowFloat 1.7s ease-in-out infinite;
}

.panel--reasons .artwork-head--reasons,
.panel--training .artwork-head--rookie,
.panel--roles .artwork-head--positions,
.panel--flow .artwork-head--flow,
.panel--faq .artwork-head--faq { top:240px; }
.position-gates { bottom:240px; }

.panel--entry {
  height:1120px;
  min-height:1120px;
  margin-top:-105px;
  clip-path:polygon(0 0,50% 105px,100% 0,100% 100%,0 100%);
  filter:drop-shadow(0 -28px 30px rgba(0,0,0,.86));
}
.entry-copy { top:285px; }

.artwork-head h2,
.entry-copy h2 { position:relative; isolation:isolate; }
.artwork-head h2::after,
.entry-copy h2::after { content:""; position:absolute; z-index:2; pointer-events:none; opacity:0; }
.artwork-head h2 img,
.entry-copy h2 img { position:relative; z-index:1; }
.panel--luxury.is-art-ready.is-motion-active .artwork-head h2::after { inset:0; background:linear-gradient(105deg,transparent 38%,rgba(255,250,229,.88) 48%,rgba(214,137,24,.2) 54%,transparent 64%); background-size:230% 100%; -webkit-mask:url("./assets/title-floor.webp") center/contain no-repeat; mask:url("./assets/title-floor.webp") center/contain no-repeat; animation:titleMaskedSweep 5.8s cubic-bezier(.16,1,.3,1) infinite; }
.panel--reasons.is-art-ready.is-motion-active .artwork-head h2::after { inset:-22% 8%; background:radial-gradient(ellipse,rgba(255,190,69,.28),transparent 66%); filter:blur(12px); animation:titleBloom 4.8s ease-in-out infinite; }
.panel--training.is-art-ready.is-motion-active .artwork-head h2::after { right:13%; bottom:-5px; left:13%; height:1px; background:linear-gradient(90deg,transparent,#ffe0a1,transparent); box-shadow:0 0 12px rgba(227,137,18,.72); transform-origin:center; animation:titleLinePulse 4.2s ease-in-out infinite; }
.panel--roles.is-art-ready.is-motion-active .artwork-head h2::after { inset:0; background:linear-gradient(100deg,transparent 30%,rgba(255,247,220,.72) 40%,transparent 47%,transparent 53%,rgba(214,145,31,.56) 61%,transparent 70%); background-size:250% 100%; -webkit-mask:url("./assets/title-positions.webp") center/contain no-repeat; mask:url("./assets/title-positions.webp") center/contain no-repeat; animation:titleMaskedSweep 6.4s cubic-bezier(.16,1,.3,1) infinite .7s; }
.panel--faq.is-art-ready.is-motion-active .artwork-head h2::after { inset:0; background:linear-gradient(90deg,transparent 32%,rgba(255,246,218,.54) 48%,transparent 64%); background-size:220% 100%; -webkit-mask:url("./assets/title-faq.webp") center/contain no-repeat; mask:url("./assets/title-faq.webp") center/contain no-repeat; animation:titleMaskedSweep 5.2s cubic-bezier(.16,1,.3,1) infinite 1.1s; }
.panel--entry.is-art-ready.is-motion-active .entry-copy h2::after { inset:0; background:radial-gradient(ellipse at 50% 55%,rgba(255,248,222,.7),rgba(223,148,27,.26) 34%,transparent 68%); -webkit-mask:url("./assets/title-entry.webp") center/contain no-repeat; mask:url("./assets/title-entry.webp") center/contain no-repeat; animation:titleMaskedBloom 5.6s ease-in-out infinite; }

.floating-contact { width:196px; }
.floating-contact__button { grid-template-columns:52px 1fr; min-height:64px; padding:0 16px 0 10px; }
.floating-contact__icon { position:relative; z-index:2; justify-self:center; display:block; width:29px; height:29px; color:#efc76f; fill:currentColor; filter:drop-shadow(0 0 7px rgba(226,151,30,.28)); }
.floating-contact__icon--trial { width:28px; height:28px; }
.floating-contact__button span { z-index:2; padding-left:14px; font-size:14px; letter-spacing:.06em; }

@keyframes titleBloom { 0%,100%{opacity:.12;transform:scale(.9)} 46%{opacity:.72;transform:scale(1.04)} }
@keyframes titleLinePulse { 0%,100%{opacity:.16;transform:scaleX(.24)} 48%{opacity:.9;transform:scaleX(1)} }
@keyframes titleMaskedSweep { 0%,18%{opacity:0;background-position:130% 50%} 42%{opacity:.92} 72%,100%{opacity:0;background-position:-130% 50%} }
@keyframes titleMaskedBloom { 0%,100%{opacity:.08;transform:scale(.98)} 48%{opacity:.62;transform:scale(1.015)} }

@keyframes flowArrowFloat {
  0%,100% { transform:translate(-50%,-3px); }
  50% { transform:translate(-50%,3px); }
}

.cinema-intro {
  position:fixed;
  z-index:1000;
  inset:0;
  overflow:hidden;
  background:#050100;
  color:#f4dfac;
  animation:cinemaIntroExit 7.4s linear forwards;
}

.cinema-intro:not(.is-ready),
.cinema-intro:not(.is-ready) * { animation-play-state: paused; }

.cinema-intro__film { position:absolute; inset:-3%; width:106%; height:106%; object-fit:cover; opacity:.58; filter:saturate(.78) contrast(1.18) brightness(.68); animation:cinemaFilmDrift 7.4s cubic-bezier(.16,1,.3,1) both; }
.cinema-intro__shade { position:absolute; inset:0; background:radial-gradient(ellipse at 50% 48%,rgba(9,1,0,.08),rgba(4,0,0,.42) 55%,rgba(0,0,0,.88)),linear-gradient(90deg,rgba(0,0,0,.48),transparent 22% 78%,rgba(0,0,0,.48)); }
.cinema-intro__grain { position:absolute; inset:0; opacity:.055; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.86' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.95'/%3E%3C/svg%3E"); animation:cinemaGrain .18s steps(2) infinite; mix-blend-mode:screen; }
.cinema-intro__letterbox { position:absolute; z-index:3; right:0; left:0; height:12.5vh; background:#020000; }
.cinema-intro__letterbox--top { top:0; }
.cinema-intro__letterbox--bottom { bottom:0; }

.cinema-intro__credit { position:absolute; z-index:4; top:calc(var(--screen-h,100vh) / 2); right:0; left:0; bottom:auto; margin:0; opacity:0; transform:translateY(-50%); color:rgba(250,228,180,.88); font:400 11px/1 "Helvetica Neue",Arial,sans-serif; letter-spacing:.56em; text-align:center; text-indent:.56em; text-shadow:0 3px 20px #000; }
.cinema-intro__credit--first { animation:cinemaCreditFirst 7.4s ease-in-out both; }
.cinema-intro__credit--second { animation:cinemaCreditSecond 7.4s ease-in-out both; }

.cinema-intro__lockup { position:absolute; z-index:4; top:calc(var(--screen-h,100vh) / 2); left:calc(50% - var(--cinema-scrollbar-compensation,0px)/2); display:grid; justify-items:center; width:820px; opacity:0; transform:translate(-50%,-50%); text-align:center; animation:cinemaLockup 7.4s linear both; }
.cinema-intro__lockup small { color:rgba(235,191,97,.72); font:400 8px/1 "Helvetica Neue",Arial,sans-serif; letter-spacing:.58em; text-indent:.58em; animation:cinemaLockupMeta 7.4s linear both; }
.cinema-intro__lockup img { display:block; width:810px; margin:24px 0 8px; filter:drop-shadow(0 10px 28px rgba(0,0,0,.9)); }
.cinema-intro__lockup span { display:flex; align-items:center; width:410px; color:rgba(246,214,147,.72); font:400 8px/1 "Helvetica Neue",Arial,sans-serif; letter-spacing:.32em; white-space:nowrap; animation:cinemaLockupMeta 7.4s linear both; }
.cinema-intro__lockup span::before,.cinema-intro__lockup span::after { content:""; flex:1; height:1px; background:linear-gradient(90deg,transparent,rgba(218,161,55,.64)); }
.cinema-intro__lockup span::before { margin-right:18px; }
.cinema-intro__lockup span::after { margin-left:18px; transform:scaleX(-1); }
.cinema-intro.is-finished { display:none; }
body.has-cinema-intro { overflow:hidden; padding-right:var(--cinema-scrollbar-compensation,0px); }

@keyframes cinemaIntroExit { 0%,91%{opacity:1;visibility:visible} 100%{opacity:0;visibility:hidden} }
@keyframes cinemaFilmDrift { 0%{transform:scale(1);filter:saturate(.5) contrast(1.12) brightness(.35)} 100%{transform:scale(1.07);filter:saturate(.82) contrast(1.2) brightness(.72)} }
@keyframes cinemaCreditFirst { 0%,5%{opacity:0;letter-spacing:.7em} 12%,23%{opacity:1;letter-spacing:.56em} 30%,100%{opacity:0;letter-spacing:.56em} }
@keyframes cinemaCreditSecond { 0%,29%{opacity:0;letter-spacing:.7em} 37%,48%{opacity:1;letter-spacing:.56em} 55%,100%{opacity:0;letter-spacing:.56em} }
@keyframes cinemaLockup { 0%,54%{opacity:0} 64%,100%{opacity:1} }
@keyframes cinemaLockupMeta { 0%,63%{opacity:0} 68%,76%{opacity:1} 83%,100%{opacity:0} }
@keyframes cinemaGrain { 0%{transform:translate(0)} 25%{transform:translate(-1.5%,1%)} 50%{transform:translate(1%,-1.5%)} 75%{transform:translate(.8%,1.4%)} 100%{transform:translate(-1%,.5%)} }

.hero-copy--poster > p,
.hero-copy--poster > strong { transition:opacity .9s ease .28s; }
body.has-cinema-intro .hero-copy--poster > p,
body.has-cinema-intro .hero-copy--poster > strong { opacity:0; }

.venue-window--ornate { isolation:isolate; }
.venue-window--ornate::before,
.venue-window--ornate::after { content:""; position:absolute; pointer-events:none; opacity:0; }
.venue-window--ornate::before { z-index:1; inset:10% 7%; background:radial-gradient(ellipse at center,rgba(255,199,73,.7),rgba(193,69,2,.36) 43%,transparent 74%); filter:blur(28px); transform:scale(.78); }
.venue-window--ornate::after { z-index:4; inset:1%; background:radial-gradient(circle at 17% 31%,#fff 0 2px,#ffe67d 3px,#ffb000 6px,rgba(255,94,0,.58) 11px,transparent 46px),radial-gradient(circle at 83% 31%,#fff 0 2px,#ffe67d 3px,#ffb000 6px,rgba(255,94,0,.58) 11px,transparent 46px),radial-gradient(circle at 14% 68%,#fff 0 2px,#ffe67d 3px,#ffb000 6px,rgba(255,94,0,.48) 11px,transparent 42px),radial-gradient(circle at 86% 68%,#fff 0 2px,#ffe67d 3px,#ffb000 6px,rgba(255,94,0,.48) 11px,transparent 42px); mix-blend-mode:screen; filter:blur(8px); }
.panel--luxury.is-art-ready .venue-window__frame-light { position:absolute; z-index:3; inset:0; pointer-events:none; opacity:0; background:linear-gradient(106deg,transparent 28%,rgba(255,174,25,.18) 39%,#fffbe3 49%,#ffd04e 54%,rgba(255,116,0,.18) 64%,transparent 75%); background-size:260% 100%; background-position:140% 50%; mix-blend-mode:screen; -webkit-mask:url("./assets/video-frame-v4.webp") center/contain no-repeat; mask:url("./assets/video-frame-v4.webp") center/contain no-repeat; }
.venue-window--ornate.is-light-primed:not(.is-light-revealed) .venue-window__frame { filter:brightness(.17) saturate(.42) drop-shadow(0 8px 7px rgba(0,0,0,.88)) drop-shadow(0 30px 25px rgba(0,0,0,.82)); }
.venue-window--ornate.is-light-primed:not(.is-light-revealed) .venue-window__screen video { opacity:0; transform:scale(1.045); filter:saturate(.35) contrast(1.22) brightness(.18) sepia(.24); }
.venue-window--ornate.is-light-revealed .venue-window__frame { animation:floorFrameIgnition 2.35s cubic-bezier(.16,1,.3,1) both; }
.venue-window--ornate.is-light-revealed .venue-window__frame-light { animation:floorFrameSweep 3.6s cubic-bezier(.16,1,.3,1) .55s both; }
.venue-window--ornate.is-light-revealed::before { animation:floorFrameHalo 2.6s cubic-bezier(.16,1,.3,1) 1.2s both; }
.venue-window--ornate.is-light-revealed::after { animation:floorPerimeterLights 2.2s cubic-bezier(.16,1,.3,1) 2.05s both; }
.venue-window--ornate.is-light-revealed .venue-window__screen video { animation:floorVideoReveal 2.35s cubic-bezier(.16,1,.3,1) 3.15s both; }

@keyframes floorFrameIgnition {
  0% { filter:brightness(.17) saturate(.42) drop-shadow(0 8px 7px rgba(0,0,0,.88)) drop-shadow(0 30px 25px rgba(0,0,0,.82)); }
  48% { filter:brightness(1.58) saturate(1.34) drop-shadow(0 8px 7px rgba(0,0,0,.72)) drop-shadow(0 30px 25px rgba(0,0,0,.62)) drop-shadow(0 0 44px rgba(255,180,35,.92)); }
  100% { filter:brightness(1.06) saturate(1.06) drop-shadow(0 8px 7px rgba(0,0,0,.72)) drop-shadow(0 30px 25px rgba(0,0,0,.62)) drop-shadow(0 0 22px rgba(255,202,96,.34)); }
}
@keyframes floorFrameSweep { 0%{opacity:0;background-position:140% 50%} 18%{opacity:1} 76%{opacity:1} 100%{opacity:0;background-position:-140% 50%} }
@keyframes floorFrameHalo { 0%{opacity:0;transform:scale(.78)} 52%{opacity:1;transform:scale(1.09)} 100%{opacity:.62;transform:scale(1)} }
@keyframes floorPerimeterLights { 0%{opacity:0;filter:blur(8px);transform:scale(.9)} 48%{opacity:1;filter:blur(0);transform:scale(1.045)} 100%{opacity:.82;filter:blur(.35px);transform:scale(1)} }
@keyframes floorVideoReveal { 0%{opacity:0;transform:scale(1.045);filter:saturate(.35) contrast(1.22) brightness(.18) sepia(.24)} 58%{opacity:1;filter:saturate(.98) contrast(1.14) brightness(1.12) sepia(.03)} 100%{opacity:1;transform:scale(1);filter:saturate(.72) contrast(1.12) brightness(.76) sepia(.08)} }

@media(max-width:1210px) {
  .floating-contact { width:184px; }
  .floating-contact__button { grid-template-columns:48px 1fr; }
}

@media(prefers-reduced-motion:reduce) {
  .cinema-intro { display:none; }
  .venue-window--ornate.is-light-primed .venue-window__frame,
  .venue-window--ornate.is-light-primed .venue-window__screen video { animation:none; }
  .venue-window--ornate.is-light-primed .venue-window__frame-light { display:none; }
  .venue-window--ornate.is-light-primed::before,
  .venue-window--ornate.is-light-primed::after { animation:none; opacity:.35; }
  .panel.is-art-ready.is-motion-active .artwork-head h2::after,
  .panel.is-art-ready.is-motion-active .entry-copy h2::after { animation:none!important; opacity:.28; }
}

.panel--reasons {
  margin-top:0;
  clip-path:polygon(0 0,100% 0,100% 100%,0 100%);
}
.panel--training {
  margin-top:0;
  clip-path:polygon(0 0,100% 0,100% 100%,0 100%);
}
.panel--roles {
  margin-top:-145px;
  clip-path:polygon(0 145px,100% 0,100% 100%,0 100%);
}
.panel--flow {
  margin-top:-120px;
  clip-path:polygon(0 120px,100% 0,100% 100%,0 100%);
}
.panel--faq {
  margin-top:0;
  clip-path:polygon(0 0,100% 0,100% 100%,0 100%);
}
.panel--entry {
  margin-top:-105px;
  clip-path:polygon(0 0,50% 105px,100% 0,100% 100%,0 100%);
}

.reason-card__video {
  z-index:1;
  pointer-events:none;
}
.reason-card__content,
.reason-card__cue { z-index:2; }

.section-caption,
.section-caption--wide { margin-top:4px; }

.panel--roles::before,
.panel--faq::before { content:""; position:absolute; z-index:2; inset:0; pointer-events:none; }
.panel--roles::before { background:linear-gradient(170.4deg, rgba(0,0,0,.82) 143px, transparent 443px); }
.panel--faq::before { background:linear-gradient(180deg, rgba(0,0,0,.78), transparent 320px); }
.panel--roles .panel__shade {
  box-shadow: inset 0 -54px 86px rgba(0,0,0,.72);
}

.panel.panel--faq {
  filter:none;
}
.panel.panel--faq > .panel__bg {
  filter:brightness(calc(var(--bg-bright) * .34)) saturate(calc(var(--bg-saturate) * .5));
}
.panel.panel--faq .panel__shade {
  background:rgba(0,0,0,.22);
  box-shadow:none;
}

.salary-lockup--training > .salary-lockup__amount-wrap {
  position:relative;
  display:block;
  width:790px;
  margin-top:-84px;
  color:inherit;
  font-size:inherit;
  letter-spacing:normal;
  line-height:1;
}
.salary-lockup--training .salary-lockup__amount-wrap > .salary-lockup__amount {
  display:block;
  width:100%;
  height:auto;
  margin:0;
}
.panel--training.is-art-ready .salary-lockup__amount-wrap::after {
  content:"";
  position:absolute;
  z-index:1;
  inset:0;
  background:linear-gradient(
    100deg,
    transparent 28%,
    rgba(255,205,62,.2) 36%,
    rgba(255,250,220,.96) 45%,
    rgba(255,183,31,.52) 54%,
    transparent 68%
  );
  background-position:135% 50%;
  background-size:260% 100%;
  -webkit-mask:url("./assets/salary-amount.webp") center/contain no-repeat;
  mask:url("./assets/salary-amount.webp") center/contain no-repeat;
  mix-blend-mode:screen;
  opacity:0;
  pointer-events:none;
}
.panel--training.is-motion-active .salary-lockup__amount-wrap::after {
  animation:salaryAmountSweep 6s cubic-bezier(.45,0,.55,1) infinite;
}
@keyframes salaryAmountSweep {
  0%,6% { opacity:0; background-position:135% 50%; }
  14% { opacity:.94; }
  82% { opacity:.88; background-position:-135% 50%; }
  88%,100% { opacity:0; background-position:-135% 50%; }
}
@media (prefers-reduced-motion:reduce) {
  .panel--training.is-motion-active .salary-lockup__amount-wrap::after {
    animation:none;
    opacity:.16;
    background-position:50% 50%;
  }
}

.hero-copy__jp { display:block; margin-top:20px; color:#fff0c4; font-family:"Hiragino Mincho ProN","Yu Mincho",serif; font-size:17px; font-weight:500; letter-spacing:.3em; text-indent:.3em; text-shadow:0 3px 3px #190000,0 0 13px #000,0 0 22px rgba(255,159,16,.54); transition:opacity .9s ease .28s; }
body.has-cinema-intro .hero-copy__jp { opacity:0; }

body.has-cinema-intro .atmosphere,
body.has-cinema-intro .particles,
body.has-cinema-intro .living-flare { margin-left:calc(var(--cinema-scrollbar-compensation,0px) / -2); }
body.has-cinema-intro .floating-contact { margin-right:var(--cinema-scrollbar-compensation,0px); }

.artwork-head h2::before,
.entry-copy h2::before {
  content:"";
  position:absolute;
  z-index:0;
  
  inset:0;
  background:none;
  filter:blur(10px);
  opacity:0;
  pointer-events:none;
}
.panel--luxury .artwork-head h2::before,
.panel--reasons .artwork-head h2::before,
.panel--training .artwork-head h2::before,
.panel--roles .artwork-head h2::before,
.panel--faq .artwork-head h2::before,
.panel--entry.is-art-ready .entry-copy h2::before {
  background:radial-gradient(ellipse at 50% 48%,rgba(255,222,150,.95),rgba(255,158,26,.62) 44%,rgba(214,96,0,.24) 68%,transparent 82%);
  opacity:.44;
}
.panel--luxury.is-art-ready .artwork-head h2::before { -webkit-mask:url("./assets/title-floor.webp") center/contain no-repeat; mask:url("./assets/title-floor.webp") center/contain no-repeat; }
.panel--reasons.is-art-ready .artwork-head h2::before { -webkit-mask:url("./assets/title-reasons.webp") center/contain no-repeat; mask:url("./assets/title-reasons.webp") center/contain no-repeat; }
.panel--training.is-art-ready .artwork-head h2::before { -webkit-mask:url("./assets/title-rookie.webp") center/contain no-repeat; mask:url("./assets/title-rookie.webp") center/contain no-repeat; }
.panel--roles.is-art-ready .artwork-head h2::before { -webkit-mask:url("./assets/title-positions.webp") center/contain no-repeat; mask:url("./assets/title-positions.webp") center/contain no-repeat; }
.panel--faq.is-art-ready .artwork-head h2::before { -webkit-mask:url("./assets/title-faq.webp") center/contain no-repeat; mask:url("./assets/title-faq.webp") center/contain no-repeat; }
.panel--entry.is-art-ready .entry-copy h2::before { -webkit-mask:url("./assets/title-entry.webp") center/contain no-repeat; mask:url("./assets/title-entry.webp") center/contain no-repeat; }

.panel--luxury.is-motion-active .artwork-head h2::before,
.panel--reasons.is-motion-active .artwork-head h2::before,
.panel--training.is-motion-active .artwork-head h2::before,
.panel--roles.is-motion-active .artwork-head h2::before,
.panel--faq.is-motion-active .artwork-head h2::before { animation:artHalo 5.4s ease-in-out infinite; }
.panel--entry.is-motion-active .entry-copy h2::before { animation:artHalo 6.2s ease-in-out infinite .6s; }

.panel--reasons.is-art-ready .artwork-head h2::before { animation-delay:-1.3s; }
.panel--training.is-art-ready .artwork-head h2::before { animation-delay:-2.6s; }
.panel--roles.is-art-ready .artwork-head h2::before { animation-delay:-3.5s; }
.panel--faq.is-art-ready .artwork-head h2::before { animation-delay:-4.4s; }

.artwork-head h2 img,
.entry-copy h2 img { filter:drop-shadow(0 8px 0 rgba(43,7,1,.76)) drop-shadow(0 22px 30px rgba(0,0,0,.82)) drop-shadow(0 0 24px rgba(255,193,96,.5)); }
.panel--flow .artwork-head h2 img { filter:drop-shadow(0 8px 0 rgba(43,7,1,.76)) drop-shadow(0 22px 30px rgba(0,0,0,.82)) drop-shadow(0 0 20px rgba(255,213,155,.18)); }

.panel--reasons.is-art-ready.is-motion-active .artwork-head h2::after { animation:none; opacity:0; }

.salary-lockup--training .salary-lockup__amount-wrap > .salary-lockup__amount {
  position:relative;
  z-index:1;
  filter:drop-shadow(0 10px 0 #491100) drop-shadow(0 22px 32px #000) drop-shadow(0 0 28px rgba(255,171,44,.62));
}
.panel--training.is-art-ready .salary-lockup__amount-wrap::before {
  content:"";
  position:absolute;
  z-index:0;
  inset:0;
  background:radial-gradient(ellipse at 50% 50%,rgba(255,226,158,.98),rgba(255,152,18,.66) 42%,rgba(206,84,0,.28) 66%,transparent 80%);
  -webkit-mask:url("./assets/salary-amount.webp") center/contain no-repeat;
  mask:url("./assets/salary-amount.webp") center/contain no-repeat;
  filter:blur(13px);
  opacity:.5;
  pointer-events:none;
}
.panel--training.is-motion-active .salary-lockup__amount-wrap::before { animation:artHalo 5s ease-in-out infinite; }

@keyframes artHalo { 0%,100% { opacity:.32; } 50% { opacity:.88; } }

.entry-action--smoke::before,
.entry-action--crystal::before {
  opacity:0;
  transition:transform .95s cubic-bezier(.16,1,.3,1) .2s,opacity .34s ease;
}
.entry-action--smoke::after,
.entry-action--crystal::after {
  opacity:0;
  transition:left .95s cubic-bezier(.16,1,.3,1) .2s,opacity .34s ease;
}
.entry-action--smoke:hover::before,.entry-action--smoke:focus-visible::before,
.entry-action--crystal:hover::before,.entry-action--crystal:focus-visible::before {
  transform:translateX(52%) skewX(-12deg);
  opacity:1;
  transition:transform 1.05s cubic-bezier(.16,1,.3,1),opacity .3s ease;
}
.entry-action--smoke:hover::after,.entry-action--smoke:focus-visible::after,
.entry-action--crystal:hover::after,.entry-action--crystal:focus-visible::after {
  left:78%;
  opacity:1;
  transition:left 1.05s cubic-bezier(.16,1,.3,1),opacity .3s ease;
}

@media (prefers-reduced-motion:reduce) {
  .artwork-head h2::before,
  .entry-copy h2::before,
  .salary-lockup__amount-wrap::before { animation:none!important; }
}

.panel--flow {
  height:1452px;
  min-height:1452px;
}
.flow-option { height:612px; }
.flow-option__scene,
.flow-option--stack .flow-option__scene { height:552px; }
.flow-option--stack .flow-option__scene { gap:48px; }

.flow-option--stack .flow-option__scene > span {
  grid-template-columns:84px 200px 1fr;
  padding:34px 44px 34px 52px;
  background:linear-gradient(90deg,rgba(174,109,24,.4),rgba(28,9,2,.62) 62%,rgba(12,3,0,.5));
}

.flow-option--stack .flow-option__scene small {
  color:#e3b45c;
  font-size:28px;
  letter-spacing:.02em;
}
.flow-option--stack .flow-option__scene b { font-size:18px; }
.flow-option--stack .flow-option__scene em {
  color:#f6e3bd;
  font-size:14px;
  letter-spacing:.05em;
}

.flow-option--stack .flow-option__scene > span:not(:last-of-type)::after { bottom:-28px; }

.panel--roles .panel__paper {
  position: absolute;
  z-index: 0;
  inset: 0;
  clip-path: polygon(0 145px, 0 145px, 0 100%, 0 100%);
  transition: clip-path 700ms cubic-bezier(.33, 1, .68, 1) 200ms;
}
.panel--roles.is-slash-open .panel__paper {
  clip-path: polygon(0 145px, 100% 0, 100% 100%, 0 100%);
}

.panel--roles .panel__paper > .panel__bg {
  filter: brightness(calc(var(--bg-bright) * .54)) saturate(calc(var(--bg-saturate) * .65)) blur(.85px);
}

.panel--roles .slash-line,
.panel--flow .slash-line {
  position: absolute;
  z-index: 3;
  left: 0;
  height: 1px;
  background: linear-gradient(90deg, rgba(255, 219, 150, .5), #ffe6ab 22%, #ffd47a 78%, rgba(255, 219, 150, .5));
  box-shadow: 0 0 9px rgba(226, 151, 30, .5);
  transform-origin: 0 0;
  pointer-events: none;
}

.panel--roles .slash-line {
  top: 145px;
  width: 872.14px;
  transform: rotate(-9.5766deg) scaleX(0);
  transition: transform 460ms cubic-bezier(.33, 1, .68, 1);
}
.panel--roles.is-slash-open .slash-line {
  transform: rotate(-9.5766deg) scaleX(1);
}

.panel--flow .slash-line {
  top: 120px;
  width: 868.33px;
  transform: rotate(-7.9435deg);
}

@media (prefers-reduced-motion: reduce) {
  .panel--roles .panel__paper,
  .panel--roles .slash-line { transition: none; }
}

.trial-modal { width: 520px; max-width: calc(100vw - 48px); padding: 0; border: 0; background: transparent; color: var(--ink); overflow: visible; }
.trial-modal::backdrop { background: rgba(2, 0, 0, .78); backdrop-filter: blur(6px) saturate(.9); -webkit-backdrop-filter: blur(6px) saturate(.9); }
.trial-modal[open] { animation: trialModalIn .5s cubic-bezier(.16, 1, .3, 1); }
.trial-modal[open]::backdrop { animation: trialBackdropIn .45s ease; }

@keyframes trialModalIn { from { opacity: 0; transform: translateY(18px) scale(.985); } to { opacity: 1; transform: none; } }
@keyframes trialBackdropIn { from { opacity: 0; } to { opacity: 1; } }

.trial-modal__panel {
  position: relative;
  padding: 46px 44px 38px;
  border: 1px solid rgba(255, 239, 199, .58);
  background: linear-gradient(108deg, rgba(30, 8, 4, .96), rgba(6, 1, 0, .97));
  box-shadow: inset 0 1px rgba(255, 255, 255, .16), inset 0 0 0 4px rgba(255, 206, 99, .04), 0 34px 72px rgba(0, 0, 0, .62);
  -webkit-backdrop-filter: blur(10px) saturate(1.25);
  backdrop-filter: blur(10px) saturate(1.25);
}

.trial-modal__panel::before { content: ""; position: absolute; top: -1px; right: 22%; left: 22%; height: 1px; background: linear-gradient(90deg, transparent, rgba(255, 226, 150, .9), transparent); }

.trial-modal__close { position: absolute; top: 18px; right: 18px; width: 34px; height: 34px; padding: 0; border: 1px solid rgba(255, 228, 164, .3); background: rgba(255, 240, 205, .04); color: var(--ink); cursor: pointer; transition: border-color .35s ease, background .35s ease; }
.trial-modal__close::before, .trial-modal__close::after { content: ""; position: absolute; top: 50%; left: 50%; width: 13px; height: 1px; background: currentColor; }
.trial-modal__close::before { transform: translate(-50%, -50%) rotate(45deg); }
.trial-modal__close::after { transform: translate(-50%, -50%) rotate(-45deg); }
.trial-modal__close:hover, .trial-modal__close:focus-visible { border-color: rgba(255, 232, 177, .8); background: rgba(255, 240, 205, .1); }

.trial-modal__eyebrow { margin: 0; color: var(--accent); font-size: 8px; letter-spacing: .25em; }
.trial-modal__title { margin: 10px 0 0; font-family: "Hiragino Mincho ProN", "Yu Mincho", serif; font-size: 22px; font-weight: 400; letter-spacing: .1em; }
.trial-modal__lead { margin: 14px 0 30px; color: var(--muted); font-size: 12px; line-height: 2; }

.trial-field { display: grid; margin-bottom: 20px; }
.trial-field label { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; font-family: "Hiragino Mincho ProN", "Yu Mincho", serif; font-size: 13px; letter-spacing: .1em; }
.trial-field label i { padding: 2px 7px; border: 1px solid rgba(242, 185, 60, .42); color: var(--accent); font-size: 8px; font-style: normal; letter-spacing: .14em; }
.trial-field label i.is-optional { border-color: rgba(255, 238, 199, .22); color: var(--muted); }
.trial-field small { margin-top: 7px; color: var(--muted); font-size: 10px; letter-spacing: .04em; }

.trial-field input, .trial-field select, .trial-field textarea {
  width: 100%;
  padding: 13px 15px;
  border: 1px solid rgba(255, 228, 164, .26);
  background: rgba(255, 244, 214, .045);
  color: var(--ink);
  font-family: inherit;
  font-size: 13px;
  letter-spacing: .04em;
  transition: border-color .35s ease, background .35s ease, box-shadow .35s ease;
}
.trial-field textarea { line-height: 1.9; resize: vertical; }
.trial-field select { appearance: none; background-image: linear-gradient(45deg, transparent 50%, rgba(255, 238, 199, .7) 50%), linear-gradient(135deg, rgba(255, 238, 199, .7) 50%, transparent 50%); background-position: right 18px center, right 13px center; background-repeat: no-repeat; background-size: 5px 5px, 5px 5px; }
.trial-field select option { background: #120500; color: var(--ink); }
.trial-field input::placeholder, .trial-field textarea::placeholder { color: rgba(255, 238, 199, .3); }
.trial-field input:focus, .trial-field select:focus, .trial-field textarea:focus { outline: none; border-color: rgba(255, 232, 177, .78); background: rgba(255, 244, 214, .075); box-shadow: 0 0 22px rgba(255, 182, 55, .09); }
.trial-field.is-invalid input, .trial-field.is-invalid select { border-color: rgba(228, 96, 84, .8); }

.trial-turnstile { max-width: 100%; margin: 0 0 14px; overflow: hidden; }
.trial-modal__error { min-height: 0; margin: 0 0 14px; color: #e78a7c; font-size: 11px; line-height: 1.9; }
.trial-modal__error:empty { display: none; }

.trial-modal__submit { position: relative; display: grid; grid-template-columns: 1fr auto; align-items: center; width: 100%; padding: 19px 26px; overflow: hidden; border: 1px solid rgba(255, 239, 199, .58); background: linear-gradient(108deg, rgba(255, 238, 197, .08), rgba(89, 43, 11, .06), rgba(255, 255, 255, .03)); color: var(--ink); cursor: pointer; text-align: left; transition: background .6s cubic-bezier(.16, 1, .3, 1), box-shadow .6s ease, border-color .5s ease; }
.trial-modal__submit span { font-family: "Hiragino Mincho ProN", "Yu Mincho", serif; font-size: 15px; letter-spacing: .12em; }
.trial-modal__submit i { width: 52px; height: 1px; background: linear-gradient(90deg, currentColor, transparent); transition: width .3s; }
.trial-modal__submit::after { content: ""; position: absolute; top: 0; bottom: 0; left: -26%; width: 20%; background: linear-gradient(102deg, transparent, rgba(255, 248, 224, .42), rgba(213, 143, 40, .1), transparent); transform: skewX(-12deg); transition: left .9s cubic-bezier(.16, 1, .3, 1); pointer-events: none; }
.trial-modal__submit:hover, .trial-modal__submit:focus-visible { background: linear-gradient(108deg, rgba(255, 243, 211, .13), rgba(111, 55, 14, .1), rgba(255, 255, 255, .05)); box-shadow: inset 0 1px rgba(255, 255, 255, .22), 0 0 28px rgba(255, 182, 55, .11); }
.trial-modal__submit:hover i, .trial-modal__submit:focus-visible i { width: 80px; }
.trial-modal__submit:hover::after, .trial-modal__submit:focus-visible::after { left: 106%; }
.trial-modal__submit:disabled { opacity: .5; cursor: default; }
.trial-modal__submit:disabled::after { display: none; }

.trial-modal__note { margin: 16px 0 0; color: var(--muted); font-size: 10px; letter-spacing: .04em; }

.trial-modal__done { display: none; text-align: center; }
.trial-modal__done .trial-modal__title { margin-top: 12px; }
.trial-modal__done .trial-modal__lead { margin-bottom: 32px; }
.trial-modal__done .trial-modal__submit { grid-template-columns: 1fr; justify-items: center; }
.trial-modal.is-done [data-trial-form] { display: none; }
.trial-modal.is-done .trial-modal__done { display: block; }

@media (prefers-reduced-motion: reduce) {
  .trial-modal[open], .trial-modal[open]::backdrop { animation: none; }
  .trial-modal__submit, .trial-modal__submit i, .trial-modal__submit::after, .trial-field input, .trial-field select, .trial-field textarea { transition: none; }
}

.line-modal { width: 420px; }
.line-modal__panel { text-align: center; }
.line-modal .trial-modal__lead { margin-bottom: 24px; }

.line-modal__qr { display: block; width: 236px; height: auto; margin: 0 auto; }
