.jit-academy-page { background: var(--bg); color: var(--text); }
.jit-academy-shell { width: min(calc(100% - (var(--layout-gutter) * 2)), var(--max-width)); margin-inline: auto; }
.jit-academy-section { padding: var(--jit-section-space) 0; }
/* Hero page-start rhythm is owned by the shared .jit-service-hero component. */
.jit-academy-hero-grid,.jit-academy-split,.jit-academy-price-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:clamp(2.5rem,7vw,6rem); align-items:center; }
.jit-academy-page h1,.jit-academy-page h2,.jit-academy-page h3 { font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:inherit; }
.jit-academy-page h1 { max-width:760px; font-size:clamp(3.35rem,8vw,7.4rem); font-weight:700; letter-spacing:-.045em; line-height:.9; }
.jit-academy-page h2 { font-size:clamp(2.35rem,5vw,4.4rem); font-weight:700; letter-spacing:-.035em; line-height:.98; }
.jit-academy-page h1 em,.jit-academy-page h2 em { font-family:Georgia,"Times New Roman",serif; font-style:italic; font-weight:300; }
.jit-academy-lead,.jit-academy-body,.jit-academy-heading>p { color:var(--muted); font-size:clamp(1rem,1.4vw,1.08rem); line-height:1.75; }
.jit-academy-lead { max-width:42rem; margin-top:2rem; }
.jit-academy-actions { display:flex; flex-wrap:wrap; gap:.8rem; margin-top:2.25rem; }
.jit-academy-facts { display:flex; flex-wrap:wrap; gap:.75rem 1.25rem; margin:2.5rem 0 0; padding:1.25rem 0 0; border-top:1px solid var(--border); list-style:none; color:var(--muted); font-size:.72rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.jit-academy-hero-media,.jit-academy-image-card { overflow:hidden; border-radius:var(--jit-editorial-radius); background:var(--surface-soft); box-shadow:none; }
.jit-academy-hero-media { position:relative; }
.jit-academy-hero-media img { width:100%; aspect-ratio:4/5; object-fit:cover; object-position:center 20%; }
.jit-academy-hero-media figcaption { position:absolute; right:1rem; bottom:1rem; left:1rem; display:grid; gap:.2rem; padding:1rem 1.1rem; border-radius:var(--radius); background:rgba(247,240,231,.92); }
.jit-academy-hero-media figcaption span { color:var(--muted); font-size:.78rem; }
.jit-academy-section-soft { background:var(--bg-alt); }
.jit-academy-heading { display:grid; grid-template-columns:minmax(0,1fr); gap:1.5rem; align-items:end; margin-bottom:clamp(2rem,5vw,3.5rem); }
.jit-academy-heading>p { max-width:32rem; }
.jit-academy-card-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:1rem; }
.jit-academy-card { min-height:17rem; padding:1.6rem; border:1px solid var(--jit-editorial-line); border-top:.2rem solid var(--accent); border-radius:var(--jit-editorial-radius); background:rgba(255,250,243,.58); }
.jit-academy-card>span { color:var(--accent); font-size:.72rem; font-weight:700; letter-spacing:.16em; }
.jit-academy-card h3 { margin-top:2.4rem; font-size:clamp(1.55rem,2.4vw,2rem); font-weight:700; letter-spacing:-.025em; line-height:1.08; }
.jit-academy-card p { margin-top:.85rem; color:var(--muted); font-size:.92rem; line-height:1.65; }
.jit-academy-image-card img { width:100%; aspect-ratio:4/5; object-fit:cover; object-position:center 24%; }
.jit-academy-stats { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; margin-top:2rem; }
.jit-academy-stats div { padding:1rem 0; border-top:1px solid var(--border); }
.jit-academy-stats dt { color:var(--muted); font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; }
.jit-academy-stats dd { margin:.35rem 0 0; font-weight:700; }
.jit-academy-section-dark { background:var(--text); color:#fffaf3; }
.jit-academy-section-dark .jit-academy-body { color:rgba(255,250,243,.72); }
.jit-academy-price-card { padding:clamp(1.5rem,4vw,2.25rem); border:1px solid rgba(255,250,243,.24); border-top:.2rem solid var(--accent); border-radius:var(--jit-editorial-radius); background:rgba(255,250,243,.06); }
.jit-academy-price { margin:0; font-size:clamp(3.5rem,8vw,6rem); font-weight:700; line-height:.9; color:#fffaf3; }
.jit-academy-price-card>span { display:block; margin-top:.5rem; color:rgba(255,250,243,.65); }
.jit-academy-price-card ul { display:grid; gap:.75rem; margin:1.75rem 0; padding:0; list-style:none; color:rgba(255,250,243,.78); }
.jit-academy-banner { display:grid; grid-template-columns:minmax(0,1fr); overflow:hidden; border-radius:var(--radius-lg); background:var(--text); color:#fffaf3; }
.jit-academy-banner-copy { align-self:center; padding:clamp(2rem,6vw,5rem); }
.jit-academy-banner-copy h2 { color:#fffaf3; }
.jit-academy-banner-copy p:not(.jit-academy-eyebrow) { margin-top:1.5rem; color:rgba(255,250,243,.78); line-height:1.7; }
.jit-academy-banner-media { min-height:26rem; margin:0; overflow:hidden; }
.jit-academy-banner-media img { width:100%; height:100%; min-height:26rem; object-fit:cover; object-position:center 22%; }
@media (min-width:760px) { .jit-academy-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.jit-academy-heading{grid-template-columns:minmax(0,1.2fr) minmax(18rem,.8fr);} }
@media (min-width:980px) { .jit-academy-hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(22rem,.72fr);}.jit-academy-split{grid-template-columns:minmax(19rem,.72fr) minmax(0,1.08fr);}.jit-academy-price-grid{grid-template-columns:minmax(0,1.15fr) minmax(20rem,.65fr);}.jit-academy-card-grid{grid-template-columns:repeat(4,minmax(0,1fr));}.jit-academy-banner{grid-template-columns:minmax(0,1.08fr) minmax(22rem,.72fr);min-height:34rem;} }




.jit-academy-art-break { padding:0 0 clamp(4rem,8vw,7rem); }
.jit-academy-art-panel { min-height:clamp(23rem,46vw,35rem); display:grid; align-items:end; overflow:hidden; padding:clamp(2rem,6vw,5rem); border-radius:var(--radius-lg); background:linear-gradient(90deg,rgba(24,18,14,.78),rgba(24,18,14,.08)),var(--academy-art); background-position:center; background-size:cover; }
.jit-academy-art-panel > div { max-width:48rem; }
.jit-academy-art-panel h2 { color:#fffaf3; }

.jit-academy-join-section { background:var(--surface-soft); }
.jit-academy-join-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:clamp(2rem,6vw,5rem); align-items:start; }
.jit-academy-form-card { padding:clamp(1.25rem,4vw,2.25rem); border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--surface); box-shadow:var(--shadow); }
.jit-academy-form { display:grid; gap:1.1rem; }
.jit-academy-form label { display:grid; gap:.45rem; color:var(--text); font-size:.78rem; font-weight:700; }
.jit-academy-form label > span { color:var(--muted); font-size:.7rem; font-weight:500; }
.jit-academy-form input[type=text],.jit-academy-form input[type=email],.jit-academy-form input[type=url],.jit-academy-form select,.jit-academy-form textarea { width:100%; min-height:3rem; padding:.72rem .85rem; border:1px solid rgba(55,42,34,.22); border-radius:12px; background:#fff; color:var(--text); font:inherit; }
.jit-academy-form textarea { min-height:8rem; resize:vertical; }
.jit-academy-form input:focus-visible,.jit-academy-form select:focus-visible,.jit-academy-form textarea:focus-visible { border-color:var(--accent); outline:2px solid rgba(231,94,44,.18); outline-offset:1px; }
.jit-academy-consent { grid-template-columns:auto minmax(0,1fr); align-items:start; gap:.65rem; font-weight:500; line-height:1.5; }
.jit-academy-consent input { margin-top:.18rem; }
.jit-academy-honeypot { position:absolute; left:-9999px; }
.jit-academy-notice { margin-bottom:1rem; padding:.9rem 1rem; border:1px solid rgba(231,94,44,.3); border-radius:12px; background:rgba(231,94,44,.08); font-size:.86rem; }
.jit-academy-notice-success { border-color:rgba(50,120,75,.24); background:rgba(50,120,75,.08); }
@media (min-width:840px){ .jit-academy-join-grid{grid-template-columns:minmax(0,.82fr) minmax(0,1fr);} }
