:root{--ink:#090a0b;--ink2:#111318;--paper:#f3f1ea;--yellow:#81D8D0;--muted:#a3a6ae;--line:rgba(255,255,255,.14);--darkline:rgba(9,10,11,.18)}
*{box-sizing:border-box}html{background:var(--ink);scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-family:Inter,"Noto Sans KR",Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}.wrap{width:min(1500px,calc(100% - 72px));margin:auto}.mono{font-family:"DM Mono",Consolas,monospace;letter-spacing:.12em}.topnav{position:sticky;z-index:50;top:0;height:78px;display:flex;align-items:center;padding:0 36px;background:rgba(9,10,11,.88);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.logo{display:flex;align-items:center;gap:11px;font-weight:800;letter-spacing:.1em}.logo-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:var(--yellow);color:var(--ink);font-size:20px}.logo em{color:var(--yellow);font-style:normal}.toplinks{position:absolute;left:50%;transform:translateX(-50%);display:flex;gap:30px;color:#b9bbc1;font-size:13px}.toplinks a{position:relative;padding:28px 0}.toplinks a.active,.toplinks a:hover{color:#fff}.toplinks a.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--yellow)}.launch{margin-left:auto;padding:11px 18px;border:1px solid rgba(129,216,208,.65);border-radius:999px;color:var(--yellow);font-size:13px;font-weight:800}.launch:hover{background:var(--yellow);color:var(--ink)}
.page-wipe{position:fixed;z-index:999;inset:0;background:var(--yellow);pointer-events:none;transform:translateX(-100%)}body.entering .page-wipe{animation:wipeOut .62s cubic-bezier(.76,0,.24,1) both}body.leaving .page-wipe{transform:translateX(100%);animation:wipeIn .54s cubic-bezier(.76,0,.24,1) both}@keyframes wipeOut{from{transform:translateX(0)}to{transform:translateX(-100%)}}@keyframes wipeIn{from{transform:translateX(100%)}to{transform:translateX(0)}}
.subhero{position:relative;min-height:690px;display:grid;align-items:end;padding:120px 0 70px;overflow:hidden;border-bottom:1px solid var(--line)}.subhero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);background-size:8vw 8vw;mask-image:linear-gradient(#000,transparent 90%)}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end}.eyebrow{display:flex;align-items:center;gap:13px;color:#aeb1b9;font:500 12px "DM Mono",monospace;letter-spacing:.12em}.eyebrow:before{content:"";width:30px;height:1px;background:var(--yellow)}.subhero h1{margin:28px 0 0;font-size:clamp(72px,10vw,158px);line-height:.84;letter-spacing:-.075em;font-weight:600}.subhero h1 span{display:block;color:#686b73}.hero-side{padding-bottom:9px}.hero-side p{margin:0 0 30px;color:#b6b8bf;font-size:20px;line-height:1.7}.action{display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:15px 21px;border:1px solid var(--line);border-radius:999px;font-size:14px}.action.yellow{background:var(--yellow);border-color:var(--yellow);color:var(--ink);font-weight:800}.action:hover{transform:translateY(-2px)}
.core{padding:120px 0}.section-head{display:grid;grid-template-columns:.65fr 1.35fr;gap:60px;margin-bottom:55px}.section-head .count{color:var(--yellow);font:500 12px "DM Mono",monospace;letter-spacing:.12em}.section-head h2{margin:0;font-size:clamp(48px,6vw,92px);line-height:.92;letter-spacing:-.055em;font-weight:600}.core-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.core-card{position:relative;min-height:560px;padding:34px;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#0d0f12}.core-card:nth-child(2){background:var(--paper);color:var(--ink)}.core-card:nth-child(3){background:var(--yellow);color:var(--ink)}.card-num{font:500 11px "DM Mono",monospace;letter-spacing:.12em;opacity:.65}.core-card h3{position:relative;z-index:2;margin:300px 0 16px;font-size:clamp(42px,4vw,66px);line-height:1.04;letter-spacing:-.055em}.core-card p{position:relative;z-index:2;margin:0;max-width:390px;line-height:1.7;opacity:.72}.core-card .more{position:absolute;z-index:3;left:34px;bottom:32px;padding-bottom:7px;border-bottom:1px solid currentColor;font-size:13px}.visual{position:absolute;inset:0;pointer-events:none}.visual.bolt:before{content:"";position:absolute;right:16%;top:12%;width:120px;height:210px;background:var(--yellow);clip-path:polygon(58% 0,8% 55%,48% 55%,36% 100%,92% 43%,55% 43%);filter:drop-shadow(0 0 20px rgba(129,216,208,.24))}.visual.zone:before,.visual.zone:after{content:"";position:absolute;border:1px solid rgba(9,10,11,.35);border-radius:50%}.visual.zone:before{width:270px;height:270px;right:-25px;top:55px}.visual.zone:after{width:150px;height:150px;right:170px;top:190px}.visual.zone i{position:absolute;right:74px;top:145px;font-size:84px;font-weight:800;font-style:normal}.visual.flow{display:flex;align-items:center;justify-content:center;gap:8px;padding:30px 35px 220px}.visual.flow i{display:block;width:5px;height:var(--h);background:var(--c);position:relative}.visual.flow i:nth-child(even){transform:translateY(36px)}.visual.flow i:nth-child(3n){transform:translateY(-25px)}.visual.flow i:after{content:"";position:absolute;left:50%;top:0;width:11px;height:11px;border-radius:50%;background:inherit;transform:translate(-50%,-50%)}
.catalog{padding:120px 0 160px;background:var(--paper);color:var(--ink)}.catalog .section-head .count{color:#6f5a00}.filter-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:42px}.filter-row a{padding:10px 15px;border:1px solid var(--darkline);border-radius:999px;font:500 11px "DM Mono",monospace;letter-spacing:.08em}.filter-row a:hover{background:var(--ink);color:var(--paper)}.category{margin-top:80px}.category-head{display:grid;grid-template-columns:.65fr 1.35fr;gap:60px;padding-bottom:24px;border-bottom:1px solid var(--darkline)}.category-head span{font:500 11px "DM Mono",monospace;letter-spacing:.12em}.category-head h3{margin:0;font-size:clamp(36px,4vw,60px);letter-spacing:-.045em}.indicator-list{display:grid;grid-template-columns:repeat(2,1fr)}.indicator-link{position:relative;display:grid;grid-template-columns:80px 1fr auto;gap:22px;align-items:start;min-height:180px;padding:30px 0;border-bottom:1px solid var(--darkline)}.indicator-link:nth-child(odd){padding-right:30px;border-right:1px solid var(--darkline)}.indicator-link:nth-child(even){padding-left:30px}.indicator-link .idx{font:500 11px "DM Mono",monospace;letter-spacing:.1em;opacity:.55}.indicator-link h4{margin:0 0 10px;font-size:25px;letter-spacing:-.03em}.indicator-link p{margin:0;max-width:520px;color:rgba(9,10,11,.62);line-height:1.65}.indicator-link .arrow{font-size:22px}.indicator-link:hover h4{color:#2E6E68}.status{display:inline-block;margin-left:8px;padding:4px 7px;border:1px solid currentColor;border-radius:999px;font:500 9px "DM Mono",monospace;vertical-align:middle}.status.soon{opacity:.45}
.product-hero{padding-bottom:90px}.product-frame{position:relative;margin-top:62px;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#111318;box-shadow:0 40px 110px rgba(0,0,0,.42)}.product-frame:before{content:"";display:block;height:48px;border-bottom:1px solid var(--line);background:radial-gradient(circle at 23px 24px,var(--yellow) 0 4px,transparent 5px),radial-gradient(circle at 40px 24px,#3a3d44 0 4px,transparent 5px),radial-gradient(circle at 57px 24px,#3a3d44 0 4px,transparent 5px)}.product-frame img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}.feature-section{padding:130px 0}.feature-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}.feature-card{min-height:330px;padding:30px;border:1px solid var(--line);border-radius:18px;background:#0d0f12}.feature-card:nth-child(1),.feature-card:nth-child(4){grid-column:span 7}.feature-card:nth-child(2),.feature-card:nth-child(3){grid-column:span 5}.feature-card:nth-child(5){grid-column:span 12;background:var(--yellow);color:var(--ink)}.feature-card .tag{font:500 11px "DM Mono",monospace;letter-spacing:.12em;color:var(--yellow)}.feature-card:nth-child(5) .tag{color:var(--ink)}.feature-card h3{margin:90px 0 16px;font-size:clamp(36px,4vw,62px);line-height:.95;letter-spacing:-.045em}.feature-card p{margin:0;max-width:650px;color:#aeb1b8;font-size:17px;line-height:1.7}.feature-card:nth-child(5) p{color:rgba(9,10,11,.67)}
.training-flow{padding:130px 0;background:var(--paper);color:var(--ink)}.steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--darkline);border-left:1px solid var(--darkline)}.step{min-height:360px;padding:27px;border-right:1px solid var(--darkline);border-bottom:1px solid var(--darkline)}.step b{font:500 11px "DM Mono",monospace;letter-spacing:.12em;color:#7f6100}.step h3{margin:150px 0 14px;font-size:32px;letter-spacing:-.04em}.step p{margin:0;color:rgba(9,10,11,.62);line-height:1.65}
.detail-hero{position:relative;min-height:720px;padding:150px 0 80px;display:flex;align-items:flex-end;overflow:hidden;border-bottom:1px solid var(--line)}.detail-hero .hero-grid{width:100%}.detail-hero h1{margin:30px 0 0;font-size:clamp(70px,10vw,156px);line-height:.84;letter-spacing:-.075em;font-weight:600}.detail-hero h1 small{display:block;margin-bottom:18px;color:var(--yellow);font:500 12px "DM Mono",monospace;letter-spacing:.13em}.detail-hero p{max-width:600px;margin:0 0 34px;color:#b9bbc2;font-size:20px;line-height:1.75}.detail-orbit{position:absolute;right:-7vw;top:70px;width:min(48vw,720px);aspect-ratio:1;border:1px solid rgba(129,216,208,.3);border-radius:50%}.detail-orbit:before{content:"";position:absolute;inset:18%;border:1px solid rgba(255,255,255,.13);border-radius:50%}.detail-orbit:after{content:"";position:absolute;width:20px;height:20px;border-radius:50%;background:var(--yellow);left:9%;top:24%;box-shadow:0 0 0 12px rgba(129,216,208,.1)}.detail-body{padding:120px 0}.detail-columns{display:grid;grid-template-columns:.55fr 1.45fr;gap:80px}.detail-label{font:500 11px "DM Mono",monospace;letter-spacing:.12em;color:var(--yellow)}.detail-content h2{margin:0 0 50px;font-size:clamp(48px,6vw,90px);line-height:.92;letter-spacing:-.055em}.detail-points{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.detail-point{min-height:280px;padding:26px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.detail-point span{font:500 11px "DM Mono",monospace;color:var(--yellow)}.detail-point h3{margin:105px 0 12px;font-size:24px}.detail-point p{margin:0;color:#aeb1b8;line-height:1.65}.detail-note{margin-top:70px;padding:42px;border-radius:18px;background:var(--yellow);color:var(--ink);display:flex;justify-content:space-between;align-items:center;gap:40px}.detail-note h3{margin:0;font-size:36px;letter-spacing:-.04em}.detail-note p{max-width:650px;margin:0;color:rgba(9,10,11,.68);line-height:1.65}
.cta-band{padding:110px 0;background:var(--yellow);color:var(--ink)}.cta-row{display:grid;grid-template-columns:1.3fr .7fr;gap:60px;align-items:end}.cta-row h2{margin:0;font-size:clamp(58px,8vw,120px);line-height:.85;letter-spacing:-.07em}.cta-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.cta-actions .action{border-color:var(--ink)}.cta-actions .action:first-child{background:var(--ink);color:var(--paper)}
.footer{padding:34px 36px;border-top:1px solid var(--line);display:flex;align-items:center;gap:28px;color:#92959d;font-size:12px}.footer strong{color:#fff}.footer nav{display:flex;gap:22px;margin-left:auto}.footer a:hover{color:#fff}
@media(max-width:900px){.wrap{width:calc(100% - 34px)}.topnav{height:68px;padding:0 17px}.toplinks{display:none}.launch{padding:9px 12px}.subhero{min-height:650px;padding-top:105px}.hero-grid,.section-head,.category-head,.detail-columns,.cta-row{grid-template-columns:1fr}.subhero h1,.detail-hero h1{font-size:18vw}.hero-side{margin-top:35px}.core{padding:85px 0}.core-grid{grid-template-columns:1fr}.core-card{min-height:500px}.catalog{padding:85px 0}.indicator-list{grid-template-columns:1fr}.indicator-link{grid-template-columns:48px 1fr auto}.indicator-link:nth-child(odd),.indicator-link:nth-child(even){padding-left:0;padding-right:0;border-right:0}.feature-grid{display:block}.feature-card{margin-bottom:12px}.feature-card h3{margin-top:70px}.steps{grid-template-columns:1fr 1fr}.detail-hero{min-height:670px;padding-top:120px}.detail-orbit{width:80vw;right:-40vw}.detail-points{grid-template-columns:1fr}.detail-note{display:block}.detail-note p{margin-top:20px}.cta-actions{justify-content:flex-start;margin-top:30px}.footer{align-items:flex-start;flex-direction:column}.footer nav{margin:0;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.page-wipe{display:none}*{transition:none!important;animation:none!important}}

/* Impeccable typography and rhythm pass */
html{scroll-padding-top:78px}
body{overflow-wrap:break-word;word-break:keep-all;line-break:strict;text-rendering:optimizeLegibility;font-kerning:normal}
::selection{background:var(--yellow);color:var(--ink)}
:focus-visible{outline:2px solid var(--yellow);outline-offset:4px}
*{scrollbar-width:thin;scrollbar-color:var(--yellow) var(--ink2)}
p{max-width:72ch}
.mono,.eyebrow,.section-head .count,.category-head span,.filter-row a,.card-num,.feature-card .tag,.step b,.detail-label,.detail-point span{letter-spacing:.08em}
.status{font-size:11px}
.subhero h1,.detail-hero h1,.section-head h2,.category-head h3,.core-card h3,.feature-card h3,.detail-content h2,.detail-note h3,.cta-row h2{letter-spacing:-.04em;text-wrap:balance}
.subhero{min-height:720px;padding:136px 0 88px}
.hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:clamp(48px,6vw,96px)}
.subhero h1,.detail-hero h1{font-size:clamp(60px,7.5vw,96px);line-height:.9}
.hero-side{max-width:560px;padding-bottom:4px}
.hero-side p,.detail-hero p{font-size:18px;line-height:1.82}
.core,.catalog,.feature-section,.training-flow,.detail-body{padding-top:112px;padding-bottom:112px}
.section-head{gap:clamp(36px,5vw,72px);margin-bottom:64px}
.section-head h2,.detail-content h2,.read-guide h2{line-height:1.1}
.category-head h3,.feature-card h3,.step h3,.cta-row h2{line-height:1.12}
.category{margin-top:96px}
.category-head{gap:clamp(36px,5vw,72px);padding-bottom:28px}
.indicator-link{gap:24px;min-height:190px;padding-top:34px;padding-bottom:34px}
.indicator-link h4{margin-bottom:12px;line-height:1.35}
.indicator-link p,.core-card p,.feature-card p,.step p,.detail-point p,.detail-note p,.read-guide li p{line-height:1.82}
.detail-hero{min-height:740px;padding:148px 0 88px}
.detail-hero .hero-grid{width:min(1500px,calc(100% - 72px));margin-inline:auto}
.detail-hero h1{padding-left:.02em}
.detail-body{background:var(--paper);color:var(--ink)}
.detail-columns{gap:clamp(48px,6vw,88px)}
.detail-content h2{margin-bottom:58px}
.detail-point h3{line-height:1.3;letter-spacing:-.025em}
.detail-note{margin-top:64px;padding:40px 44px}
.detail-note h3{line-height:1.15}
.cta-band{padding:104px 0}
.cta-row{gap:clamp(40px,6vw,80px)}
.footer{line-height:1.5}

@media(max-width:900px){
  html{scroll-padding-top:68px}
  .wrap{width:calc(100% - 40px)}
  .topnav{padding-inline:20px}
  .logo{gap:9px;font-size:14px;letter-spacing:.075em}
  .logo-mark{width:32px;height:32px;border-radius:10px}
  .launch{font-size:12px}
  .subhero,.detail-hero{min-height:auto;padding:112px 0 64px}
  .detail-hero .hero-grid{width:calc(100% - 40px)}
  .hero-grid{grid-template-columns:1fr;gap:40px}
  .subhero h1,.detail-hero h1{margin-top:24px;font-size:clamp(52px,15vw,68px);line-height:.92;letter-spacing:-.035em}
  .hero-side{max-width:34rem;margin-top:0;padding:0}
  .hero-side p,.detail-hero p{margin-bottom:26px;font-size:17px;line-height:1.82}
  .eyebrow{font-size:11px;line-height:1.55;letter-spacing:.075em}
  .core,.catalog,.feature-section,.training-flow,.detail-body{padding-top:80px;padding-bottom:80px}
  .section-head,.category-head,.detail-columns,.cta-row{gap:28px}
  .section-head{margin-bottom:42px}
  .section-head h2,.detail-content h2,.read-guide h2{font-size:clamp(40px,12vw,54px);line-height:1.12;letter-spacing:-.035em}
  .core-card{min-height:460px;padding:28px}
  .core-card h3{margin-top:270px;font-size:clamp(38px,12vw,52px);letter-spacing:-.035em}
  .core-card .more{left:28px;bottom:27px}
  .category{margin-top:64px}
  .indicator-link{grid-template-columns:38px minmax(0,1fr) auto;gap:12px;min-height:0;padding:26px 0}
  .indicator-link h4{font-size:22px}
  .indicator-link p{font-size:15px;line-height:1.8}
  .feature-card{min-height:300px;padding:26px}
  .feature-card h3{margin-top:64px;font-size:clamp(36px,11vw,48px);line-height:1.12}
  .steps{grid-template-columns:1fr}
  .step{min-height:280px;padding:24px}
  .step h3{margin-top:105px}
  .detail-orbit{top:78px;width:74vw;right:-34vw}
  .detail-content h2{margin-bottom:38px}
  .detail-points{border-left:0}
  .detail-point{min-height:0;padding:26px 0;border-right:0}
  .detail-point h3{margin:48px 0 10px;font-size:22px}
  .detail-note{margin-top:44px;padding:28px}
  .detail-note h3{font-size:30px}
  .cta-band{padding:78px 0}
  .cta-row h2{font-size:clamp(48px,14vw,62px);line-height:1.08;letter-spacing:-.035em}
  .footer{padding:30px 20px;gap:22px}
}

/* 트레이닝 소개는 트레이닝처럼 주황 (2026-10-31 사용자) */
body.tr-page,html:has(body.tr-page){--yellow:#FF6A1F}
body.tr-page rect[fill="#81D8D0"]{fill:#FF6A1F}
body.tr-page .lang-sw button[aria-pressed="true"]{background:#FF6A1F!important}
body.tr-page .launch{border-color:rgba(255,106,31,0.65)}
body.tr-page .visual.bolt:before{filter:drop-shadow(0 0 20px rgba(255,106,31,0.24))}
body.tr-page .indicator-link:hover h4{color:#7A3410}
body.tr-page .detail-orbit{border-color:rgba(255,106,31,0.3)}
body.tr-page .detail-orbit:after{box-shadow:0 0 0 12px rgba(255,106,31,0.1)}
/* 전환 막·로딩 색은 지금 페이지가 아니라 가는 페이지를 따름 (tr-wipe = 트레이닝으로 가는 중) */
body.tr-wipe .page-wipe{background:#FF6A1F}
body.tr-wipe .nav-loader:before,body.tr-wipe .nav-loader i{background-color:#FF6A1F}
html.transition-boot.tr-boot{background:#FF6A1F}
