.tk-page{--tk-bg:var(--bg);--tk-surface:var(--surface);--tk-text:var(--text);--tk-muted:var(--text-2);--tk-accent:var(--brand);--tk-line:var(--line-strong);--tk-button:var(--text);--tk-button-text:var(--bg);background:var(--tk-bg);color:var(--tk-text)}
.tk-main{max-width:1240px;margin:0 auto;padding:24px 40px 56px}
.tk-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;color:var(--tk-muted);font-size:13px;margin-bottom:24px}
.tk-page .tk-breadcrumb a{text-decoration:underline;text-underline-offset:4px}
.tk-banner{display:block;width:100%;height:auto;background:var(--tk-button)}
.tk-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;gap:48px;margin-top:32px}
.tk-content h2{font-family:"Noto Serif JP","Yu Mincho",serif;font-size:clamp(24px,2.1vw,32px);line-height:1.5;margin:0 0 16px;letter-spacing:.015em}
.tk-eyebrow{color:var(--tk-accent);font-size:12px;font-weight:700;letter-spacing:.08em;margin:0 0 8px}
.tk-content p:not(.tk-eyebrow){color:var(--tk-muted);font-size:16px;line-height:2;margin:0 0 16px}
.tk-topics{list-style:none;padding:0;margin:24px 0 0;border-top:1px solid var(--tk-line)}
.tk-topics li{padding:16px 0 16px 20px;border-bottom:1px solid var(--tk-line);position:relative;line-height:1.7;font-size:15px}
.tk-topics li:before{content:"";position:absolute;left:0;top:26px;width:6px;height:6px;background:var(--tk-accent)}
.tk-event{padding:24px;border:1px solid var(--tk-line);background:var(--tk-surface)}
.tk-facts{margin:0;border-top:1px solid var(--tk-line)}
.tk-facts>div{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;padding:16px 0;border-bottom:1px solid var(--tk-line)}
.tk-facts dt{color:var(--tk-accent);font-size:12px;font-weight:700;line-height:1.8}
.tk-facts dd{margin:0;font-size:16px;line-height:1.7;overflow-wrap:anywhere}
.tk-facts small{display:block;font-size:13px;color:var(--tk-muted);margin-top:2px;line-height:1.7}
.tk-included{list-style:none;margin:24px 0;padding:0;display:grid;gap:12px}
.tk-included li{position:relative;padding-left:16px;color:var(--tk-muted);font-size:13px;line-height:1.7}
.tk-included li:before{content:"";position:absolute;left:0;top:8px;width:6px;height:6px;background:var(--tk-accent)}
.tk-page a.tk-apply{display:flex;justify-content:center;align-items:center;gap:12px;min-height:56px;padding:16px;background:var(--tk-button);color:var(--tk-button-text);font-weight:700;text-decoration:none;line-height:1.5;text-align:center;border:1px solid transparent;transition:background .15s}
.tk-page a.tk-apply:hover{background:var(--text-2)}
.tk-note{font-size:12px;color:var(--tk-muted);line-height:1.8;margin:12px 0 0}
.tk-book-note{border-top:1px solid var(--tk-line);padding-top:16px;margin-top:20px}
.tk-speaker{margin-top:40px;padding-top:32px;border-top:1px solid var(--tk-line)}
.tk-page a.tk-text-link{color:var(--tk-accent);text-decoration:underline;text-underline-offset:5px;font-size:14px;line-height:1.8}
.tk-back{margin-top:40px}
.tk-mobile-break{display:none}
.tk-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.tk-page a.tk-skip{position:fixed;top:8px;left:8px;z-index:100;padding:12px 20px;background:var(--tk-button);color:var(--tk-button-text);transform:translateY(-150%)}
.tk-page a.tk-skip:focus{transform:translateY(0)}
.tk-page a:focus-visible{outline:3px solid var(--tk-accent);outline-offset:5px}
@media(max-width:900px){.tk-main{padding:24px}.tk-layout{gap:28px;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.tk-event{padding:20px}.tk-facts>div{grid-template-columns:48px minmax(0,1fr);gap:8px}.tk-facts dd{font-size:15px}}
@media(max-width:680px){.tk-main{padding:16px 16px 40px}.tk-breadcrumb{font-size:11px;margin-bottom:16px}.tk-layout{grid-template-columns:1fr;gap:32px;margin-top:24px}.tk-event{grid-row:1;padding:20px}.tk-content h2{font-size:26px}.tk-content p:not(.tk-eyebrow){font-size:15px}.tk-facts>div{grid-template-columns:56px minmax(0,1fr)}.tk-mobile-break{display:inline}.tk-speaker{margin-top:32px;padding-top:24px}}
@media(prefers-reduced-motion:reduce){.tk-page a.tk-apply{transition:none}}
.tk-after-list{margin-top:20px}
.tk-agenda{margin-top:40px;padding-top:32px;border-top:1px solid var(--tk-line)}
.tk-timeline{margin:0;border-top:1px solid var(--tk-line)}
.tk-timeline>div{display:grid;grid-template-columns:132px minmax(0,1fr);gap:16px;padding:14px 0;border-bottom:1px solid var(--tk-line)}
.tk-timeline dt{font-family:var(--font-mono);font-size:14px;line-height:1.8;font-variant-numeric:tabular-nums}
.tk-timeline dd{margin:0;font-size:15px;line-height:1.8}
.tk-content .tk-agenda .tk-note{margin-top:12px}
.tk-contact-note{border-top:1px solid var(--tk-line);padding-top:16px;margin-top:20px}
@media(max-width:680px){.tk-timeline>div{grid-template-columns:120px minmax(0,1fr);gap:10px}.tk-agenda{margin-top:32px;padding-top:24px}}
