﻿@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400..900&family=Oswald:wght@400;600;700&display=swap");
/* ============================================================
   Claude Design — Pro Academy Series 2027 top page proposal
   Scope: everything is nested under .kens-se-selection so the
   existing pages / shared styles are never affected.
   Source: this .scss compiles to claude-design.css
   (see compilerconfig.json).
   ============================================================ */
.kens-se-selection {
  /* Brand tokens */
  --cd-navy: #1a2d54;
  --cd-navy-800: #16274a;
  --cd-navy-900: #101d38;
  --cd-navy-950: #0b1526;
  --cd-red: #ce122b;
  --cd-red-bright: #e8213c;
  --cd-white: #ffffff;
  --cd-off-white: #f4f6fa;
  --cd-ink: #14203a;
  --cd-gray: #55617d;
  --cd-line: #dde3ee;
  --cd-steel: #8fa3cd;
  /* Motion / shape tokens */
  --cd-skew: -8deg;
  --cd-clip: 4.5rem;
  /* Type tokens */
  --cd-font-ja: "Noto Sans JP", sans-serif;
  --cd-font-en: "Oswald", "Noto Sans JP", sans-serif;
  font-family: var(--cd-font-ja);
  color: var(--cd-ink);
  background-color: var(--cd-white);
  overflow-x: hidden;
  /* --------------------------------------------------------
     Typography reset inside the scope
     (site.min.css sets very large global p/dd/h2 sizes —
     bring them back to a controlled scale for this design)
     -------------------------------------------------------- */
  /* --------------------------------------------------------
     Shared building blocks
     -------------------------------------------------------- */
  /* Section heading: english kicker + japanese title */
  /* Buttons */
  /* Diagonal top edge for dark sections */
  /* --------------------------------------------------------
     Fixed header + burger dropdown navigation
     Hide/show on scroll is driven by claude-design.js via the
     cd-header--hidden / cd-header--top / cd-nav-open classes.
     -------------------------------------------------------- */
  --cd-header-h: 4.25rem;
  /* Keep anchor targets clear of the fixed header */
  /* --------------------------------------------------------
     HERO
     -------------------------------------------------------- */
  /* --------------------------------------------------------
     TICKER (marquee band)
     -------------------------------------------------------- */
  /* --------------------------------------------------------
     PROGRAM
     -------------------------------------------------------- */
  /* Figures: straight-edged frame; the SVGs themselves are composed
     with motifs breaking out of an inner frame for a dynamic look,
     so the img must never be clipped here. */
  /* p.cd-statement: the extra type selector keeps this rule ahead of
     the scoped body-text reset (.kens-se-selection .claude-design p) */
  /* Stats */
  /* --------------------------------------------------------
     ABOUT THE SERIES (navy angled section)
     -------------------------------------------------------- */
  /* Last year results panel */
  /* --------------------------------------------------------
     TOURNAMENT SPEC
     -------------------------------------------------------- */
  /* --------------------------------------------------------
     ITINERARY (timeline)
     -------------------------------------------------------- */
  /* --------------------------------------------------------
     TEAM
     -------------------------------------------------------- */
  /* --------------------------------------------------------
     RECRUIT
     -------------------------------------------------------- */
  /* --------------------------------------------------------
     ROADMAP (steps)
     -------------------------------------------------------- */
  /* --------------------------------------------------------
     ENTRY (CTA section)
     -------------------------------------------------------- */
  /* --------------------------------------------------------
     MESSAGE
     -------------------------------------------------------- */
  /* --------------------------------------------------------
     Floating quick CTA (appears after scrolling — reuses the
     body.scrolled class toggled by startup.js)
     -------------------------------------------------------- */
  /* --------------------------------------------------------
     Footer (scoped restyle of the shared footer markup)
     -------------------------------------------------------- */
  /* --------------------------------------------------------
     Responsive
     -------------------------------------------------------- */
  /* --------------------------------------------------------
     Reduced motion
     -------------------------------------------------------- */
}
.kens-se-selection .claude-design p, .kens-se-selection .claude-design ul, .kens-se-selection .claude-design dd {
  font-size: clamp(0.9375rem, 0.85rem + 0.4vw, 1.125rem);
  font-weight: 500;
  line-height: 1.9;
}
.kens-se-selection .claude-design dd {
  margin-left: 0;
}
.kens-se-selection .cd-container {
  width: min(1200px, 100% - 2.5rem);
  margin-inline: auto;
}
.kens-se-selection .cd-section {
  position: relative;
  padding-block: clamp(4rem, 9vw, 7.5rem);
}
.kens-se-selection .cd-heading {
  margin-bottom: clamp(2rem, 5vw, 3.5rem);
}
.kens-se-selection .cd-heading .cd-heading__en {
  display: inline-block;
  font-family: var(--cd-font-en);
  font-size: clamp(0.8125rem, 0.7rem + 0.5vw, 1rem);
  font-weight: 600;
  letter-spacing: 0.35em;
  text-transform: uppercase;
  color: var(--cd-red);
  margin-bottom: 0.75rem;
  padding-left: 2.75rem;
  position: relative;
}
.kens-se-selection .cd-heading .cd-heading__en::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 2rem;
  height: 3px;
  background: var(--cd-red);
  transform: translateY(-50%) skewX(var(--cd-skew));
}
.kens-se-selection .cd-heading h2 {
  margin: 0;
  font-size: clamp(1.75rem, 1.3rem + 2.4vw, 3.25rem);
  font-weight: 900;
  font-style: oblique;
  letter-spacing: -0.02em;
  line-height: 1.15;
}
.kens-se-selection .cd-heading.cd-heading--light .cd-heading__en {
  color: var(--cd-red-bright);
}
.kens-se-selection .cd-heading.cd-heading--light h2 {
  color: var(--cd-white);
}
.kens-se-selection .cd-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  min-height: 3.5rem;
  padding: 0.875rem 2.25rem;
  font-family: var(--cd-font-ja);
  font-size: clamp(0.9375rem, 0.9rem + 0.2vw, 1.0625rem);
  font-weight: 700;
  text-decoration: none;
  color: var(--cd-white);
  background: var(--cd-red);
  border: 2px solid var(--cd-red);
  transform: skewX(var(--cd-skew));
  transition: background-color 250ms ease, border-color 250ms ease, color 250ms ease, translate 250ms ease;
}
.kens-se-selection .cd-btn > span {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  transform: skewX(calc(var(--cd-skew) * -1));
}
.kens-se-selection .cd-btn > span::after {
  content: "";
  width: 0.625rem;
  height: 0.625rem;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
  transform: rotate(45deg);
  transition: transform 250ms ease;
}
.kens-se-selection .cd-btn:hover, .kens-se-selection .cd-btn:focus-visible {
  background: var(--cd-red-bright);
  border-color: var(--cd-red-bright);
  color: var(--cd-white);
  translate: 0 -2px;
}
.kens-se-selection .cd-btn:hover > span::after {
  transform: rotate(45deg) translate(2px, -2px);
}
.kens-se-selection .cd-btn.cd-btn--ghost {
  background: transparent;
  border-color: var(--cd-white);
}
.kens-se-selection .cd-btn.cd-btn--ghost:hover, .kens-se-selection .cd-btn.cd-btn--ghost:focus-visible {
  background: var(--cd-white);
  border-color: var(--cd-white);
  color: var(--cd-navy);
}
.kens-se-selection .cd-btn.cd-btn--navy {
  background: var(--cd-navy);
  border-color: var(--cd-navy);
}
.kens-se-selection .cd-btn.cd-btn--navy:hover, .kens-se-selection .cd-btn.cd-btn--navy:focus-visible {
  background: var(--cd-navy-900);
  border-color: var(--cd-navy-900);
}
.kens-se-selection a:focus-visible,
.kens-se-selection button:focus-visible {
  outline: 3px solid var(--cd-red-bright);
  outline-offset: 3px;
}
.kens-se-selection .cd-section--angled {
  clip-path: polygon(0 var(--cd-clip), 100% 0, 100% calc(100% - var(--cd-clip)), 0 100%);
  padding-block: calc(clamp(4rem, 9vw, 7.5rem) + var(--cd-clip));
  margin-block: calc(var(--cd-clip) * -0.5);
}
.kens-se-selection [id] {
  scroll-margin-top: calc(var(--cd-header-h) + 1.25rem);
}
.kens-se-selection .cd-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9900;
  color: var(--cd-white);
  background: rgba(11, 21, 38, 0.92);
  backdrop-filter: blur(8px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  transform: translateY(0);
  transition: transform 300ms cubic-bezier(0.22, 1, 0.36, 1), background-color 250ms ease, border-color 250ms ease;
  /* Slid out of view (scrolling down) */
  /* At the very top of the page: blend into the hero */
  /* Burger icon: 3 bars → X */
  /* Dropdown panel */
}
.kens-se-selection .cd-header.cd-header--hidden {
  transform: translateY(-100%);
}
.kens-se-selection .cd-header.cd-header--top:not(.cd-nav-open) {
  background: transparent;
  border-bottom-color: transparent;
  backdrop-filter: none;
}
.kens-se-selection .cd-header .cd-header__bar {
  height: var(--cd-header-h);
  width: min(1200px, 100% - 2.5rem);
  margin-inline: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.kens-se-selection .cd-header .cd-header__brand {
  font-family: var(--cd-font-en);
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--cd-white);
  position: relative;
  display: flex;
  align-items: center;
  column-gap: 0.5rem;
}
.kens-se-selection .cd-header .cd-header__brand em {
  color: var(--cd-red-bright);
}
.kens-se-selection .cd-header .cd-header__brand::before {
  content: "";
  display: inline-block;
  background-image: url(/_images/kens-se-symbol.svg);
  background-repeat: no-repeat;
  height: 2rem;
  width: 2rem;
}
.kens-se-selection .cd-header .cd-header__burger {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  min-height: 2.75rem;
  padding: 0.5rem 0.75rem;
  background: transparent;
  border: 0;
  color: var(--cd-white);
  cursor: pointer;
}
.kens-se-selection .cd-header .cd-header__burger .cd-header__burger-label {
  font-family: var(--cd-font-en);
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.25em;
  text-transform: uppercase;
}
.kens-se-selection .cd-header .cd-burger {
  position: relative;
  display: block;
  width: 1.5rem;
  height: 1.125rem;
}
.kens-se-selection .cd-header .cd-burger i {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background: currentColor;
  transition: transform 250ms ease, opacity 200ms ease, top 250ms ease, bottom 250ms ease;
}
.kens-se-selection .cd-header .cd-burger i:nth-child(1) {
  top: 0;
}
.kens-se-selection .cd-header .cd-burger i:nth-child(2) {
  top: calc(50% - 1px);
}
.kens-se-selection .cd-header .cd-burger i:nth-child(3) {
  top: auto;
  bottom: 0;
}
.kens-se-selection .cd-header.cd-nav-open .cd-burger i:nth-child(1) {
  top: calc(50% - 1px);
  transform: rotate(45deg);
}
.kens-se-selection .cd-header.cd-nav-open .cd-burger i:nth-child(2) {
  opacity: 0;
}
.kens-se-selection .cd-header.cd-nav-open .cd-burger i:nth-child(3) {
  bottom: calc(50% - 1px);
  transform: rotate(-45deg);
}
.kens-se-selection .cd-header .cd-nav {
  position: absolute;
  top: 100%;
  right: max((100% - 1200px) / 2, 1.25rem);
  min-width: 20rem;
  max-height: calc(100dvh - var(--cd-header-h) - 1rem);
  overflow-y: auto;
  background: var(--cd-navy-950);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-top: 3px solid var(--cd-red);
  box-shadow: 0 1.25rem 2.5rem rgba(11, 21, 38, 0.45);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-0.625rem);
  transition: opacity 250ms ease, transform 250ms cubic-bezier(0.22, 1, 0.36, 1), visibility 0s linear 250ms;
}
.kens-se-selection .cd-header.cd-nav-open .cd-nav {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  transition-delay: 0s;
}
.kens-se-selection .cd-header .cd-nav__list {
  list-style: none;
  margin: 0;
  padding: 0.5rem 0;
}
.kens-se-selection .cd-header .cd-nav__list li + li {
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}
.kens-se-selection .cd-header .cd-nav__list a {
  display: block;
  padding: 0.75rem 1.5rem;
  font-size: 0.9375rem;
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none;
  color: var(--cd-white);
  border-left: 3px solid transparent;
  transition: background-color 200ms ease, border-color 200ms ease, padding-left 200ms ease;
}
.kens-se-selection .cd-header .cd-nav__list a:hover, .kens-se-selection .cd-header .cd-nav__list a:focus-visible {
  background: rgba(255, 255, 255, 0.06);
  border-left-color: var(--cd-red-bright);
  padding-left: 1.75rem;
}
.kens-se-selection .cd-header .cd-nav__list .cd-nav__en {
  display: block;
  font-family: var(--cd-font-en);
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--cd-steel);
  margin-bottom: 0.125rem;
}
.kens-se-selection .cd-header .cd-nav__list .cd-nav__cta {
  margin-top: 0.5rem;
  border-top: 0;
}
.kens-se-selection .cd-header .cd-nav__list .cd-nav__cta a {
  background: var(--cd-red);
  border-left-color: var(--cd-red);
}
.kens-se-selection .cd-header .cd-nav__list .cd-nav__cta a .cd-nav__en {
  color: rgba(255, 255, 255, 0.75);
}
.kens-se-selection .cd-header .cd-nav__list .cd-nav__cta a:hover, .kens-se-selection .cd-header .cd-nav__list .cd-nav__cta a:focus-visible {
  background: var(--cd-red-bright);
  border-left-color: var(--cd-red-bright);
}
.kens-se-selection .cd-hero {
  position: relative;
  min-height: 100svh;
  display: flex;
  align-items: center;
  overflow: hidden;
  background-color: var(--cd-navy-950);
  color: var(--cd-white);
  padding-block: 6rem 6.5rem;
  /* Decorative diagonal speed lines */
}
.kens-se-selection .cd-hero .cd-hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.kens-se-selection .cd-hero .cd-hero__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  will-change: transform;
}
.kens-se-selection .cd-hero .cd-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(100deg, rgba(11, 21, 38, 0.92) 0%, rgba(26, 45, 84, 0.55) 55%, rgba(11, 21, 38, 0.35) 100%);
}
.kens-se-selection .cd-hero .cd-hero__slash {
  position: absolute;
  z-index: 2;
  height: 200vh;
  width: clamp(3rem, 8vw, 8rem);
  top: -50vh;
  transform: rotate(24deg);
  pointer-events: none;
}
.kens-se-selection .cd-hero .cd-hero__slash.cd-hero__slash--red {
  right: 12%;
  background: linear-gradient(to bottom, transparent, rgba(206, 18, 43, 0.55), transparent);
}
.kens-se-selection .cd-hero .cd-hero__slash.cd-hero__slash--white {
  right: 4%;
  width: clamp(0.75rem, 2vw, 1.5rem);
  background: linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.25), transparent);
}
.kens-se-selection .cd-hero .cd-hero__inner {
  position: relative;
  z-index: 3;
  width: min(1200px, 100% - 2.5rem);
  margin-inline: auto;
}
.kens-se-selection .cd-hero .cd-hero__kicker {
  font-family: var(--cd-font-en);
  font-size: clamp(0.8125rem, 0.7rem + 0.5vw, 1.0625rem);
  font-weight: 600;
  letter-spacing: 0.4em;
  text-transform: uppercase;
  color: var(--cd-steel);
  margin-bottom: 1.25rem;
}
.kens-se-selection .cd-hero .cd-hero__kicker strong {
  color: var(--cd-red-bright);
  font-weight: 700;
}
.kens-se-selection .cd-hero .cd-hero__title {
  margin: 0 0 1.75rem;
  font-weight: 900;
  line-height: 1.02;
  letter-spacing: -0.04em;
}
.kens-se-selection .cd-hero .cd-hero__title span {
  display: block;
  width: fit-content;
  max-width: 100%;
  font-style: oblique;
  overflow-wrap: anywhere;
}
.kens-se-selection .cd-hero .cd-hero__title .cd-hero__title-ja {
  font-size: clamp(2.25rem, 1rem + 6vw, 5.5rem);
  padding: 0.05em 0.35em;
  transform: skewX(var(--cd-skew));
  position: relative;
}
.kens-se-selection .cd-hero .cd-hero__title .cd-hero__title-ja::before {
  content: "";
  display: block;
  position: absolute;
  background: var(--cd-red);
  z-index: -1;
  top: 0;
  bottom: -0.5rem;
  left: 0;
  right: 0;
  transform: skewX(var(--cd-skew));
}
.kens-se-selection .cd-hero .cd-hero__title .cd-hero__title-en {
  margin-top: 0.4rem;
  margin-left: clamp(0rem, 4vw, 4.5rem);
  font-family: var(--cd-font-en);
  font-size: clamp(2.75rem, 1.2rem + 7.5vw, 7rem);
  text-transform: uppercase;
  transform: skewX(var(--cd-skew));
  -webkit-text-stroke: 0;
}
.kens-se-selection .cd-hero .cd-hero__title .cd-hero__title-en em {
  color: transparent;
  -webkit-text-stroke: 2px rgba(255, 255, 255, 0.85);
}
.kens-se-selection .cd-hero .cd-hero__lead {
  margin: 0 0 2.25rem;
  font-size: clamp(1.0625rem, 0.9rem + 0.9vw, 1.625rem);
  font-weight: 700;
  line-height: 1.7;
}
.kens-se-selection .cd-hero .cd-hero__lead strong {
  color: var(--cd-red-bright);
  background: linear-gradient(transparent 65%, rgba(206, 18, 43, 0.35) 65%);
  font-weight: 900;
}
.kens-se-selection .cd-hero .cd-hero__cta {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 1.25rem;
  margin-bottom: 2.5rem;
}
.kens-se-selection .cd-hero .cd-hero__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.kens-se-selection .cd-hero .cd-hero__meta li {
  font-family: var(--cd-font-en);
  font-size: clamp(0.8125rem, 0.75rem + 0.3vw, 1rem);
  font-weight: 600;
  letter-spacing: 0.12em;
  padding: 0.375rem 1rem;
  border: 1px solid rgba(255, 255, 255, 0.45);
  transform: skewX(var(--cd-skew));
  white-space: nowrap;
}
.kens-se-selection .cd-hero .cd-hero__scroll {
  position: absolute;
  z-index: 3;
  left: 50%;
  bottom: 1.5rem;
  transform: translateX(-50%);
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  color: var(--cd-steel);
  font-family: var(--cd-font-en);
  font-size: 0.6875rem;
  letter-spacing: 0.35em;
  text-transform: uppercase;
  text-decoration: none;
}
.kens-se-selection .cd-hero .cd-hero__scroll::after {
  content: "";
  width: 1px;
  height: 3rem;
  background: linear-gradient(to bottom, var(--cd-steel), transparent);
  animation: cd-scroll-cue 2s ease-in-out infinite;
  transform-origin: top;
}
.kens-se-selection .cd-ticker {
  position: relative;
  z-index: 4;
  background: var(--cd-red);
  color: var(--cd-white);
  transform: rotate(-1.2deg) scale(1.02);
  margin-block: -0.75rem;
  overflow: hidden;
  user-select: none;
}
.kens-se-selection .cd-ticker .cd-ticker__track {
  display: flex;
  width: max-content;
  animation: cd-marquee 28s linear infinite;
}
.kens-se-selection .cd-ticker .cd-ticker__group {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  padding-block: 0.75rem;
}
.kens-se-selection .cd-ticker .cd-ticker__group span {
  font-family: var(--cd-font-en);
  font-size: clamp(1rem, 0.9rem + 0.6vw, 1.5rem);
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  white-space: nowrap;
  padding-inline: 1.25rem;
}
.kens-se-selection .cd-ticker .cd-ticker__group span::after {
  content: "◆";
  font-size: 0.6em;
  vertical-align: 0.2em;
  margin-left: 2.5rem;
  opacity: 0.7;
}
.kens-se-selection .cd-program__grid {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: clamp(2rem, 5vw, 4.5rem);
  align-items: center;
  margin-bottom: clamp(3rem, 6vw, 5rem);
}
.kens-se-selection .cd-figure {
  position: relative;
  margin: 0;
}
.kens-se-selection .cd-figure img {
  display: block;
  width: 100%;
  height: auto;
}
.kens-se-selection .cd-figure::after {
  content: "";
  position: absolute;
  inset: 2.25rem -0.75rem -0.75rem 2.25rem;
  z-index: -1;
  background: repeating-linear-gradient(-45deg, var(--cd-line), var(--cd-line) 2px, transparent 2px, transparent 10px);
}
.kens-se-selection p.cd-statement {
  margin: 0 0 clamp(3rem, 6vw, 5rem);
  /* One size below the h2 section titles (h2: 1.75rem → 3.25rem) */
  font-size: clamp(1.5rem, 1.15rem + 2vw, 2.75rem);
  font-weight: 900;
  font-style: oblique;
  line-height: 1.35;
  letter-spacing: -0.01em;
  color: var(--cd-navy);
}
.kens-se-selection p.cd-statement em {
  font-style: oblique;
  color: var(--cd-red);
}
.kens-se-selection .cd-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: var(--cd-line);
  border: 1px solid var(--cd-line);
  list-style: none;
  margin: 0;
  padding: 0;
}
.kens-se-selection .cd-stats li {
  background: var(--cd-white);
  padding: clamp(1.25rem, 3vw, 2rem) 1rem;
  text-align: center;
}
.kens-se-selection .cd-stats .cd-stat__num {
  display: block;
  font-family: var(--cd-font-en);
  font-size: clamp(2.25rem, 1.5rem + 3vw, 4rem);
  font-weight: 700;
  line-height: 1;
  color: var(--cd-navy);
}
.kens-se-selection .cd-stats .cd-stat__num small {
  font-size: 0.45em;
  font-weight: 600;
  color: var(--cd-red);
  margin-left: 0.25rem;
}
.kens-se-selection .cd-stats .cd-stat__label {
  display: block;
  margin-top: 0.5rem;
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: var(--cd-gray);
}
.kens-se-selection .cd-series {
  background: linear-gradient(115deg, var(--cd-navy-950) 0%, var(--cd-navy) 60%, var(--cd-navy-800) 100%);
  color: var(--cd-white);
}
.kens-se-selection .cd-series::before {
  content: "";
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(-60deg, transparent 0, transparent 120px, rgba(255, 255, 255, 0.03) 120px, rgba(255, 255, 255, 0.03) 124px);
  pointer-events: none;
}
.kens-se-selection .cd-series .cd-series__lead {
  max-width: 56rem;
}
.kens-se-selection .cd-series .cd-series__lead p {
  color: rgba(255, 255, 255, 0.88);
}
.kens-se-selection .cd-feature-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
  list-style: none;
  margin: clamp(2.5rem, 5vw, 4rem) 0;
  padding: 0;
}
.kens-se-selection .cd-feature-grid li {
  position: relative;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-top: 3px solid var(--cd-red-bright);
  padding: 1.75rem 1.5rem 1.5rem;
}
.kens-se-selection .cd-feature-grid .cd-feature__num {
  font-family: var(--cd-font-en);
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.3em;
  color: var(--cd-red-bright);
}
.kens-se-selection .cd-feature-grid h4 {
  margin: 0.625rem 0 0.5rem;
  font-size: clamp(1.0625rem, 1rem + 0.4vw, 1.25rem);
  font-weight: 800;
  font-style: normal;
  color: var(--cd-white);
  line-height: 1.5;
}
.kens-se-selection .cd-feature-grid p {
  margin: 0;
  font-size: 0.9375rem;
  color: rgba(255, 255, 255, 0.75);
  line-height: 1.8;
}
.kens-se-selection .cd-lastyear {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: clamp(1.5rem, 4vw, 3rem);
  align-items: center;
  background: rgba(11, 21, 38, 0.6);
  border: 1px solid rgba(255, 255, 255, 0.14);
  padding: clamp(1.5rem, 4vw, 2.5rem);
}
.kens-se-selection .cd-lastyear h3 {
  margin: 0;
  font-family: var(--cd-font-en);
  font-size: clamp(1.25rem, 1rem + 1vw, 2rem);
  font-weight: 700;
  font-style: normal;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--cd-white);
  border-right: 3px solid var(--cd-red-bright);
  padding-right: clamp(1.5rem, 4vw, 3rem);
}
.kens-se-selection .cd-lastyear h3 span {
  display: block;
  font-family: var(--cd-font-ja);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.2em;
  color: var(--cd-steel);
  margin-top: 0.375rem;
}
.kens-se-selection .cd-lastyear dl {
  margin: 0;
}
.kens-se-selection .cd-lastyear dt {
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  color: var(--cd-steel);
}
.kens-se-selection .cd-lastyear dd {
  margin: 0.25rem 0 1rem;
  font-size: clamp(1rem, 0.95rem + 0.4vw, 1.25rem);
  font-weight: 700;
  color: var(--cd-white);
}
.kens-se-selection .cd-lastyear dd:last-child {
  margin-bottom: 0;
}
.kens-se-selection .cd-outline__grid {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: clamp(2rem, 5vw, 4rem);
  align-items: start;
}
.kens-se-selection .cd-outline__grid .cd-figure {
  position: sticky;
  top: 6rem;
}
.kens-se-selection .cd-spec {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.25rem;
  margin: 0;
}
.kens-se-selection .cd-spec > div {
  border-left: 3px solid var(--cd-red);
  background: var(--cd-off-white);
  padding: 1.25rem 1.375rem;
}
.kens-se-selection .cd-spec > div.cd-spec--wide {
  grid-column: 1/-1;
}
.kens-se-selection .cd-spec dt {
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: var(--cd-gray);
  margin-bottom: 0.375rem;
}
.kens-se-selection .cd-spec dd {
  margin: 0;
  font-size: clamp(1rem, 0.95rem + 0.4vw, 1.25rem);
  font-weight: 800;
  color: var(--cd-navy);
  line-height: 1.6;
}
.kens-se-selection .cd-spec dd .cd-note {
  display: block;
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--cd-gray);
  margin-top: 0.25rem;
}
.kens-se-selection .cd-schedule {
  background: var(--cd-off-white);
}
.kens-se-selection .cd-timeline {
  list-style: none;
  margin: 0;
  padding: 0;
  max-width: 46rem;
}
.kens-se-selection .cd-timeline li {
  position: relative;
  display: grid;
  grid-template-columns: 9.5rem 1fr;
  gap: 1.5rem;
  padding: 0 0 1.75rem 1.75rem;
}
.kens-se-selection .cd-timeline li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.4375rem;
  width: 0.875rem;
  height: 0.875rem;
  background: var(--cd-white);
  border: 3px solid var(--cd-navy);
  transform: rotate(45deg);
}
.kens-se-selection .cd-timeline li::after {
  content: "";
  position: absolute;
  left: 0.4rem;
  top: 1.625rem;
  bottom: 0.25rem;
  width: 2px;
  background: var(--cd-line);
}
.kens-se-selection .cd-timeline li:last-child::after {
  display: none;
}
.kens-se-selection .cd-timeline li.cd-timeline--match::before {
  background: var(--cd-red);
  border-color: var(--cd-red);
}
.kens-se-selection .cd-timeline li.cd-timeline--match .cd-timeline__body {
  color: var(--cd-red);
  font-weight: 800;
}
.kens-se-selection .cd-timeline .cd-timeline__date {
  font-family: var(--cd-font-en);
  font-weight: 700;
  font-size: 1rem;
  letter-spacing: 0.05em;
  color: var(--cd-navy);
  line-height: 1.7;
}
.kens-se-selection .cd-timeline .cd-timeline__date small {
  display: block;
  font-family: var(--cd-font-ja);
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--cd-gray);
}
.kens-se-selection .cd-timeline .cd-timeline__body {
  font-size: clamp(0.9375rem, 0.9rem + 0.3vw, 1.0625rem);
  font-weight: 600;
  line-height: 1.7;
}
.kens-se-selection .cd-timeline .cd-badge {
  display: inline-block;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  color: var(--cd-white);
  background: var(--cd-red);
  padding: 0.125rem 0.625rem;
  margin-left: 0.5rem;
  transform: skewX(var(--cd-skew));
  vertical-align: 0.125em;
}
.kens-se-selection .cd-team__grid {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: clamp(2rem, 5vw, 4.5rem);
  align-items: center;
}
.kens-se-selection .cd-team__story {
  margin-top: clamp(2.5rem, 5vw, 4rem);
  border-top: 1px solid var(--cd-line);
  padding-top: clamp(2rem, 4vw, 3rem);
}
.kens-se-selection .cd-team__story h3 {
  font-size: clamp(1.25rem, 1.1rem + 0.8vw, 1.75rem);
  font-weight: 900;
  font-style: oblique;
  color: var(--cd-navy);
  margin-bottom: 1.25rem;
}
.kens-se-selection .cd-team__story h3::before {
  content: "";
  display: inline-block;
  width: 0.625rem;
  height: 1em;
  background: var(--cd-red);
  transform: skewX(var(--cd-skew)) translateY(0.15em);
  margin-right: 0.75rem;
}
.kens-se-selection .cd-recruit {
  background: var(--cd-off-white);
}
.kens-se-selection .cd-recruit__grid {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: clamp(2rem, 5vw, 4rem);
  align-items: start;
}
.kens-se-selection .cd-steps {
  list-style: none;
  counter-reset: cd-step;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
}
.kens-se-selection .cd-steps li {
  counter-increment: cd-step;
  position: relative;
  background: var(--cd-white);
  border: 1px solid var(--cd-line);
  padding: 3.25rem 1.5rem 1.5rem;
  overflow: hidden;
}
.kens-se-selection .cd-steps li::before {
  content: "0" counter(cd-step);
  position: absolute;
  top: -0.75rem;
  right: 0.5rem;
  font-family: var(--cd-font-en);
  font-size: 4.5rem;
  font-weight: 700;
  line-height: 1;
  color: transparent;
  -webkit-text-stroke: 2px var(--cd-line);
}
.kens-se-selection .cd-steps li::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 3rem;
  height: 3px;
  background: var(--cd-red);
}
.kens-se-selection .cd-steps h3 {
  font-size: 1.0625rem;
  font-weight: 800;
  font-style: normal;
  color: var(--cd-navy);
  line-height: 1.5;
  margin-bottom: 0.375rem;
}
.kens-se-selection .cd-steps .cd-step__period {
  display: block;
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: var(--cd-red);
  margin-bottom: 0.625rem;
}
.kens-se-selection .cd-steps p {
  margin: 0;
  font-size: 0.9375rem;
  color: var(--cd-gray);
  line-height: 1.8;
}
.kens-se-selection .cd-entry {
  background: linear-gradient(115deg, var(--cd-navy-950) 0%, var(--cd-navy) 55%, #401227 100%);
  color: var(--cd-white);
  text-align: center;
}
.kens-se-selection .cd-entry::before {
  content: "ENTRY";
  position: absolute;
  inset-inline: 0;
  top: 50%;
  transform: translateY(-50%) skewX(var(--cd-skew));
  font-family: var(--cd-font-en);
  font-size: clamp(6rem, 22vw, 20rem);
  font-weight: 700;
  line-height: 1;
  text-align: center;
  color: transparent;
  -webkit-text-stroke: 1px rgba(255, 255, 255, 0.07);
  pointer-events: none;
}
.kens-se-selection .cd-entry .cd-container {
  position: relative;
}
.kens-se-selection .cd-entry .cd-heading {
  margin-bottom: 1.5rem;
}
.kens-se-selection .cd-entry .cd-heading .cd-heading__en {
  padding-left: 0;
}
.kens-se-selection .cd-entry .cd-heading .cd-heading__en::before {
  display: none;
}
.kens-se-selection .cd-entry .cd-entry__status {
  display: inline-block;
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  color: var(--cd-white);
  border: 1px solid rgba(255, 255, 255, 0.5);
  padding: 0.375rem 1.25rem;
  transform: skewX(var(--cd-skew));
  margin-bottom: 2rem;
}
.kens-se-selection .cd-entry .cd-entry__date {
  margin: 0 0 0.75rem;
  font-family: var(--cd-font-en);
  font-size: clamp(2.5rem, 1.5rem + 5vw, 5.5rem);
  font-weight: 700;
  font-style: oblique;
  line-height: 1;
  letter-spacing: 0.02em;
}
.kens-se-selection .cd-entry .cd-entry__date small {
  font-size: 0.35em;
  font-weight: 600;
  color: var(--cd-red-bright);
  margin-left: 0.5rem;
  letter-spacing: 0.2em;
}
.kens-se-selection .cd-entry .cd-entry__label {
  font-size: clamp(1.0625rem, 1rem + 0.6vw, 1.5rem);
  font-weight: 800;
  margin-bottom: 1.75rem;
}
.kens-se-selection .cd-entry .cd-entry__text {
  max-width: 38rem;
  margin-inline: auto;
  color: rgba(255, 255, 255, 0.82);
  margin-bottom: 2.25rem;
}
.kens-se-selection .cd-entry .cd-entry__cta {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1rem 1.25rem;
}
.kens-se-selection .cd-message__quote {
  position: relative;
  max-width: 52rem;
  margin: 0;
  padding: clamp(1.5rem, 4vw, 2.5rem) clamp(1.5rem, 4vw, 3rem);
  background: var(--cd-off-white);
  border-left: 4px solid var(--cd-red);
}
.kens-se-selection .cd-message__quote::before {
  content: "“";
  position: absolute;
  top: -1.5rem;
  left: 1rem;
  font-family: Georgia, serif;
  font-size: 6rem;
  line-height: 1;
  color: var(--cd-red);
  opacity: 0.35;
}
.kens-se-selection .cd-message__quote footer {
  margin-top: 1.75rem;
  font-weight: 800;
  color: var(--cd-navy);
}
.kens-se-selection .cd-message__quote footer span {
  display: block;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--cd-gray);
  margin-top: 0.125rem;
}
.kens-se-selection .cd-fab {
  position: fixed;
  z-index: 9800;
  right: 1rem;
  bottom: 1rem;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  min-height: 3.25rem;
  padding: 0.75rem 1.5rem;
  background: var(--cd-red);
  color: var(--cd-white);
  font-size: 0.9375rem;
  font-weight: 800;
  text-decoration: none;
  box-shadow: 0 0.5rem 1.5rem rgba(11, 21, 38, 0.35);
  transform: skewX(var(--cd-skew)) translateY(6rem);
  opacity: 0;
  transition: transform 350ms cubic-bezier(0.22, 1, 0.36, 1), opacity 350ms ease, background-color 250ms ease;
}
.kens-se-selection .cd-fab > span {
  display: inline-block;
  transform: skewX(calc(var(--cd-skew) * -1));
}
.kens-se-selection .cd-fab:hover, .kens-se-selection .cd-fab:focus-visible {
  background: var(--cd-red-bright);
  color: var(--cd-white);
}
.kens-se-selection.scrolled .cd-fab {
  transform: skewX(var(--cd-skew)) translateY(0);
  opacity: 1;
}
.kens-se-selection .cd-footer {
  background: var(--cd-navy-950);
  color: var(--cd-steel);
  border-top: 3px solid var(--cd-red);
  padding: 2rem 0;
  font-size: 0.875rem;
}
.kens-se-selection .cd-footer a {
  color: var(--cd-white);
}
@media (max-width: 991.98px) {
  .kens-se-selection .cd-program__grid,
  .kens-se-selection .cd-outline__grid,
  .kens-se-selection .cd-team__grid,
  .kens-se-selection .cd-recruit__grid {
    grid-template-columns: 1fr;
  }
  .kens-se-selection .cd-outline__grid .cd-figure {
    position: static;
  }
  .kens-se-selection .cd-feature-grid,
  .kens-se-selection .cd-steps {
    grid-template-columns: repeat(2, 1fr);
  }
  .kens-se-selection .cd-stats {
    grid-template-columns: repeat(2, 1fr);
  }
  .kens-se-selection .cd-lastyear {
    grid-template-columns: 1fr;
  }
  .kens-se-selection .cd-lastyear h3 {
    border-right: none;
    border-bottom: 3px solid var(--cd-red-bright);
    padding-right: 0;
    padding-bottom: 1rem;
  }
}
@media (max-width: 575.98px) {
  .kens-se-selection {
    --cd-clip: 2.5rem;
  }
  .kens-se-selection .cd-feature-grid,
  .kens-se-selection .cd-steps,
  .kens-se-selection .cd-spec {
    grid-template-columns: 1fr;
  }
  .kens-se-selection .cd-timeline li {
    grid-template-columns: 1fr;
    gap: 0.25rem;
  }
  .kens-se-selection .cd-hero__cta .cd-btn {
    width: 100%;
  }
  .kens-se-selection .cd-fab {
    right: 0.75rem;
    bottom: 0.75rem;
    left: 0.75rem;
    justify-content: center;
  }
  .kens-se-selection .cd-header .cd-nav {
    left: 0;
    right: 0;
    min-width: 0;
    border-left: 0;
    border-right: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .kens-se-selection .cd-ticker__track {
    animation: none;
  }
  .kens-se-selection .cd-hero__scroll::after {
    animation: none;
    transform: scaleY(1);
  }
  .kens-se-selection .cd-fab {
    transition: opacity 350ms ease;
  }
  .kens-se-selection .cd-header,
  .kens-se-selection .cd-header .cd-nav,
  .kens-se-selection .cd-header .cd-burger i,
  .kens-se-selection .cd-header .cd-nav__list a {
    transition: none;
  }
}

/* Smooth anchor scrolling only while this page is loaded */
html:has(.kens-se-selection) {
  scroll-behavior: smooth;
  overflow-x: clip;
}
@media (prefers-reduced-motion: reduce) {
  html:has(.kens-se-selection) {
    scroll-behavior: auto;
  }
}

@keyframes cd-scroll-cue {
  0% {
    transform: scaleY(0);
  }
  50% {
    transform: scaleY(1);
  }
  100% {
    transform: scaleY(0);
  }
}
@keyframes cd-marquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}
