@font-face {font-family: Gmarket Local; src: url('./assets/fonts/GmarketSans-Medium.ttf') format('truetype'); font-weight: 400 500; font-display: swap}
@font-face {font-family: Gmarket Local; src: url('./assets/fonts/GmarketSans-Bold.ttf') format('truetype'); font-weight: 600 900; font-display: swap}
:root {--ink:#17191d; --ink-soft:#4d535d; --muted:#626b77; --blue:#1267ee; --max:1240px}
body {font-family:'Gmarket Local',sans-serif; letter-spacing:0}
[data-reveal],[data-reveal-group]>*,[data-hero-reveal] {filter:none!important; transition-duration:450ms!important}
h1,h2,h3,h4,p {letter-spacing:0}
section[id] {scroll-margin-top:88px}
em {font-style:normal; color:var(--blue)}
.site-header {background:rgba(255,255,255,.94); color:var(--ink); border-bottom:1px solid #e8ebef; box-shadow:none; min-height:76px}
.nav a,.mobile-menu {color:#424851}
.nav a:hover {color:var(--blue)}
.nav a {font-size:13px}
.brand {font-size:12px; letter-spacing:0}
.container {padding:0 48px}
.field-hero {display:flex; align-items:flex-end; min-height:0; height: min(650px,78svh); padding:112px 0 58px; background:#242728}
.field-hero-photo {position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center top; transform-origin:center top; z-index:0; will-change:transform}
.field-hero-shade {position:absolute; inset:0; z-index:1; background:linear-gradient(180deg,transparent 20%,rgba(12,15,19,.24) 45%,rgba(12,15,19,.86) 100%)}
.field-hero-content {width:100%; position:relative; z-index:2; padding-left:56%; margin-left:0; margin-right:0; max-width:none}
.field-hero .hero-title {font-size:68px; line-height:1.15; margin:12px 0 18px; max-width:unset}
.hero-name-en {display:block; font-size:12px; font-weight:400; margin-top:10px; color:#e5e9ef}
.field-hero .hero-kicker {color:#fff; font-size:11px; margin:0; line-height:1.5}
.field-hero-message {font-size:34px; line-height:1.4; margin:22px 0}
.field-hero .hero-actions {display:flex; gap:12px; flex-wrap:wrap}
.field-hero .btn {min-height:50px; font-size:13px}
.field-hero .btn.primary {background:#fff; color:#131b25; border-color:#fff}
.field-hero .btn.ghost {border-color:#ffffff75; background:transparent; color:white}
.field-caption {position:absolute; right:48px; bottom:32px; color:#eee; font-size:10px; z-index:2}
.field-hero .hero-scroll {right:46px; left:auto; bottom:65px; transform:none; width:40px; height:40px; border:1px solid #ffffff60; border-radius:50%; display:grid; place-items:center}
.field-proof-line {display:flex; justify-content:space-around; gap:24px; padding:26px 48px; border-bottom:1px solid #e7e9ed; color:#17191d}
.field-proof-line span {font-size:16px; font-weight:700; display:flex; align-items:center; gap:12px}
.field-proof-line small {font-size:11px; font-weight:400; color:var(--muted)}
.teaching-section {padding:72px 0 90px; background:#fff}
.teaching-heading {margin-bottom:54px}
.teaching-heading h2 {font-size:46px; line-height:1.35; margin:16px 0 20px}
.teaching-heading p:last-child {font-size:15px; max-width:600px; color:var(--muted)}
.teaching-eyebrow,.teaching-case-index {font-size:11px; line-height:1.5; color:var(--blue); font-weight:700; margin:0 0 18px}
.field-case {display:grid; grid-template-columns:1.12fr 1fr; gap:72px; align-items:center; margin:0 0 76px}
.field-case-photo {margin:0; position:relative; overflow:hidden; aspect-ratio:1.16; background:#edf1f6}
.field-case-photo img {display:block; width:100%; height:100%; object-fit:cover; transition:transform .6s}
.field-case:hover .field-case-photo img {transform:scale(1.025)}
.field-case-photo figcaption {position:absolute; bottom:0; left:0; padding:9px 14px; background:#fff; color:#626b77; font-size:9px}
.field-case-copy h3 {font-size:30px; line-height:1.45; margin:12px 0 18px}
.field-case-copy>p:not(.teaching-case-index) {font-size:13px; line-height:1.9; color:var(--muted); margin:0 0 20px}
.field-actions {margin:24px 0; border-top:1px solid #dfe4eb}
.field-actions div {display:grid; grid-template-columns:60px 1fr; gap:14px; padding:13px 0; border-bottom:1px solid #e8ebf0; font-size:12px}
.field-actions dt {font-weight:700; color:var(--blue)}
.field-actions dd {margin:0; color:#4d535d}
.field-case-reverse .field-case-photo {order:2}
.fitness-photo img {object-position:center 44%}
.teaching-text-link {font-size:12px; color:var(--ink); gap:10px; text-decoration:none; display:inline-flex; align-items:center; border-bottom:1px solid #ced4de; padding:7px 0; line-height:1.5}
.teaching-text-link:hover {color:var(--blue); border-color:var(--blue)}
.teaching-text-link svg {width:16px; height:16px; transition:transform .2s}
.teaching-text-link:hover svg {transform:translate(2px,-2px)}
.course-preview {display:grid; grid-template-columns:1fr .75fr; background:#f4f6fa; align-items:center; margin-top:40px; gap:42px; border-bottom:1px solid #dfe4eb}
.course-preview img {display:block; width:100%; aspect-ratio:16/9; object-fit:cover}
.course-preview>div {padding:28px 30px 28px 0}
.course-preview span {font-size:11px; color:var(--muted)}
.course-preview strong {display:block; font-size:23px; line-height:1.4; margin:12px 0}
.course-preview p {font-size:12px; color:var(--muted)}
.football-feature {background:#eff5f2; padding:96px 0 80px; border-block:1px solid #dbe7df}
.football-heading {display:flex; flex-direction:column; align-items:center; text-align:center; margin-bottom:42px}
.football-heading h2 {font-size:52px; line-height:1.25; margin:10px 0 14px; color:#102c22}
.football-heading>p:not(.teaching-eyebrow) {font-size:22px; line-height:1.6; margin:0 0 24px}
.football-heading em {color:#08734a}
.football-heading .btn.primary {background:#123f2e; border-color:#123f2e; color:white}
.product-tabs {display:flex; justify-content:center; gap:8px; margin-bottom:24px; flex-wrap:wrap}
.product-tabs button {display:flex; align-items:center; justify-content:center; gap:9px; background:transparent; border:1px solid #aebfb5; color:#3f584b; padding:12px 19px; cursor:pointer; font-size:12px; border-radius:6px}
.product-tabs button[aria-selected=true] {background:#fff; border-color:#163d2e; color:#163d2e; box-shadow:0 2px 0 #163d2e}
.product-tabs svg {width:17px; height:17px}
.product-screen-stage {border:1px solid #c9d6ce; background:#fff; overflow:hidden; box-shadow:0 18px 55px #23493213; border-radius:6px}
.product-screen-stage figure {margin:0; animation:product-in .35s ease}
.product-screen-stage figure[hidden] {display:none}
.product-screen-stage img {display:block; width:100%; aspect-ratio:1.44; object-fit:cover; object-position:top}
.product-screen-stage figcaption {font-size:11px; color:#52645a; padding:15px 22px; background:#fff; min-height:48px}
.product-flow {display:grid; grid-template-columns:1fr 24px 1fr 24px 1fr; gap:30px; padding:42px 0 22px; align-items:center}
.product-flow span {font-size:10px; color:#0b7e51}
.product-flow h3 {font-size:19px; margin:10px 0}
.product-flow p {font-size:12px; color:#557064; margin:0}
.product-flow>svg {color:#8a9f94; width:20px; height:20px}
.product-note {font-size:10px; color:#61776b; margin-top:12px}
.real-project-thumb {background:#f2f5f8; overflow:hidden; aspect-ratio:16/10}
.real-project-thumb img {width:100%; height:100%; object-fit:cover; object-position:center}
.project-grid {gap:24px}
.project-card {border:1px solid #e5e8ed; box-shadow:none; border-radius:6px}
.project-card:hover {transform:translateY(-5px); box-shadow:0 10px 25px #1723370c}
.project-card h3 {font-size:20px; line-height:1.5}
.project-card p {font-size:12px; line-height:1.9}
.signal-board {display:none}
.section {padding:90px 0}
.section h2,.ax-case-head h2 {font-size:42px; line-height:1.35}
.section-lead {font-size:13px; max-width:420px}
.section-head {align-items:flex-end}
.ax-case {padding:90px 0; background:#181b20; color:white}
.ax-grid-field {display:none}
.ax-case-intro p {font-size:13px; line-height:1.9}
.ax-journey h3 {font-size:20px}
.ax-journey p,.ax-journey li {font-size:12px; line-height:1.9}
.ax-disclosure {font-size:10px; opacity:.7}
.standard-grid {gap:20px}
.standard-item {background:transparent; border:0; border-bottom:1px solid #dde3eb; border-radius:0; box-shadow:none}
.standard-item p {font-size:12px}
.timeline-item p {font-size:12px; color:var(--muted)}
.timeline-item h3 {font-size:18px}
.cta {background:#1267ee; color:white}
.cta h2 {font-size:42px}
.cta p {font-size:13px; color:#eef4ff}
.cta .link-grid a {color:white; background:transparent; border-color:#ffffff65}
.instructor-page .instructor-intro {background:#fff; padding:140px 0 64px; border-bottom:1px solid #e6e9ee}
.instructor-intro h1 {font-size:52px; line-height:1.4; max-width:800px; margin:18px 0}
.instructor-intro>div>p:not(.teaching-eyebrow) {font-size:15px; color:var(--muted)}
.instructor-role-strip {gap:32px; padding-top:24px}
.instructor-role-strip span {background:transparent; border:0; border-bottom:1px solid #e5e9f0; border-radius:0; padding:15px 0; font-size:12px}
.instructor-case {padding:80px 0}
.instructor-case h2 {font-size:36px; line-height:1.4; max-width:850px}
.instructor-case .lead {font-size:14px; line-height:1.9; max-width:800px}
.instructor-case .teaching-wide-image {width:100%; max-height:540px; object-fit:cover; border-radius:0}
.instructor-case.alt {background:#f5f7fa}
.instructor-columns h3 {font-size:20px}
.instructor-columns p {font-size:13px; line-height:1.95}
.instructor-note {font-size:10px; line-height:1.8; color:#626b77}
.resource-row {padding:24px 0}
.resource-row h3 {font-size:18px}
.resource-row p {font-size:12px}
.instructor-contact {background:#1267ee; color:#fff}
.instructor-contact h2 {font-size:36px}
.instructor-contact .btn {border-color:#ffffff80; color:white}
.instructor-contact .btn.primary {background:white; color:#1267ee; border-color:white}
.case-photo-pair {display:grid; grid-template-columns:1.2fr 1fr; gap:20px; margin:32px 0}
.case-photo-pair img {width:100%; height:350px; object-fit:cover}
.case-subhead {display:flex; justify-content:space-between; gap:24px; align-items:center; padding:24px 0; border-bottom:1px solid #dfe4eb; font-size:13px}
.case-subhead p {margin:0; color:var(--muted); max-width:550px}
.btn:focus-visible,a:focus-visible,button:focus-visible {outline:3px solid #ff906b; outline-offset:4px}
@keyframes product-in {from {opacity:.65; transform:translateY(8px)} to {opacity:1; transform:translateY(0)}}
@media(min-width:1600px) {.field-hero {height:650px} .field-hero-photo {object-position:center top}}
@media(max-width:900px) {
 .container {padding:0 30px}
 .field-case {gap:32px}
 .field-case-copy h3 {font-size:26px}
 .field-proof-line {padding:22px 30px; gap:16px}
 .field-proof-line span {flex-direction:column; gap:6px; font-size:13px}
 .field-case-photo {aspect-ratio:.9}
 .field-hero-photo {object-position:62% top}
 .field-caption {right:30px; font-size:9px}
}
@media(max-width:640px) {
 .site-header {min-height:64px; padding:0 20px; gap:12px}
 .brand {font-size:10px; gap:8px}
 .brand-mark {width:26px; height:26px}
 .nav.open {background:#fff; border-bottom:1px solid #e6e9ef; padding:24px; top:64px}
 .nav.open a {color:#17191d; font-size:14px}
 .container {padding:0 22px}
 .field-hero {height:650px; max-height:90svh; min-height:560px; padding:110px 0 58px}
 .field-hero-photo {object-position:25% top}
 .field-hero-content {padding:0 22px}
 .field-hero .hero-title {font-size:46px}
 .field-hero-message {font-size:27px; margin:22px 0}
 .field-hero .btn {font-size:11px; padding:12px 15px; min-height:46px}
 .field-hero .hero-scroll {display:none}
 .field-caption {bottom:19px; right:22px; left:22px; font-size:8px}
 .field-proof-line {gap:12px; padding:20px 12px; justify-content:space-between}
 .field-proof-line span {font-size:10px; text-align:center; line-height:1.5}
 .field-proof-line small {font-size:8px}
 .teaching-section {padding:64px 0}
 .teaching-heading h2 {font-size:32px}
 .teaching-heading p:last-child {font-size:12px}
 .field-case {grid-template-columns:1fr; gap:24px; margin-bottom:54px}
 .field-case-photo {aspect-ratio:1.33}
 .field-case-reverse .field-case-photo {order:0}
 .field-case-copy h3 {font-size:27px; margin:8px 0 14px}
 .field-case-copy>p:not(.teaching-case-index) {font-size:13px}
 .field-actions div {font-size:11px; grid-template-columns:54px 1fr}
 .course-preview {grid-template-columns:1fr; gap:0; margin-top:18px}
 .course-preview>div {padding:24px}
 .course-preview strong {font-size:20px}
 .football-feature {padding:64px 0 48px}
 .football-heading h2 {font-size:37px}
 .football-heading>p:not(.teaching-eyebrow) {font-size:18px}
 .product-tabs {gap:5px}
 .product-tabs button {font-size:10px; gap:6px; padding:10px 9px}
 .product-tabs svg {width:14px; height:14px}
 .product-screen-stage img {aspect-ratio:1.2; object-fit:cover; object-position:60% top}
 .product-screen-stage figcaption {font-size:9px; padding:12px; line-height:1.8}
 .product-flow {grid-template-columns:1fr; gap:18px; padding:24px 0 12px}
 .product-flow>svg {display:none}
 .product-flow>div {display:grid; grid-template-columns:22px 1fr; column-gap:10px}
 .product-flow span {grid-row:1/3; margin-top:3px}
 .product-flow h3 {font-size:16px; margin:0 0 5px}
 .product-flow p {font-size:11px}
 .product-note {font-size:9px; line-height:1.8}
 .section,.ax-case {padding:64px 0}
 .section h2,.ax-case-head h2 {font-size:31px}
 .section-head {align-items:start}
 .section-lead {font-size:12px}
 .project-card h3 {font-size:18px}
 .project-card p {font-size:11px}
 .cta h2 {font-size:30px}
 .instructor-page .instructor-intro {padding:108px 0 40px}
 .instructor-intro h1 {font-size:32px}
 .instructor-intro>div>p:not(.teaching-eyebrow) {font-size:12px}
 .instructor-case {padding:48px 0}
 .instructor-case h2 {font-size:27px}
 .instructor-case .lead {font-size:12px}
 .case-photo-pair {grid-template-columns:1fr; gap:14px}
 .case-photo-pair img {height:auto; aspect-ratio:4/3}
 .case-subhead {flex-direction:column; align-items:start; font-size:12px}
 .instructor-columns h3 {font-size:18px}
 .instructor-columns p {font-size:12px}
 .instructor-contact h2 {font-size:27px}
 .resource-row {grid-template-columns:24px 1fr}
 .resource-row>a {grid-column:2}
}
html {overflow-x:clip}
@media(prefers-reduced-motion:reduce) {
 html {scroll-behavior:auto}
 *,*::before,*::after {animation:none!important; transition:none!important}
 .field-hero-photo {transform:none!important}
 [data-reveal],[data-reveal-group]>* ,[data-hero-reveal] {opacity:1!important; transform:none!important}
}
