/* Johto Data — inc3b video hero. Calm, refined: thin serif, slow fades, Ken Burns, vignette, grain. #7cd4ff on small details only. */
@font-face{font-family:"Fraunces";font-style:normal;font-weight:560;font-display:swap;src:url(/assets/fonts/fraunces-560-latin.woff2) format("woff2")}
.hero10{padding:24px 0 8px;border-bottom:0}
.hero10 .hero5-in{position:relative;overflow:hidden;isolation:isolate;background:#0a0a0a;border:1px solid #2a2d33;border-radius:20px;max-width:1120px;padding:0;height:clamp(520px,56vw,640px);display:flex;align-items:center;justify-content:center;box-shadow:0 30px 60px -32px rgba(10,10,10,.55)}
.hv{position:absolute;inset:0;z-index:0;pointer-events:none;background:#0a0a0a}
.hv-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.4s ease;overflow:hidden}
.hv-slide.is-on{opacity:1}
.hv-poster,.hv-slide video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transform-origin:50% 50%}
.hv-slide.is-on .hv-poster,.hv-slide.is-on video{animation:hvkb 9s linear forwards}
@keyframes hvkb{from{transform:scale(1)}to{transform:scale(1.05)}}
.hv-vig{position:absolute;inset:0;background:radial-gradient(ellipse 85% 75% at 50% 45%,rgba(10,10,10,.18) 0%,rgba(10,10,10,.42) 70%,rgba(10,10,10,.7) 100%),linear-gradient(180deg,rgba(10,10,10,.25) 0%,rgba(10,10,10,0) 30%,rgba(10,10,10,.35) 70%,rgba(10,10,10,.8) 100%)}
.hv-grain{position:absolute;inset:-50%;background:url(/assets/grain.svg) repeat;background-size:160px 160px;opacity:.03;mix-blend-mode:overlay}
.hx{position:relative;z-index:2;text-align:center;padding:40px 24px 64px;max-width:900px}
.hero10 .hx-h{font-family:"Fraunces","Times New Roman",serif;font-weight:560;color:#fff;font-size:clamp(2.1rem,7vw,5rem);line-height:1.06;letter-spacing:.01em;margin:0 auto;max-width:none;text-shadow:0 0 28px rgba(255,255,255,.22),0 2px 30px rgba(0,0,0,.45);animation:hxin 1.2s cubic-bezier(.2,.6,.2,1) both}
.hx-line{display:block;width:min(240px,50%);height:1px;margin:22px auto 20px;background:linear-gradient(90deg,transparent,#c9ced6 20%,#eceef1 50%,#c9ced6 80%,transparent);transform-origin:50% 50%;animation:hxline 1.1s .7s cubic-bezier(.2,.6,.2,1) both}
.hero10 .hx-sub{color:#eceef1;text-shadow:0 1px 14px rgba(0,0,0,.55);margin:0 auto 26px;max-width:58ch;animation:hxin .9s 1s cubic-bezier(.2,.6,.2,1) both}
.hx-btns{animation:hxin .9s 1.25s cubic-bezier(.2,.6,.2,1) both}
.hero10 .path9{background:rgba(10,10,10,.82);border:1px solid #8f97a2;color:#fff;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.hero10 .path9:hover,.hero10 .path9:focus-visible{background:#0a0a0a;border-color:#7cd4ff}
@keyframes hxin{from{opacity:0;filter:blur(8px);transform:translateY(6px)}to{opacity:1;filter:blur(0);transform:none}}
@keyframes hxline{from{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}
.hv-label{position:absolute;z-index:2;left:22px;bottom:16px;margin:0;font-family:"Fraunces","Times New Roman",serif;font-weight:560;font-variant:small-caps;text-transform:lowercase;letter-spacing:.32em;font-size:1rem;color:#c9ced6;text-shadow:0 1px 8px rgba(0,0,0,.7)}
.hv-label::before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:#7cd4ff;margin-right:10px;vertical-align:middle}
.hv-label-t{display:inline-block;opacity:0;transform:translateY(6px)}
.hv-label-t.is-in{animation:hvlab 1.2s ease forwards}
@keyframes hvlab{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.hv-toggle{position:absolute;z-index:3;right:16px;bottom:12px;width:32px;height:32px;border-radius:999px;border:1px solid rgba(201,206,214,.55);background:rgba(10,10,10,.45);color:#c9ced6;display:grid;place-items:center;cursor:pointer;padding:0}
.hv-toggle:hover,.hv-toggle:focus-visible{border-color:#7cd4ff;color:#fff}
.hv-toggle[hidden]{display:none}
.hv-toggle .hv-i-play{display:none}
.hv-toggle[aria-pressed="true"] .hv-i-play{display:inline}
.hv-toggle[aria-pressed="true"] .hv-i-pause{display:none}
@media (max-width:860px){.hero10{padding:12px 0 4px}.hero10 .hero5-in{margin:0 12px;width:auto;height:auto;min-height:560px}.hx{padding:48px 16px 72px}}
@media (max-width:600px){.hero10 .path9{width:100%}.hx-h{letter-spacing:0}.hv-label{left:16px;letter-spacing:.24em;font-size:.95rem}}
/* Scroll reveal (classes added by reveal.js only) */
.rv{opacity:0;transform:translateY(16px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.6,.2,1)}
.rv.rv-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.hx-h,.hx-line,.hero10 .hx-sub,.hx-btns,.hv-label-t.is-in{animation:none;opacity:1;filter:none;transform:none}.hv-slide{transition:none}.hv-slide.is-on .hv-poster,.hv-slide.is-on video{animation:none}.rv{opacity:1;transform:none;transition:none}}
/* t197u: hero tabs overlaid on the top of the video */
.htabs{position:absolute;z-index:4;top:0;left:0;right:0;padding:10px 12px 26px;background:linear-gradient(180deg,rgba(236,238,241,.78) 0%,rgba(223,226,231,.5) 55%,rgba(223,226,231,0) 100%),repeating-linear-gradient(90deg,rgba(255,255,255,.18) 0 1px,rgba(0,0,0,.015) 1px 2px,transparent 2px 4px);-webkit-mask-image:linear-gradient(180deg,#000 60%,transparent);mask-image:linear-gradient(180deg,#000 60%,transparent)}
.htabs-row{list-style:none;margin:0;padding:0 2px;display:flex;gap:8px;justify-content:center;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.htabs-row::-webkit-scrollbar{display:none}
.htabs-row li{flex:0 0 auto}
.htabs-row li a.htab,.htab:link,.htab:visited{text-decoration:none;background-image:var(--brushed),var(--chrome)}
.htab{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;background:var(--brushed),var(--chrome);border:1px solid #cfd3d9;color:#0a0a0a;font-weight:700;font-size:.92rem;text-decoration:none;white-space:nowrap;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 4px 12px -6px rgba(0,0,0,.45)}
.htab:hover{text-decoration:none;border-color:#7cd4ff}
.hero10 .hx{padding-top:88px}
@media (max-width:860px){.htabs-row{justify-content:flex-start}.hero10 .hx{padding-top:96px}}

/* t595u: letter-by-letter fade-in (spans built by hero.js; delays via nth-child, no inline styles) */
.hx-h.is-split{animation:none}
.hx-c{display:inline-block;opacity:0;filter:blur(6px);transform:translateY(.12em);animation:hxc .7s cubic-bezier(.2,.7,.2,1) forwards}
.hx-sp{display:inline-block;width:.26em}
@keyframes hxc{to{opacity:1;filter:blur(0);transform:none}}
.hx-w:nth-of-type(1) .hx-c:nth-child(1){animation-delay:0.19s}.hx-w:nth-of-type(1) .hx-c:nth-child(2){animation-delay:0.23s}.hx-w:nth-of-type(1) .hx-c:nth-child(3){animation-delay:0.27s}.hx-w:nth-of-type(1) .hx-c:nth-child(4){animation-delay:0.31s}.hx-w:nth-of-type(1) .hx-c:nth-child(5){animation-delay:0.35s}.hx-w:nth-of-type(1) .hx-c:nth-child(6){animation-delay:0.39s}.hx-w:nth-of-type(1) .hx-c:nth-child(7){animation-delay:0.43s}.hx-w:nth-of-type(1) .hx-c:nth-child(8){animation-delay:0.47s}.hx-w:nth-of-type(1) .hx-c:nth-child(9){animation-delay:0.51s}.hx-w:nth-of-type(1) .hx-c:nth-child(10){animation-delay:0.55s}.hx-w:nth-of-type(1) .hx-c:nth-child(11){animation-delay:0.59s}.hx-w:nth-of-type(1) .hx-c:nth-child(12){animation-delay:0.63s}.hx-w:nth-of-type(1) .hx-c:nth-child(13){animation-delay:0.67s}.hx-w:nth-of-type(1) .hx-c:nth-child(14){animation-delay:0.71s}.hx-w:nth-of-type(1) .hx-c:nth-child(15){animation-delay:0.75s}.hx-w:nth-of-type(1) .hx-c:nth-child(16){animation-delay:0.79s}.hx-w:nth-of-type(2) .hx-c:nth-child(1){animation-delay:0.74s}.hx-w:nth-of-type(2) .hx-c:nth-child(2){animation-delay:0.78s}.hx-w:nth-of-type(2) .hx-c:nth-child(3){animation-delay:0.82s}.hx-w:nth-of-type(2) .hx-c:nth-child(4){animation-delay:0.86s}.hx-w:nth-of-type(2) .hx-c:nth-child(5){animation-delay:0.90s}.hx-w:nth-of-type(2) .hx-c:nth-child(6){animation-delay:0.94s}.hx-w:nth-of-type(2) .hx-c:nth-child(7){animation-delay:0.98s}.hx-w:nth-of-type(2) .hx-c:nth-child(8){animation-delay:1.02s}.hx-w:nth-of-type(2) .hx-c:nth-child(9){animation-delay:1.06s}.hx-w:nth-of-type(2) .hx-c:nth-child(10){animation-delay:1.10s}.hx-w:nth-of-type(2) .hx-c:nth-child(11){animation-delay:1.14s}.hx-w:nth-of-type(2) .hx-c:nth-child(12){animation-delay:1.18s}.hx-w:nth-of-type(2) .hx-c:nth-child(13){animation-delay:1.22s}.hx-w:nth-of-type(2) .hx-c:nth-child(14){animation-delay:1.26s}.hx-w:nth-of-type(2) .hx-c:nth-child(15){animation-delay:1.30s}.hx-w:nth-of-type(2) .hx-c:nth-child(16){animation-delay:1.34s}.hx-w:nth-of-type(3) .hx-c:nth-child(1){animation-delay:1.29s}.hx-w:nth-of-type(3) .hx-c:nth-child(2){animation-delay:1.33s}.hx-w:nth-of-type(3) .hx-c:nth-child(3){animation-delay:1.37s}.hx-w:nth-of-type(3) .hx-c:nth-child(4){animation-delay:1.41s}.hx-w:nth-of-type(3) .hx-c:nth-child(5){animation-delay:1.45s}.hx-w:nth-of-type(3) .hx-c:nth-child(6){animation-delay:1.49s}.hx-w:nth-of-type(3) .hx-c:nth-child(7){animation-delay:1.53s}.hx-w:nth-of-type(3) .hx-c:nth-child(8){animation-delay:1.57s}.hx-w:nth-of-type(3) .hx-c:nth-child(9){animation-delay:1.61s}.hx-w:nth-of-type(3) .hx-c:nth-child(10){animation-delay:1.65s}.hx-w:nth-of-type(3) .hx-c:nth-child(11){animation-delay:1.69s}.hx-w:nth-of-type(3) .hx-c:nth-child(12){animation-delay:1.73s}.hx-w:nth-of-type(3) .hx-c:nth-child(13){animation-delay:1.77s}.hx-w:nth-of-type(3) .hx-c:nth-child(14){animation-delay:1.81s}.hx-w:nth-of-type(3) .hx-c:nth-child(15){animation-delay:1.85s}.hx-w:nth-of-type(3) .hx-c:nth-child(16){animation-delay:1.89s}
@media (prefers-reduced-motion:reduce){.hx-c{animation:none;opacity:1;filter:none;transform:none}}
.hx-w{white-space:nowrap}

/* t213u: full-bleed hero video, edge to edge */
.hero10{padding:0}
.hero10 .hero5-in,.hero10 .wrap.hero5-in{max-width:none;width:100%;margin:0;border:0;border-radius:0;box-sizing:border-box}
@media (max-width:760px){.hero10{padding:0}.hero10 .hero5-in,.hero10 .wrap.hero5-in{margin:0;width:100%;border-radius:0}}
@media (max-width:400px){.hero10 .hx-h{font-size:clamp(1.6rem,8.6vw,2.1rem);overflow-wrap:break-word;hyphens:auto;-webkit-hyphens:auto}}
