.elementor-kit-4203{--e-global-color-primary:#D4870A;--e-global-color-secondary:#313B32;--e-global-color-text:#1C211C;--e-global-color-accent:#BECD9D;--e-global-color-002398d:#1C211C;--e-global-color-409f2e5:#313B32;--e-global-color-aafade2:#538830;--e-global-color-528b844:#BECD9D;--e-global-color-b612dd7:#E6ECDA;--e-global-typography-primary-font-family:"Syne";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Syne";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"DM Sans";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"DM Sans";--e-global-typography-accent-font-weight:500;--e-global-typography-b1c52d4-font-family:"Bebas Neue";--e-global-typography-b1c52d4-letter-spacing:0.6px;background-color:#FFFFFF;}.elementor-kit-4203 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* === SK page fallback CSS — designer reference match === */
/* Uses :root tokens already in the page Custom CSS */

/* Section spacing */
section { padding: 96px var(--jt-side-pad, 64px); }
section.hero { padding-top: 96px; padding-bottom: 80px; }
section > .container,
section > [class*="-head"],
section > [class*="-grid"],
section > [class*="-list"],
section > [class*="-wrap"],
section > [class*="-rows"],
section > .dashboard,
section > .case-meta,
section > .case-closer,
section > .acl-stats,
section > .acl-principles,
section > .recognize-close,
section > .manifesto-divider {
  max-width: var(--jt-container, 1280px);
  margin-left: auto; margin-right: auto;
}
.container { max-width: var(--jt-container, 1280px); margin: 0 auto; padding-left: var(--jt-side-pad, 64px); padding-right: var(--jt-side-pad, 64px); }
@media (max-width: 600px) { section { padding-left: 20px; padding-right: 20px; } }

/* Generic helpers */
.left { text-align: left; } .right { text-align: right; }
.eyebrow.amber { color: var(--jt-amber-2); }
.eyebrow.amber::before { background: var(--jt-amber-2); }
.eyebrow.center { display: inline-flex; justify-content: center; }
.eyebrow.on-dark { color: rgba(248,245,237,0.6); }
.eyebrow.on-dark::before { background: var(--jt-amber); }
.eyebrow.no-mark::before { display: none; }
.h-mega { font-family: var(--jt-serif); font-weight: 400; font-size: clamp(96px, 13vw, 200px); line-height: 0.88; letter-spacing: -0.04em; margin: 0; color: var(--jt-ink); }
.h-mega em { font-style: italic; color: var(--jt-amber-2); font-weight: 400; }
.body-2 { font-size: 18px; line-height: 1.6; color: var(--jt-ink-2); }
.caption { font-family: var(--jt-mono); font-size: 11px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--jt-ink-3); margin-top: 12px; }
.pill { display: inline-block; padding: 6px 14px; border-radius: 999px; background: transparent; border: 1px solid var(--jt-rule); color: var(--jt-ink-2); font-family: var(--jt-mono); font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; }
.stars { color: var(--jt-amber); letter-spacing: 0.05em; }
.mark { color: var(--jt-amber-2); font-weight: 600; }
.stamp { display: inline-flex; align-items: center; gap: 10px; font-family: var(--jt-mono); font-size: 12px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--jt-ink-3); }
.dot { width: 6px; height: 6px; border-radius: 50%; background: var(--jt-amber-2); display: inline-block; }
.btn-amber { background: var(--jt-amber-2); color: var(--jt-paper); }
.btn-amber:hover { background: var(--jt-amber); }

/* ── DASHBOARD (dark, in hero right column) ─────────── */
.dashboard {
  background: linear-gradient(180deg, #1f1c18 0%, #2a2520 100%);
  color: var(--jt-paper);
  border: 1px solid rgba(201,132,42,0.18);
  border-radius: 10px;
  padding: 32px 36px 28px;
  box-shadow: 0 24px 60px -20px rgba(31,28,24,0.45);
  position: relative;
}
.dashboard-head {
  display: grid; grid-template-columns: 1fr auto; gap: 24px;
  align-items: flex-start;
  padding-bottom: 20px; border-bottom: 1px solid rgba(248,245,237,0.12);
}
.dashboard-head .t1 {
  font-family: var(--jt-mono); font-size: 11px; letter-spacing: 0.1em;
  text-transform: uppercase; color: var(--jt-amber);
}
.dashboard-head .t2 {
  font-family: var(--jt-serif); font-size: 22px; line-height: 1.2;
  color: var(--jt-paper); margin-top: 8px; letter-spacing: -0.01em;
}
.dashboard-head .right {
  font-family: var(--jt-mono); font-size: 10px; letter-spacing: 0.12em;
  text-transform: uppercase; color: rgba(248,245,237,0.5); text-align: right;
}
.dashboard-head .right b {
  display: block; font-family: var(--jt-serif); font-size: 24px;
  font-weight: 400; color: var(--jt-paper); margin-top: 6px;
  letter-spacing: -0.01em;
}
.metrics {
  display: grid; grid-template-columns: 1fr 1fr;
  margin-top: 6px;
}
.metric {
  padding: 26px 32px 26px 0;
  border-right: 1px dashed rgba(248,245,237,0.15);
  border-bottom: 1px dashed rgba(248,245,237,0.15);
}
.metric:nth-child(even) { padding-right: 0; padding-left: 32px; border-right: none; }
.metric:nth-last-child(-n+2) { border-bottom: none; padding-bottom: 8px; }
.metric:nth-last-child(2):nth-child(odd) { border-bottom: none; padding-bottom: 8px; }
.metric-label {
  font-family: var(--jt-mono); font-size: 10px; letter-spacing: 0.12em;
  color: rgba(248,245,237,0.5); text-transform: uppercase;
}
.metric-value { display: flex; align-items: baseline; gap: 4px; margin-top: 14px; }
.metric-value .v {
  font-family: var(--jt-serif); font-style: italic; font-weight: 400;
  font-size: 52px; line-height: 1; color: var(--jt-amber);
  letter-spacing: -0.02em;
}
.metric-value .u {
  font-family: var(--jt-mono); font-size: 11px;
  color: rgba(248,245,237,0.55); margin-left: 4px;
}
.metric-delta {
  font-family: var(--jt-mono); font-size: 12px;
  color: rgba(248,245,237,0.5); margin-top: 10px;
}
.metric-delta b { color: var(--jt-paper); font-weight: 600; }
.dashboard-foot {
  display: flex; justify-content: space-between; align-items: center; gap: 16px;
  padding-top: 18px; border-top: 1px solid rgba(248,245,237,0.12);
  margin-top: 14px;
  font-family: var(--jt-mono); font-size: 10px; letter-spacing: 0.12em;
  text-transform: uppercase; color: rgba(248,245,237,0.45);
}
.dashboard-foot .right { color: var(--jt-amber); }
@media (max-width: 700px) {
  .metrics { grid-template-columns: 1fr; }
  .metric, .metric:nth-child(even) { padding: 22px 0; border-right: none; border-bottom: 1px dashed rgba(248,245,237,0.15); }
  .metric:last-child { border-bottom: none; }
}

/* Hero quote */
.hero-quote { margin-top: 80px; padding-top: 40px; border-top: 1px solid var(--jt-rule); }
.hero-quote-body { font-family: var(--jt-serif); font-style: italic; font-size: clamp(22px, 2.4vw, 30px); line-height: 1.35; color: var(--jt-ink); max-width: 820px; }
.hero-quote-cite { font-family: var(--jt-mono); font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--jt-ink-3); margin-top: 16px; }

/* ── PROOF (4-col testimonial chips, paper bg) ──────── */
.proof { background: var(--jt-paper); padding: 80px var(--jt-side-pad, 64px); }
.proof-head {
  display: flex; justify-content: space-between; align-items: center;
  gap: 24px; flex-wrap: wrap; margin-bottom: 36px;
  max-width: var(--jt-container, 1280px); margin-left: auto; margin-right: auto;
}
.proof-head .left { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; }
.proof-grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 0;
  border-top: 1px solid var(--jt-rule); border-bottom: 1px solid var(--jt-rule);
  max-width: var(--jt-container, 1280px); margin-left: auto; margin-right: auto;
}
.proof-card {
  padding: 32px 28px 28px; border-right: 1px solid var(--jt-rule);
  display: flex; flex-direction: column; gap: 14px;
}
.proof-card:last-child { border-right: none; }
.proof-card .role {
  font-family: var(--jt-mono); font-size: 10px; letter-spacing: 0.12em;
  text-transform: uppercase; color: var(--jt-amber-2);
}
.proof-card .name {
  font-family: var(--jt-serif); font-weight: 400; font-size: 26px;
  line-height: 1.1; color: var(--jt-ink); letter-spacing: -0.02em;
}
.proof-card .desc {
  font-family: var(--jt-serif); font-style: italic; font-size: 16px;
  line-height: 1.5; color: var(--jt-ink); flex: 1;
}
.proof-card .sport {
  font-family: var(--jt-mono); font-size: 10px; letter-spacing: 0.12em;
  color: var(--jt-ink-3); text-transform: uppercase;
  padding-top: 14px; margin-top: auto;
  border-top: 1px dashed var(--jt-rule);
}
@media (max-width: 1100px) {
  .proof-grid { grid-template-columns: repeat(2, 1fr); }
  .proof-card { border-right: none; }
  .proof-card:nth-child(odd) { border-right: 1px solid var(--jt-rule); }
  .proof-card:nth-child(-n+2) { border-bottom: 1px solid var(--jt-rule); }
}
@media (max-width: 600px) {
  .proof-grid { grid-template-columns: 1fr; }
  .proof-card { border-right: none !important; border-bottom: 1px solid var(--jt-rule); }
  .proof-card:last-child { border-bottom: none; }
}

/* ── RECOGNIZE (4 questions, 2-col, big amber italic nums) ─ */
.recognize { padding: 120px var(--jt-side-pad, 64px); }
.recognize-head {
  display: grid; grid-template-columns: 1.4fr 1fr; gap: 80px;
  align-items: end; margin-bottom: 56px;
  max-width: var(--jt-container, 1280px); margin-left: auto; margin-right: auto;
}
.recognize-head .h-section { margin: 0; }
.recognize-head .body { margin: 0; max-width: 460px; color: var(--jt-ink-2); }
.recognize-list {
  display: grid; grid-template-columns: 1fr 1fr; gap: 0;
  border-top: 1px solid var(--jt-ink);
  max-width: var(--jt-container, 1280px); margin-left: auto; margin-right: auto;
}
.recognize-item {
  display: grid; grid-template-columns: 90px 1fr; gap: 32px;
  align-items: start; padding: 40px 32px 40px 0;
  border-bottom: 1px solid var(--jt-rule);
  border-right: 1px solid var(--jt-rule);
}
.recognize-item:nth-child(2n) { border-right: none; padding-left: 32px; padding-right: 0; }
.recognize-item:nth-last-child(-n+2) { border-bottom: none; }
.recognize-num {
  font-family: var(--jt-serif); font-style: italic; font-weight: 400;
  font-size: 56px; line-height: 1; color: var(--jt-amber-2);
  letter-spacing: -0.02em;
}
.recognize-text {
  display: flex; flex-direction: column; gap: 14px;
}
.recognize-text > :first-child {
  font-family: var(--jt-serif); font-weight: 500; font-size: clamp(22px, 1.9vw, 28px);
  line-height: 1.2; color: var(--jt-ink); letter-spacing: -0.01em;
}
.recognize-text > :first-child em { font-style: italic; color: var(--jt-amber-2); }
.recognize-text .body, .recognize-text > p {
  font-size: 15px; line-height: 1.55; color: var(--jt-ink-2); margin: 0;
}
.recognize-close { margin-top: 80px; text-align: center; }
.recognize-close .body { max-width: 680px; margin: 0 auto; font-size: 17px; color: var(--jt-ink-2); }
@media (max-width: 900px) {
  .recognize-head { grid-template-columns: 1fr; gap: 24px; align-items: start; }
  .recognize-list { grid-template-columns: 1fr; }
  .recognize-item, .recognize-item:nth-child(2n) { border-right: none; padding: 32px 0; }
}

/* ── MANIFESTO (dark, mega type) ─────────────────────── */
.manifesto { background: var(--jt-ink); color: var(--jt-paper); padding: 140px var(--jt-side-pad, 64px); text-align: center; }
.manifesto .stamp { color: var(--jt-amber); justify-content: center; margin-bottom: 32px; }
.manifesto .h-mega { color: var(--jt-paper); }
.manifesto .h-mega em { color: var(--jt-amber); }
.manifesto .body-2 { color: rgba(248,245,237,0.7); margin-top: 40px; max-width: 720px; margin-left: auto; margin-right: auto; }
.manifesto-divider { width: 60px; height: 1px; background: var(--jt-amber); margin: 56px auto; }
.manifesto-turn { font-family: var(--jt-mono); font-size: 12px; letter-spacing: 0.15em; text-transform: uppercase; color: var(--jt-amber); }

/* ── METHOD (Venn + 3 stacked F/V/T cards) ──────────── */
.method-head {
  display: grid; grid-template-columns: 1fr 1fr; gap: 80px;
  margin-bottom: 80px; align-items: end;
  max-width: var(--jt-container, 1280px); margin-left: auto; margin-right: auto;
}
.method .container { display: grid; grid-template-columns: 1.05fr 1fr; gap: 80px; align-items: start; }
.venn-wrap { display: flex; justify-content: center; align-items: center; min-height: 480px; }
.venn-svg { max-width: 560px; width: 100%; height: auto; display: block; }
.method-center { font-family: var(--jt-mono); font-size: 12px; letter-spacing: 0.12em; text-transform: uppercase; fill: var(--jt-ink); }
.method-list {
  display: flex; flex-direction: column; gap: 28px;
}
.method-item {
  display: grid; grid-template-columns: auto 1fr; gap: 24px;
  padding: 28px 32px; border: 1px solid var(--jt-rule); border-radius: 6px;
  align-items: start;
}
.method-item .hdr {
  font-family: var(--jt-serif); font-style: italic; font-weight: 400;
  font-size: 32px; line-height: 1; color: var(--jt-amber-2);
  margin-top: 4px; grid-row: span 2;
}
.method-item .lbl {
  font-family: var(--jt-serif); font-weight: 600; font-size: 26px;
  line-height: 1.1; color: var(--jt-ink); letter-spacing: -0.01em;
}
.method-item .body, .method-item > p {
  font-size: 15px; line-height: 1.55; color: var(--jt-ink-2);
  margin: 12px 0 0; grid-column: 2;
}
@media (max-width: 1000px) {
  .method-head, .method .container { grid-template-columns: 1fr; gap: 48px; }
  .venn-wrap { min-height: 380px; }
}

/* ── CASE STUDY ──────────────────────────────────────── */
.case { background: var(--jt-bg-2); }
.case-head {
  max-width: 920px; margin-left: auto; margin-right: auto;
  margin-bottom: 56px; padding-left: var(--jt-side-pad, 64px); padding-right: var(--jt-side-pad, 64px);
}
.case-meta {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 0;
  padding: 0; border-top: 1px solid var(--jt-rule); border-bottom: 1px solid var(--jt-rule);
  margin-bottom: 56px;
}
.case-meta-cell {
  display: flex; flex-direction: column; gap: 10px;
  padding: 24px 28px;
  border-right: 1px solid var(--jt-rule);
}
.case-meta-cell:last-child { border-right: none; }
.case-meta-cell .l { font-family: var(--jt-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--jt-ink-3); }
.case-meta-cell .v { font-family: var(--jt-serif); font-size: 22px; color: var(--jt-ink); letter-spacing: -0.01em; line-height: 1.2; }
.case-rows { display: flex; flex-direction: column; gap: 0; max-width: var(--jt-container, 1280px); margin: 0 auto; }
.case-row {
  display: grid; grid-template-columns: 240px 1fr 140px;
  align-items: center; gap: 32px;
  padding: 22px 0; border-bottom: 1px dashed var(--jt-rule);
}
.case-row:last-child { border-bottom: none; }
.case-row-label { font-family: var(--jt-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--jt-ink-3); }
.case-row-label b { font-family: var(--jt-serif); font-size: 17px; display: block; color: var(--jt-ink); margin-top: 6px; text-transform: none; letter-spacing: -0.01em; font-weight: 500; }
.case-bar { position: relative; height: 10px; background: var(--jt-bg-3); border-radius: 999px; overflow: hidden; }
.case-bar .axis { display: none; }
.case-bar .before { position: absolute; left: 0; top: 0; bottom: 0; background: var(--jt-rule-2); border-radius: 999px; }
.case-bar .after { position: absolute; left: 0; top: 0; bottom: 0; background: var(--jt-amber-2); border-radius: 999px; }
.case-bar .arrow { display: none; }
.case-delta { font-family: var(--jt-mono); font-size: 13px; font-weight: 600; color: var(--jt-amber-2); text-align: right; letter-spacing: 0.04em; }
.case-closer {
  margin-top: 64px; padding: 36px 40px; background: var(--jt-paper);
  border-left: 3px solid var(--jt-amber-2);
  font-family: var(--jt-serif); font-style: italic; font-size: 22px;
  line-height: 1.4; color: var(--jt-ink); max-width: 920px;
}
@media (max-width: 900px) {
  .case-meta { grid-template-columns: repeat(2, 1fr); }
  .case-meta-cell:nth-child(2n) { border-right: none; }
  .case-meta-cell:nth-child(-n+2) { border-bottom: 1px solid var(--jt-rule); }
  .case-row { grid-template-columns: 1fr; gap: 10px; }
}

/* Report */
.report-head { max-width: 920px; margin-bottom: 64px; margin-left: auto; margin-right: auto; padding-left: var(--jt-side-pad, 64px); padding-right: var(--jt-side-pad, 64px); }
.report-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; max-width: var(--jt-container, 1280px); margin: 0 auto; padding-left: var(--jt-side-pad, 64px); padding-right: var(--jt-side-pad, 64px); }
@media (max-width: 900px) { .report-grid { grid-template-columns: 1fr; } }

/* ACL section */
.acl-head { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: end; margin-bottom: 64px; max-width: var(--jt-container, 1280px); margin-left: auto; margin-right: auto; }
.acl-principles { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; margin-bottom: 64px; max-width: var(--jt-container, 1280px); margin-left: auto; margin-right: auto; }
.acl-principle { padding: 24px 0; border-top: 2px solid var(--jt-ink); }
.acl-principle .hdr { font-family: var(--jt-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--jt-amber-2); margin-bottom: 14px; }
.acl-principle h3 { font-family: var(--jt-serif); font-weight: 500; font-size: 22px; line-height: 1.2; margin: 0 0 12px; color: var(--jt-ink); letter-spacing: -0.01em; }
.acl-principle p { font-size: 14px; line-height: 1.55; color: var(--jt-ink-2); margin: 0; }
.acl-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; padding: 0; border-top: 1px solid var(--jt-rule); border-bottom: 1px solid var(--jt-rule); }
.acl-stat { display: flex; flex-direction: column; gap: 8px; padding: 32px 28px; border-right: 1px solid var(--jt-rule); }
.acl-stat:last-child { border-right: none; }
.acl-stat .l { font-family: var(--jt-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--jt-ink-3); }
.acl-stat .v { font-family: var(--jt-serif); font-size: 40px; color: var(--jt-ink); letter-spacing: -0.02em; line-height: 1; font-weight: 400; }
.acl-stat .v em { font-style: italic; color: var(--jt-amber-2); font-size: 0.6em; margin-left: 4px; }
.acl-stat .d { font-size: 13px; color: var(--jt-ink-2); margin-top: 4px; }
.acl-viz-track { position: relative; height: 8px; background: var(--jt-bg-3); border-radius: 999px; margin-top: 8px; }
.acl-viz-bar { position: absolute; left: 0; top: 0; bottom: 0; background: var(--jt-amber-2); border-radius: 999px; }
@media (max-width: 900px) {
  .acl-head, .acl-principles { grid-template-columns: 1fr; }
  .acl-stats { grid-template-columns: repeat(2, 1fr); }
  .acl-stat:nth-child(2n) { border-right: none; }
  .acl-stat:nth-child(-n+2) { border-bottom: 1px solid var(--jt-rule); }
}

/* About */
.about { padding: 120px var(--jt-side-pad, 64px); }
.about-grid { display: grid; grid-template-columns: 380px 1fr; gap: 80px; align-items: start; max-width: var(--jt-container, 1280px); margin: 0 auto; }
.about-portrait .frame { aspect-ratio: 4/5; background: var(--jt-bg-3); border-radius: 4px; display: flex; align-items: center; justify-content: center; color: var(--jt-ink-3); font-family: var(--jt-mono); font-size: 12px; }
.about-body { max-width: 720px; }
.about-body .body { font-size: 16px; line-height: 1.65; color: var(--jt-ink-2); margin-top: 24px; }
.about-roles { margin-top: 40px; display: flex; flex-direction: column; gap: 0; border-top: 1px solid var(--jt-rule); }
.about-role { display: grid; grid-template-columns: 160px 1fr; gap: 24px; padding: 18px 0; border-bottom: 1px dashed var(--jt-rule); }
.about-role .l { font-family: var(--jt-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--jt-ink-3); }
.about-role .v { font-size: 15px; color: var(--jt-ink); line-height: 1.4; }
@media (max-width: 900px) { .about-grid { grid-template-columns: 1fr; gap: 40px; } }

/* Process */
.process { background: var(--jt-bg-2); padding: 120px var(--jt-side-pad, 64px); }
.process-head { max-width: 760px; margin-bottom: 56px; }
.process-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; border-top: 1px solid var(--jt-ink); max-width: var(--jt-container, 1280px); margin: 0 auto; }
.process-step { padding: 32px; border-right: 1px solid var(--jt-rule); }
.process-step:last-child { border-right: none; }
.process-step .num { font-family: var(--jt-mono); font-size: 11px; letter-spacing: 0.12em; color: var(--jt-amber-2); margin-bottom: 14px; text-transform: uppercase; }
.process-step h3 { font-family: var(--jt-serif); font-weight: 500; font-size: 22px; line-height: 1.2; margin: 0 0 12px; color: var(--jt-ink); letter-spacing: -0.01em; }
.process-step p { font-size: 14px; line-height: 1.55; color: var(--jt-ink-2); margin: 0; }
@media (max-width: 900px) { .process-list { grid-template-columns: 1fr; } .process-step { border-right: none; border-bottom: 1px solid var(--jt-rule); } .process-step:last-child { border-bottom: none; } }

/* Sports */
.sports-head { max-width: 760px; margin-bottom: 48px; }
.sports-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; max-width: var(--jt-container, 1280px); margin: 0 auto; }
.sport-card { padding: 22px; background: var(--jt-bg-2); border-radius: 6px; font-family: var(--jt-serif); font-size: 18px; line-height: 1.3; color: var(--jt-ink); }
@media (max-width: 1100px) { .sports-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .sports-grid { grid-template-columns: 1fr; } }

/* Testimonials (dark) */
.testimonials { background: var(--jt-ink); color: var(--jt-paper); padding: 120px var(--jt-side-pad, 64px); }
.testimonials .h-section { color: var(--jt-paper); }
.testimonials .h-section em { color: var(--jt-amber); }
.testimonials-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; flex-wrap: wrap; margin-bottom: 56px; max-width: var(--jt-container, 1280px); margin-left: auto; margin-right: auto; }
.t-grid, .testimonials-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 32px; max-width: var(--jt-container, 1280px); margin: 0 auto; }
.t-card { padding: 32px; background: rgba(248,245,237,0.04); border: 1px solid rgba(248,245,237,0.1); border-radius: 6px; }
.t-card blockquote { font-family: var(--jt-serif); font-style: italic; font-size: 20px; line-height: 1.4; margin: 0 0 20px; color: var(--jt-paper); }
.t-card .who { font-family: var(--jt-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; color: rgba(248,245,237,0.5); }
.t-card .who b { display: block; color: var(--jt-amber); font-family: var(--jt-serif); font-size: 16px; font-weight: 500; text-transform: none; letter-spacing: -0.01em; margin-bottom: 4px; }
@media (max-width: 900px) { .t-grid, .testimonials-grid { grid-template-columns: 1fr; } }

/* Pricing */
.pricing { padding: 120px var(--jt-side-pad, 64px); }
.pricing-head { max-width: 720px; margin-bottom: 56px; }
.pricing-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; max-width: var(--jt-container, 1280px); margin: 0 auto; }
.price-card { padding: 36px; background: var(--jt-paper); border: 1px solid var(--jt-rule); border-radius: 8px; display: flex; flex-direction: column; gap: 18px; }
.price-card.featured { background: var(--jt-ink); color: var(--jt-paper); border-color: var(--jt-ink); }
.price-card .name { font-family: var(--jt-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--jt-amber-2); }
.price-card h3 { font-family: var(--jt-serif); font-weight: 500; font-size: 22px; line-height: 1.2; margin: 0; color: var(--jt-ink); }
.price-card.featured h3 { color: var(--jt-paper); }
.price-card .price { font-family: var(--jt-serif); font-size: 44px; letter-spacing: -0.02em; color: var(--jt-ink); line-height: 1; }
.price-card.featured .price { color: var(--jt-paper); }
.price-card .price .u { font-family: var(--jt-mono); font-size: 12px; color: var(--jt-ink-3); margin-left: 6px; }
.price-card .body { font-size: 14px; line-height: 1.55; color: var(--jt-ink-2); margin: 0; }
.price-card.featured .body { color: rgba(248,245,237,0.7); }
.price-card ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.price-card li { font-size: 13px; color: var(--jt-ink-2); padding-left: 20px; position: relative; line-height: 1.4; }
.price-card li::before { content: '+'; position: absolute; left: 0; color: var(--jt-amber-2); font-weight: 600; }
.price-card.featured li { color: rgba(248,245,237,0.8); }
@media (max-width: 900px) { .pricing-grid { grid-template-columns: 1fr; } }

/* FAQ */
.faq { background: var(--jt-bg-2); padding: 120px var(--jt-side-pad, 64px); }
.faq-wrap { max-width: 820px; margin: 0 auto; }
.faq-head { text-align: center; margin-bottom: 56px; }
.faq details { padding: 24px 0; border-bottom: 1px solid var(--jt-rule); }
.faq details summary { font-family: var(--jt-serif); font-size: 20px; line-height: 1.3; color: var(--jt-ink); cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 24px; list-style: none; }
.faq details summary::-webkit-details-marker { display: none; }
.faq details summary::after { content: '+'; font-family: var(--jt-mono); font-size: 24px; color: var(--jt-amber-2); transition: transform 0.2s ease; }
.faq details[open] summary::after { content: '−'; }
.faq details .a { font-size: 15px; line-height: 1.6; color: var(--jt-ink-2); padding-top: 16px; max-width: 720px; }

/* CTA */
.cta { padding: 120px var(--jt-side-pad, 64px); }
.cta-body {
  max-width: 920px; margin: 0 auto;
  padding: 56px;
  background: var(--jt-paper); border: 1px solid var(--jt-rule); border-radius: 10px;
  box-shadow: 0 24px 60px -24px rgba(31,28,24,0.12);
  display: grid; grid-template-columns: 1.5fr 1fr; gap: 56px;
  align-items: center;
}
.cta-actions { display: flex; flex-direction: column; gap: 16px; }
.cta-actions .btn { width: fit-content; }
.cta-meta { display: flex; flex-direction: column; gap: 12px; font-size: 13px; color: var(--jt-ink-3); }
.cta-meta span { padding-left: 18px; position: relative; }
.cta-meta span::before { content: '✓'; position: absolute; left: 0; color: var(--jt-amber-2); }
.cta-meta b { color: var(--jt-ink-2); }
@media (max-width: 900px) { .cta-body { grid-template-columns: 1fr; gap: 32px; padding: 32px; } }
/* === SK page CSS v3 — design match patch === */
/* Lisää Site Settings Custom CSS:n LOPPUUN (KORVAA aiemmat sk-patch-blokit) */

/* ── Section + container — varmista täysleveys ───────── */
.elementor-column:has(#sk-main-w),
#sk-main-w,
#sk-main-w .elementor-widget-container { width: 100% !important; max-width: 100% !important; }

/* ── Manifesto — amber-puolikuun koriste ──────────────── */
.manifesto {
  position: relative;
  background: var(--jt-ink) !important;
  color: var(--jt-paper) !important;
  padding: 140px var(--jt-side-pad, 64px) !important;
  overflow: hidden;
}
.manifesto::before {
  content: ""; position: absolute;
  right: -8%; top: -8%;
  width: 60vw; height: 60vw;
  max-width: 760px; max-height: 760px;
  background: var(--jt-amber-2);
  border-radius: 50%;
  opacity: 0.85;
  z-index: 0;
}
.manifesto > * { position: relative; z-index: 1; }
.manifesto .h-mega { color: var(--jt-paper) !important; }
.manifesto .h-mega em { color: rgba(248,245,237,0.35) !important; font-style: italic; }
.manifesto .body-2 { color: rgba(248,245,237,0.85) !important; max-width: 760px; }
.manifesto .stamp {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 8px 16px; border: 1px solid rgba(248,245,237,0.3);
  border-radius: 999px;
  color: var(--jt-amber); font-family: var(--jt-mono);
  font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase;
  margin-bottom: 32px;
}
.manifesto .stamp .dot { width: 8px; height: 8px; background: var(--jt-amber); border-radius: 50%; }
.manifesto-divider { display: none !important; }
.manifesto-turn { font-family: var(--jt-mono); font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; color: rgba(248,245,237,0.6); margin-top: 48px; }

/* ── Process — VAALEA (oli tumma virheellisesti) ──────── */
.process { background: var(--jt-bg-2) !important; color: var(--jt-ink) !important; padding: 120px var(--jt-side-pad, 64px) !important; }
.process .h-section { color: var(--jt-ink) !important; }
.process .h-section em { color: var(--jt-amber-2) !important; }
.process-step { color: var(--jt-ink-2); }
.process-step h3 { color: var(--jt-ink) !important; }
.process-step .num { color: var(--jt-amber-2) !important; }

/* ── Sports — 3-col (oli 4-col) + pill-chipit ─────────── */
.sports-grid { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 0 !important; border-top: 1px solid var(--jt-rule); border-bottom: 1px solid var(--jt-rule); max-width: var(--jt-container, 1280px); margin: 0 auto; }
.sport-card {
  background: transparent !important;
  border-radius: 0 !important;
  padding: 28px 28px !important;
  display: flex; flex-direction: column; gap: 12px;
  font-size: 14px;
  border-right: 1px solid var(--jt-rule);
  border-bottom: 1px solid var(--jt-rule);
}
.sport-card:nth-child(3n) { border-right: none; }
.sport-card:nth-last-child(-n+3) { border-bottom: none; }
.sport-card .label, .sport-card > span:first-child {
  font-family: var(--jt-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--jt-amber-2);
}
.sport-card h3, .sport-card .title {
  font-family: var(--jt-serif); font-weight: 500; font-size: 22px; line-height: 1.2; color: var(--jt-ink); letter-spacing: -0.01em; margin: 0;
}
.sport-card p, .sport-card .body { font-size: 13px; line-height: 1.5; color: var(--jt-ink-2); margin: 0; }
.sports-tags { display: flex; flex-wrap: wrap; gap: 8px; padding: 24px 0; max-width: var(--jt-container, 1280px); margin: 0 auto; }
.sports-tags .pill { padding: 4px 12px; font-size: 10px; }
.sports-tags > span:first-child { font-family: var(--jt-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--jt-ink-3); padding: 4px 0 4px 0; margin-right: 12px; }
@media (max-width: 900px) { .sports-grid { grid-template-columns: 1fr !important; } .sport-card { border-right: none !important; border-bottom: 1px solid var(--jt-rule) !important; } }

/* ── Case-bar — REPLACE progress bar with before→after pills ─── */
.case-bar {
  display: flex !important; align-items: center; gap: 12px;
  background: transparent !important;
  height: auto !important; overflow: visible !important;
  border-radius: 0 !important;
}
.case-bar .before {
  position: static !important; padding: 6px 14px;
  background: var(--jt-paper) !important; border: 1px solid var(--jt-rule);
  border-radius: 999px; font-family: var(--jt-mono); font-size: 12px;
  color: var(--jt-ink); width: auto; height: auto; flex: 0 0 auto;
}
.case-bar .after {
  position: static !important; padding: 6px 14px;
  background: var(--jt-ink) !important; color: var(--jt-paper) !important;
  border-radius: 999px; font-family: var(--jt-mono); font-size: 12px;
  font-weight: 600; width: auto; height: auto; flex: 0 0 auto;
}
.case-bar .arrow {
  display: inline-block !important; color: var(--jt-amber-2);
  font-family: var(--jt-mono); font-size: 14px; flex: 1; min-width: 40px;
  border-top: 1px solid var(--jt-amber-2); text-align: right;
  position: relative; top: -1px;
}
.case-bar .axis { display: none !important; }
.case-delta {
  color: var(--jt-amber-2) !important; font-family: var(--jt-serif);
  font-size: 28px; font-weight: 400; letter-spacing: -0.01em;
  text-align: right; line-height: 1.1;
}
.case-delta::before { content: "↑ "; font-family: var(--jt-mono); font-size: 0.6em; vertical-align: top; }
.case-row {
  grid-template-columns: 220px 1fr 200px !important;
  gap: 32px !important; align-items: center;
  padding: 22px 0 !important; border-bottom: 1px dashed var(--jt-rule);
}
.case-row > :last-child .desc, .case-row > :last-child .meta {
  display: block; font-family: var(--jt-mono); font-size: 10px; letter-spacing: 0.08em;
  text-transform: uppercase; color: var(--jt-ink-3); margin-top: 6px;
}
@media (max-width: 900px) { .case-row { grid-template-columns: 1fr !important; } }

/* ── ACL principles — pill header ─────────────────────── */
.acl-principle { background: var(--jt-paper); padding: 28px !important; border-radius: 6px; border: 1px solid var(--jt-rule); border-top: 1px solid var(--jt-rule) !important; }
.acl-principle .top, .acl-principle > .hdr-row {
  display: flex; justify-content: space-between; align-items: center;
  margin-bottom: 18px;
}
.acl-principle .num {
  font-family: var(--jt-serif); font-style: italic; font-weight: 400;
  font-size: 38px; color: var(--jt-amber-2); line-height: 1;
}
.acl-principle .tag {
  padding: 4px 10px; border: 1px solid var(--jt-rule);
  border-radius: 999px; font-family: var(--jt-mono); font-size: 9px;
  letter-spacing: 0.12em; text-transform: uppercase; color: var(--jt-ink-2);
}
.acl-principle h3 { font-family: var(--jt-serif); font-weight: 500; font-size: 22px; line-height: 1.2; margin: 12px 0 12px; }

/* ── ACL stats — italic suffix ─────────────────────────── */
.acl-stat .v { font-family: var(--jt-serif); font-size: 48px; color: var(--jt-ink); font-weight: 400; }
.acl-stat .v em { color: var(--jt-amber-2) !important; font-style: italic; font-size: 0.65em; margin-left: 4px; }

/* ── Method — bottom dark pill ────────────────────────── */
.method .objective-pill,
.method > .footer-pill {
  display: inline-flex; align-items: center; gap: 16px;
  padding: 16px 24px; background: var(--jt-ink) !important;
  color: var(--jt-paper) !important; border-radius: 8px;
  font-family: var(--jt-serif); font-size: 20px;
  margin: 32px 0 0;
}
.method-item { background: var(--jt-paper); }

/* ── FAQ — × indicator, amber serif titles ────────────── */
.faq details summary {
  font-family: var(--jt-serif); font-style: normal;
  color: var(--jt-amber-2) !important;
  font-size: 20px; font-weight: 400;
  position: relative;
  padding-right: 40px;
}
.faq details summary::after { content: "×" !important; color: var(--jt-amber-2) !important; font-size: 28px !important; }
.faq details[open] summary::after { content: "×" !important; transform: rotate(45deg); }
.faq-head { text-align: center !important; }
.faq-head .h-section { text-align: center; }
.faq-head .eyebrow { display: inline-flex !important; justify-content: center; }

/* ── CTA — täysleveä dark + amber-puolikuu ────────────── */
.cta {
  background: var(--jt-ink) !important; color: var(--jt-paper) !important;
  position: relative; overflow: hidden; padding: 120px var(--jt-side-pad, 64px) !important;
  text-align: center;
}
.cta::before {
  content: ""; position: absolute;
  left: 50%; bottom: -30%; transform: translateX(-50%);
  width: 90vw; height: 90vw; max-width: 1200px; max-height: 1200px;
  background: var(--jt-amber-2); border-radius: 50%;
  z-index: 0; opacity: 0.95;
}
.cta > * { position: relative; z-index: 1; }
.cta-body {
  background: transparent !important; border: none !important; box-shadow: none !important;
  display: block !important; padding: 0 !important;
  max-width: 720px; margin: 0 auto;
  text-align: center;
}
.cta .h-section, .cta-body h2 { color: var(--jt-paper) !important; text-align: center; }
.cta .h-section em, .cta-body h2 em { color: rgba(248,245,237,0.4) !important; }
.cta .lead, .cta-body p { color: rgba(248,245,237,0.85) !important; text-align: center; margin: 24px auto; max-width: 560px; }
.cta-actions {
  flex-direction: row !important; justify-content: center !important;
  gap: 16px !important; margin-top: 32px;
}
.cta-actions .btn-primary, .cta-actions .btn-amber {
  background: var(--jt-amber) !important; color: var(--jt-ink) !important;
  border: none !important;
}
.cta-actions .btn-ghost, .cta-actions .btn-ghost-text {
  background: transparent !important; color: var(--jt-paper) !important;
  border: 1px solid rgba(248,245,237,0.4) !important; border-radius: 999px;
  padding: 18px 28px;
}
.cta-meta {
  flex-direction: row !important; justify-content: center !important;
  gap: 32px !important; margin-top: 56px;
  font-family: var(--jt-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase;
  color: rgba(248,245,237,0.7) !important;
}
.cta-meta span::before { display: none; }
.cta-meta b { color: var(--jt-paper) !important; font-weight: 600; }
@media (max-width: 700px) { .cta-actions { flex-direction: column !important; } .cta-meta { flex-direction: column !important; gap: 12px !important; } }

/* ── Acl-viz-bar (Suora/Cutting style) ────────────────── */
.viz { display: flex !important; flex-direction: column; gap: 8px; max-width: 100%; margin: 16px 0 0; }
.acl-viz-bar {
  position: static !important; display: grid !important;
  grid-template-columns: 70px 1fr 50px;
  align-items: center; gap: 12px;
  background: transparent !important; border-radius: 0 !important;
  height: auto !important; inset: auto !important;
}
.acl-viz-bar > span:first-child {
  font-family: var(--jt-mono); font-size: 10px; letter-spacing: 0.1em;
  color: var(--jt-ink-2); text-transform: uppercase;
}
.acl-viz-track {
  position: relative; height: 6px; background: var(--jt-bg-3);
  border-radius: 999px; overflow: hidden; margin: 0 !important;
}
.acl-viz-track .b, .acl-viz-track .a {
  position: absolute; left: 0; top: 0; bottom: 0;
  background: var(--jt-amber-2); border-radius: 999px;
}
.acl-viz-track .a { background: var(--jt-ink); }
.acl-viz-bar > span:last-child {
  font-family: var(--jt-mono); font-size: 11px; font-weight: 600;
  color: var(--jt-amber-2); text-align: right;
}

/* ── Testimonials cards — bordered dark ───────────────── */
.t-card, .testimonials-grid > *, .t-grid > * {
  background: transparent !important;
  border: 1px solid rgba(248,245,237,0.15) !important;
  padding: 32px 36px !important; border-radius: 0;
}
.testimonials-grid, .t-grid { gap: 0 !important; border: 1px solid rgba(248,245,237,0.15); }

/* ── Recognize 2x2 — kapasiteetin korjaukset ──────────── */
.recognize-head { grid-template-columns: 1.4fr 1fr !important; align-items: end; gap: 80px; }
.recognize-head .body, .recognize-head p { max-width: none !important; width: 100%; }
.recognize-item { padding: 40px 32px !important; }

/* ── Hero — pill chips and roles row ──────────────────── */
.hero-strip {
  margin-top: 32px; display: flex; align-items: center; gap: 14px; flex-wrap: wrap;
}
.hero-strip .pill {
  padding: 6px 14px; border: 1px solid var(--jt-amber-2);
  color: var(--jt-amber-2); font-family: var(--jt-mono);
  font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase;
  border-radius: 999px;
}

/* ── Pricing — paranna featured-kortin tyyli ──────────── */
.price-card .price { font-family: var(--jt-serif); font-size: 52px !important; letter-spacing: -0.02em; line-height: 1; }
.price-card .price .u { font-family: var(--jt-mono); font-size: 11px; color: var(--jt-ink-3); margin-left: 8px; }
.price-card.featured .price .u { color: rgba(248,245,237,0.6); }

/* ── Universal eyebrow alignment ───────────────────────── */
.eyebrow { display: inline-flex !important; align-items: center; gap: 14px; }
/* === SK v4 patch — append to bottom of Site Settings Custom CSS === */

/* Process: pakota VAALEAKSI kaikki sisältö */
.process,
.process > *,
.process .process-track,
.process .process-step,
.process .process-head {
  background-color: var(--jt-bg-2) !important;
  background-image: none !important;
  color: var(--jt-ink-2) !important;
}
.process .h-section,
.process .process-step h3 {
  color: var(--jt-ink) !important;
}
.process .h-section em {
  color: var(--jt-amber-2) !important;
}
.process .eyebrow {
  color: var(--jt-ink-3) !important;
}
.process .eyebrow::before {
  background: var(--jt-amber-2) !important;
}
.process .num {
  color: var(--jt-amber-2) !important;
  font-family: var(--jt-mono);
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.process .tag {
  font-family: var(--jt-mono);
  font-size: 10px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--jt-amber-2) !important;
  margin-bottom: 12px;
}
.process-track {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 0 !important;
  max-width: var(--jt-container, 1280px);
  margin: 0 auto;
  border-top: 1px solid var(--jt-rule);
}
.process-step {
  padding: 32px !important;
  border-right: 1px solid var(--jt-rule);
}
.process-step:last-child { border-right: none; }
.process-step h3 {
  font-family: var(--jt-serif);
  font-weight: 500;
  font-size: 22px;
  line-height: 1.2;
  margin: 12px 0;
}
@media (max-width: 900px) {
  .process-track { grid-template-columns: 1fr !important; }
  .process-step { border-right: none; border-bottom: 1px solid var(--jt-rule); }
}

/* LSI report: horisontaalibarit + timanttimerkit + amber % */
.report .frame, .report-content {
  background: var(--jt-paper);
  border: 1px solid var(--jt-rule);
  border-radius: 8px;
  padding: 40px;
  max-width: var(--jt-container, 1280px);
  margin: 0 auto;
}
.lsi-row {
  display: grid !important;
  grid-template-columns: 120px 1fr 60px;
  align-items: center; gap: 16px;
  padding: 14px 0;
  border-bottom: 1px dashed var(--jt-rule);
}
.lsi-row:last-child { border-bottom: none; }
.lsi-row > :first-child {
  font-family: var(--jt-mono); font-size: 10px;
  letter-spacing: 0.12em; text-transform: uppercase;
  color: var(--jt-ink-2);
}
.lsi-bar, .lsi-row > div, .lsi-row > .bar {
  position: relative; height: 8px;
  background: var(--jt-bg-3); border-radius: 999px;
}
.lsi-bar::before, .lsi-row > .bar::before {
  content: ""; position: absolute; left: 0; top: 0; bottom: 0;
  background: var(--jt-amber-2); border-radius: 999px;
  width: var(--w, 50%);
}
.lsi-row > :last-child {
  font-family: var(--jt-mono); font-size: 13px;
  font-weight: 600; color: var(--jt-amber-2);
  text-align: right;
}

/* 3D pylväskuvitus pienemmäksi */
.report svg, .report-decoration, .report-graphic, .imtp-chart {
  max-width: 100%; max-height: 280px; width: auto; height: auto;
  display: block;
}

/* DSI gauge */
.dsi-gauge, .dsi-foot {
  display: grid !important;
  grid-template-columns: 1fr auto;
  align-items: center; gap: 16px;
  padding: 16px 0;
  border-top: 1px solid var(--jt-rule);
  margin-top: 16px;
}
.dsi-track {
  position: relative; height: 10px;
  background: var(--jt-bg-3); border-radius: 999px;
  overflow: hidden;
}
.dsi-track .target {
  position: absolute; top: 0; bottom: 0;
  background: var(--jt-amber-soft);
}
.dsi-track .indicator {
  position: absolute; top: -3px; bottom: -3px; width: 2px;
  background: var(--jt-ink);
}
/* === SK v5 — final polish: about roles pill chips === */

/* About-roles: layout flex-wrap, items as pill chips */
.about-roles {
  display: flex !important;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 32px;
  border: none !important;
}
.about-role {
  display: inline-flex !important;
  align-items: center;
  padding: 8px 14px !important;
  border: 1px solid var(--jt-rule) !important;
  border-radius: 999px !important;
  font-family: var(--jt-mono) !important;
  font-size: 10px !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--jt-ink-2) !important;
  grid-template-columns: none !important;
  background: transparent !important;
}
.about-role .l, .about-role .v { display: none !important; }
/* === SK v6 — manifesto h-mega ei vuoda yli ============ */

/* Pienennä manifesto-otsikko ja rajoita leveys */
.manifesto .h-mega {
  font-size: clamp(48px, 6vw, 96px) !important;
  line-height: 1 !important;
  max-width: min(960px, 70%) !important;
  margin: 0 !important;
}
.manifesto .body-2 {
  max-width: min(720px, 65%) !important;
  margin-top: 32px !important;
}
.manifesto {
  padding: 100px var(--jt-side-pad, 64px) 120px !important;
}

/* Amber puolikuu pienempi & ei vuoda yli tekstin */
.manifesto::before {
  width: 50vw !important;
  height: 50vw !important;
  max-width: 600px !important;
  max-height: 600px !important;
  right: -4% !important;
  top: -4% !important;
  opacity: 0.95 !important;
  z-index: 0 !important;
}
.manifesto > * { position: relative; z-index: 2; }

/* Manifesto bottom highlight card (jos sellainen on, kuten mallissa "Kuntoutus on vaihe...") */
.manifesto blockquote,
.manifesto .quote,
.manifesto .closer {
  margin-top: 48px;
  padding: 24px 32px;
  background: rgba(248,245,237,0.05);
  border-left: 3px solid var(--jt-amber);
  font-family: var(--jt-serif);
  font-style: italic;
  font-size: 22px;
  line-height: 1.4;
  color: var(--jt-paper);
  max-width: min(820px, 75%);
}

/* Report-osio: rajoita whitespace SVG:n alle */
.report,
.report-decoration {
  padding-bottom: 60px !important;
}
.report .imtp-chart,
.report svg.imtp-chart,
section.report > svg {
  max-height: 200px !important;
  margin: 16px auto !important;
}

@media (max-width: 900px) {
  .manifesto .h-mega { max-width: 100% !important; font-size: clamp(40px, 9vw, 64px) !important; }
  .manifesto .body-2 { max-width: 100% !important; }
}
/* === SK v7 — report-logo pieni, manifesto pienempi, amber-kuu hillitympi === */

/* Report-logo: PIENI marker raportin yläkulmassa */
.report-logo,
svg.report-logo {
  width: 32px !important;
  height: 32px !important;
  max-width: 32px !important;
  max-height: 32px !important;
  margin: 0 !important;
  display: inline-block !important;
  flex-shrink: 0;
}

/* Report-card: iso kortti taustalla */
.report-card {
  background: var(--jt-paper);
  border: 1px solid var(--jt-rule);
  border-radius: 12px;
  padding: 32px;
  max-width: var(--jt-container, 1280px);
  margin: 0 auto;
  box-shadow: 0 24px 60px -24px rgba(31,28,24,0.08);
}
.report-bar {
  display: flex !important;
  justify-content: space-between;
  align-items: flex-start;
  gap: 24px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--jt-rule);
  margin-bottom: 28px;
}
.report-bar .left {
  display: flex !important;
  align-items: flex-start;
  gap: 16px;
  flex: 1;
}
.report-bar .stamp,
.report-bar > .stamp {
  padding: 6px 14px;
  border: 1px solid var(--jt-amber-2);
  border-radius: 999px;
  font-family: var(--jt-mono);
  font-size: 10px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--jt-amber-2);
  flex-shrink: 0;
}
.meta-stack b {
  font-family: var(--jt-mono);
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--jt-ink);
}
.meta-stack {
  font-family: var(--jt-mono);
  font-size: 11px;
  letter-spacing: 0.04em;
  color: var(--jt-ink-3);
  line-height: 1.5;
}

/* Report-grid: 2-col (IMTP + LSI) */
.report-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  margin-top: 8px;
}
.report-section h4 {
  font-family: var(--jt-mono);
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--jt-ink-3);
  margin: 0 0 16px;
  font-weight: 500;
}
.imtp-chart {
  background: transparent;
  border: 1px solid var(--jt-rule);
  border-radius: 4px;
  padding: 16px;
}
.imtp-chart svg {
  width: 100% !important;
  height: 180px !important;
  max-height: 180px !important;
  display: block;
  margin: 0 !important;
}
.imtp-chart .caption {
  display: flex; justify-content: space-between; align-items: center;
  margin-top: 12px;
  font-family: var(--jt-mono); font-size: 10px;
  letter-spacing: 0.08em; color: var(--jt-ink-3);
}
@media (max-width: 900px) {
  .report-grid { grid-template-columns: 1fr !important; }
}

/* ── Manifesto: pienempi otsikko + pienempi pallo ────── */
.manifesto .h-mega {
  font-size: clamp(40px, 4.5vw, 72px) !important;
  line-height: 1.05 !important;
  max-width: min(820px, 65%) !important;
}
.manifesto .body-2 {
  font-size: 15px !important;
  max-width: min(640px, 60%) !important;
}
.manifesto::before {
  width: 28vw !important;
  height: 28vw !important;
  max-width: 340px !important;
  max-height: 340px !important;
  right: -2% !important;
  top: -2% !important;
  opacity: 0.85 !important;
}
.manifesto { padding: 80px var(--jt-side-pad, 64px) 100px !important; }

@media (max-width: 900px) {
  .manifesto::before { display: none !important; }
  .manifesto .h-mega, .manifesto .body-2 { max-width: 100% !important; }
}
/* === SK v8 — testimonialien tyylikorjaus === */

/* Testimonials-kortit: ei valkoista bg-paikkaa blockquoten alla */
.testimonials .t-card,
.testimonials article.t-card {
  background: transparent !important;
  border: 1px solid rgba(248,245,237,0.12) !important;
  padding: 32px 36px !important;
  border-radius: 0 !important;
  display: flex !important;
  flex-direction: column;
  gap: 18px;
}

/* Blockquote: läpinäkyvä, valkoinen italic-teksti, ilman valkoista korostuslaatikkoa */
.testimonials .t-card blockquote {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  border-left: none !important;
  padding: 0 !important;
  margin: 0 !important;
  font-family: var(--jt-serif) !important;
  font-style: italic !important;
  font-size: 18px !important;
  line-height: 1.55 !important;
  color: var(--jt-paper) !important;
  font-weight: 400 !important;
  quotes: none;
}
.testimonials .t-card blockquote em {
  color: var(--jt-amber) !important;
  font-style: italic;
}
.testimonials .t-card blockquote::before,
.testimonials .t-card blockquote::after { content: none !important; }

/* Stars */
.testimonials .t-card .stars {
  color: var(--jt-amber) !important;
  font-size: 14px !important;
  letter-spacing: 0.1em;
}

/* Cite: name+role vasemmalle, vuosi oikealle, EI yhteenkasvua */
.testimonials .t-card cite {
  display: flex !important;
  justify-content: space-between;
  align-items: flex-end;
  gap: 24px;
  font-style: normal !important;
  padding-top: 16px;
  border-top: 1px dashed rgba(248,245,237,0.18);
}
.testimonials .t-card cite > span:first-child {
  font-family: var(--jt-mono) !important;
  font-size: 10px !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: rgba(248,245,237,0.55) !important;
  line-height: 1.5;
  flex: 1;
}
.testimonials .t-card cite > span:first-child b {
  display: block !important;
  font-family: var(--jt-serif) !important;
  font-weight: 500 !important;
  font-style: normal !important;
  font-size: 16px !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
  color: var(--jt-paper) !important;
  margin-bottom: 4px;
}
.testimonials .t-card cite > span:last-child {
  font-family: var(--jt-mono) !important;
  font-size: 11px !important;
  letter-spacing: 0.1em;
  color: var(--jt-amber-2) !important;
  flex-shrink: 0;
  font-style: normal;
}
/* === SK v9 — mobiili-skaalaus: manifesto + rs-section === */

/* Manifesto (Suora Sana) — mobiili */
@media (max-width: 900px) {
  .manifesto {
    padding: 64px 20px 80px !important;
    overflow: hidden !important;
  }
  .manifesto .h-mega {
    font-size: clamp(32px, 9vw, 56px) !important;
    max-width: 100% !important;
    line-height: 1.05 !important;
  }
  .manifesto .body-2 {
    max-width: 100% !important;
    font-size: 15px !important;
  }
  .manifesto::before {
    display: none !important;  /* piilota amber-pallo mobiilissa */
  }
  .manifesto .stamp {
    font-size: 10px !important;
    margin-bottom: 24px !important;
  }
  .manifesto blockquote,
  .manifesto .quote,
  .manifesto .closer {
    max-width: 100% !important;
    font-size: 17px !important;
    padding: 18px 20px !important;
  }
}

@media (max-width: 600px) {
  .manifesto .h-mega { font-size: clamp(28px, 10vw, 44px) !important; }
}

/* Raportointi (rs-section) — mobiili */
@media (max-width: 900px) {
  .rs-section { padding: 64px 20px !important; }
  .rs-section .container { padding: 0 !important; }
  .rs-head h2 { font-size: clamp(28px, 7vw, 44px) !important; line-height: 1.05 !important; }
  .rs-head .lead { font-size: 16px !important; line-height: 1.55 !important; }
  .rs-grid {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }
  .rs-pair {
    padding: 24px 20px !important;
  }
  .rs-pair h3 {
    font-size: 22px !important;
  }
  .rs-pair p {
    font-size: 14px !important;
  }
  .rs-pages {
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
  }
  .rs-callout {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    padding: 28px 24px !important;
    margin-top: 40px !important;
  }
  .rs-callout h3 {
    font-size: clamp(22px, 6vw, 32px) !important;
  }
  .rs-callout li {
    font-size: 15px !important;
    line-height: 1.5 !important;
  }
  .rs-footer {
    flex-direction: column !important;
    gap: 12px !important;
    font-size: 10px !important;
    padding-top: 24px !important;
    margin-top: 24px !important;
  }
}

@media (max-width: 600px) {
  .rs-section { padding: 48px 16px !important; }
  .rs-pair { padding: 20px 16px !important; }
  .rs-callout { padding: 24px 18px !important; }
  .rs-pages { grid-template-columns: 1fr !important; }
}

/* Yleiset mobiili-fiksit jotta sisältö ei venytä yli */
@media (max-width: 900px) {
  #sk-main-w,
  #sk-main-w * { max-width: 100vw; box-sizing: border-box; }
  section { padding-left: 20px !important; padding-right: 20px !important; }
}
@media (max-width: 600px) {
  section { padding-left: 16px !important; padding-right: 16px !important; }
}
/* === SK v10 — vahva mobile-overflow + skaalauspakko === */

/* Estä horizontal scroll mobiilissa */
html, body { overflow-x: hidden !important; max-width: 100% !important; }

/* Pakota kaikki section + container -elementit mahtumaan viewportiin */
@media (max-width: 900px) {
  section, .container,
  .manifesto, .manifesto .container,
  .rs-section, .rs-section .container,
  .ek-section, .ek-section .container {
    max-width: 100vw !important;
    box-sizing: border-box !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    overflow-x: hidden !important;
  }

  /* Manifesto otsikko paljon pienemmäksi mobiilissa */
  .manifesto .h-mega {
    font-size: clamp(28px, 8vw, 48px) !important;
    line-height: 1.05 !important;
    max-width: 100% !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
  }
  .manifesto .body-2 {
    font-size: 14px !important;
    max-width: 100% !important;
  }
  .manifesto::before {
    display: none !important;
  }

  /* Raportointi-osion otsikot */
  .rs-section h2,
  .rs-head h2 {
    font-size: clamp(24px, 7vw, 40px) !important;
    line-height: 1.05 !important;
    word-wrap: break-word !important;
  }
  .rs-section .lead {
    font-size: 14px !important;
  }
  .rs-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
  .rs-pair {
    padding: 20px 16px !important;
    max-width: 100% !important;
    box-sizing: border-box;
  }
  .rs-pair h3 { font-size: 20px !important; }
  .rs-pair p { font-size: 13px !important; }
  .rs-pages {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }
  .rs-pages img { max-width: 100% !important; height: auto !important; }
  .rs-callout {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
    padding: 24px 18px !important;
  }
  .rs-callout h3 { font-size: clamp(20px, 5.5vw, 28px) !important; }
  .rs-callout li { font-size: 14px !important; line-height: 1.5 !important; }
  .rs-footer {
    flex-direction: column !important;
    gap: 8px !important;
    font-size: 9px !important;
  }
}

@media (max-width: 480px) {
  .manifesto, .rs-section, .ek-section, section {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  .manifesto .h-mega { font-size: clamp(24px, 9vw, 38px) !important; }
  .rs-section h2 { font-size: clamp(22px, 8vw, 32px) !important; }
}

/* Yleinen overflow-protect kaikille widgetin sisältöelementeille */
@media (max-width: 900px) {
  #sk-main-w {
    max-width: 100vw !important;
    overflow-x: hidden !important;
  }
  #sk-main-w * {
    max-width: 100% !important;
    box-sizing: border-box;
  }
  #sk-main-w img, #sk-main-w svg {
    max-width: 100% !important;
    height: auto !important;
  }
}
/* === SK v13 — hero pienempi + nollaa Elementor-wrappereiden padding === */

/* Hero font hieman pienemmäksi */
.hero .h-display,
.h-display {
  font-size: clamp(48px, 7vw, 100px) !important;
  line-height: 0.95 !important;
  letter-spacing: -0.03em !important;
  margin: 0 !important;
}

/* Nollaa Elementor sk-main-w widgetin ylä/ala -paddingit + sen Elementor-column ja sectionin paddingit */
.elementor-column:has(#sk-main-w),
.elementor-column:has(#sk-main-w) .elementor-widget-wrap,
.elementor-section:has(#sk-main-w) > .elementor-container,
.elementor-section:has(#sk-main-w) {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
#sk-main-w,
#sk-main-w .elementor-widget-container {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
}

/* Hero osio: minimaalinen ylätila */
.hero {
  padding-top: 16px !important;
  padding-bottom: 40px !important;
  margin-top: 0 !important;
}

/* Eyebrow tiukasti otsikkoon kiinni */
.hero .eyebrow {
  margin-top: 0 !important;
  margin-bottom: 12px !important;
}

/* Lead-teksti otsikkoon tiukasti kiinni */
.hero-copy .lead {
  margin-top: 16px !important;
  font-size: 16px !important;
  max-width: 460px !important;
}

.hero-actions {
  margin-top: 24px !important;
}

/* Mobiili */
@media (max-width: 900px) {
  .hero { padding-top: 16px !important; padding-bottom: 28px !important; }
  .hero .h-display, .h-display {
    font-size: clamp(34px, 10vw, 62px) !important;
  }
  .hero-grid { grid-template-columns: 1fr !important; gap: 24px !important; }
}

@media (max-width: 480px) {
  .hero .h-display, .h-display {
    font-size: clamp(28px, 11vw, 48px) !important;
  }
}
/* === SK v14 — hero left column top-aligned dashboard kanssa === */

.hero-grid {
  align-items: start !important;
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 56px !important;
}

.hero-copy {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

.hero-copy > :first-child {
  margin-top: 0 !important;
}

@media (max-width: 900px) {
  .hero-grid { grid-template-columns: 1fr !important; align-items: start !important; }
}
/* === SK v15 — hero-quote keskitetty koko sivun leveydelle === */

.hero-quote {
  position: relative;
  width: calc(100vw - 2 * var(--jt-side-pad, 64px));
  left: 50%;
  transform: translateX(-50%);
  max-width: 920px !important;
  text-align: center !important;
  margin-top: 64px !important;
  padding-top: 32px !important;
  border-top: 1px solid var(--jt-rule);
  box-sizing: border-box;
}

.hero-quote-body {
  text-align: center !important;
  margin: 0 auto !important;
  max-width: 820px !important;
}

.hero-quote-cite {
  text-align: center !important;
  margin: 16px auto 0 !important;
}

@media (max-width: 900px) {
  .hero-quote {
    width: calc(100vw - 40px);
    margin-top: 40px !important;
    padding-top: 24px !important;
  }
  .hero-quote-body {
    font-size: 16px !important;
  }
}

@media (max-width: 480px) {
  .hero-quote {
    width: calc(100vw - 28px);
    margin-top: 32px !important;
  }
}
/* === SK v17 — POISTA amber-pallot CTA + manifesto === */

.cta::before,
.manifesto::before {
  display: none !important;
  content: none !important;
}

/* Pidetään tausta tummana ja sisältö keskitettynä */
.cta {
  background: var(--jt-ink) !important;
  color: var(--jt-paper) !important;
  padding: 120px var(--jt-side-pad, 64px) !important;
  text-align: center !important;
  overflow: visible !important;
}
.manifesto {
  background: var(--jt-ink) !important;
  color: var(--jt-paper) !important;
  padding: 100px var(--jt-side-pad, 64px) 120px !important;
  overflow: visible !important;
}
/* === SK v18 — manifesto keskelle + dashboard mahtumaan === */

/* Manifesto-otsikko ja body keskitettynä */
.manifesto {
  text-align: center !important;
}
.manifesto .h-mega {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 1100px !important;
  font-size: clamp(40px, 5.5vw, 80px) !important;
}
.manifesto .body-2,
.manifesto > p {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 760px !important;
}
.manifesto .stamp {
  display: inline-flex !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Dashboard mahtumaan oikeaan kolumniin */
.hero-grid {
  grid-template-columns: 1fr 1fr !important;
  gap: 40px !important;
  align-items: start !important;
  max-width: 100% !important;
  overflow: visible !important;
}
.hero-grid > * { min-width: 0 !important; }
.dashboard {
  max-width: 100% !important;
  padding: 28px 32px !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}
.metrics { gap: 0 !important; }
.metric { padding: 18px 16px !important; }
.metric:nth-child(odd) { padding-left: 0 !important; }
.metric:nth-child(even) { padding-right: 0 !important; }
.metric-value .v {
  font-size: clamp(28px, 3vw, 44px) !important;
}
.dashboard-head .t2 {
  font-size: clamp(14px, 1.5vw, 18px) !important;
}
.dashboard-head .right b {
  font-size: clamp(16px, 1.8vw, 22px) !important;
}

@media (max-width: 1100px) {
  .hero-grid { grid-template-columns: 1.1fr 1fr !important; gap: 32px !important; }
  .dashboard { padding: 24px !important; }
  .metric-value .v { font-size: 30px !important; }
}

@media (max-width: 900px) {
  .hero-grid { grid-template-columns: 1fr !important; gap: 32px !important; }
  .manifesto .h-mega { font-size: clamp(32px, 8vw, 56px) !important; }
}
/* === SK v19 — recognize-osio mobile-layout: header keskitetty, items number+title rivissä body täysleveä === */

@media (max-width: 900px) {
  /* Header keskelle: otsikko ylös, body sen alle täysleveänä */
  .recognize-head {
    display: block !important;
    grid-template-columns: none !important;
    text-align: center;
    max-width: 100%;
  }
  .recognize-head > div,
  .recognize-head .h-section,
  .recognize-head h2 {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .recognize-head .eyebrow {
    display: inline-flex !important;
    justify-content: center !important;
    margin: 0 auto 16px !important;
  }
  .recognize-head .h-section,
  .recognize-head h2 {
    font-size: clamp(28px, 8vw, 48px) !important;
    line-height: 1.1 !important;
    margin: 0 auto 24px !important;
    max-width: 100% !important;
  }
  .recognize-head .body,
  .recognize-head p {
    text-align: center !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    font-size: 16px !important;
  }

  /* Items: 1-col stack */
  .recognize-list {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }
  .recognize-item {
    display: block !important;
    grid-template-columns: none !important;
    border-right: none !important;
    border-bottom: 1px solid var(--jt-rule) !important;
    padding: 32px 0 !important;
  }
  .recognize-item:last-child { border-bottom: none !important; }

  /* Numero + otsikko VIEREKKÄIN ylhäällä */
  .recognize-num {
    display: inline-block !important;
    font-size: 36px !important;
    margin-right: 16px !important;
    vertical-align: baseline !important;
  }
  .recognize-text {
    display: block !important;
  }
  .recognize-text > :first-child {
    display: inline !important;
    font-size: clamp(20px, 5vw, 28px) !important;
    line-height: 1.2 !important;
  }
  .recognize-text .body,
  .recognize-text > p {
    display: block !important;
    margin-top: 16px !important;
    font-size: 14px !important;
    width: 100% !important;
    max-width: 100% !important;
    line-height: 1.55 !important;
  }
}
/* === SK v20 — method-item mobile: letter+title rivissä, body täysleveä === */

@media (max-width: 900px) {
  .method-item {
    display: block !important;
    grid-template-columns: none !important;
    padding: 24px 20px !important;
  }
  /* F-kirjain (.hdr) ja otsikko (.lbl) vierekkäin yläosassa */
  .method-item > .hdr,
  .method-item > :first-child {
    display: inline-block !important;
    font-size: 32px !important;
    vertical-align: baseline !important;
    margin-right: 12px !important;
    grid-row: auto !important;
    grid-column: auto !important;
    color: var(--jt-amber-2);
  }
  .method-item > .lbl,
  .method-item > :nth-child(2) {
    display: inline !important;
    font-size: clamp(20px, 5.5vw, 26px) !important;
    line-height: 1.2 !important;
    grid-column: auto !important;
  }
  /* Body täysleveänä alapuolella */
  .method-item > .body,
  .method-item > p {
    display: block !important;
    margin-top: 14px !important;
    width: 100% !important;
    max-width: 100% !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
    grid-column: auto !important;
  }
}
/* === SK v22 — piilota vain venn-SVG (ei method-list joka on saman wrapin sisällä) === */

/* Yliaja v21 — älä piilota venn-wrap:ää (sisältää method-list:n) */
@media (max-width: 900px) {
  .venn-wrap,
  .method .venn-wrap {
    display: block !important;  /* Pidetään wrap näkyvänä */
    min-height: auto !important;
  }
  /* Piilota vain itse SVG */
  .venn-svg,
  .method .venn-svg,
  .venn-wrap > svg {
    display: none !important;
  }
  /* method-list takaisin näkyväksi flex-pinoksi */
  .method-list,
  .venn-wrap .method-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    margin-top: 0 !important;
  }
  .method-center {
    margin-top: 16px !important;
    padding: 16px !important;
    background: var(--jt-ink);
    color: var(--jt-paper);
    border-radius: 8px;
    text-align: center;
    display: block !important;
  }
  .method-center .lbl {
    font-family: var(--jt-mono); font-size: 11px; letter-spacing: 0.12em;
    text-transform: uppercase; color: var(--jt-amber);
    display: inline-block; margin-right: 8px;
  }
  .method-center .desc {
    font-family: var(--jt-serif); font-size: 16px;
    color: var(--jt-paper);
  }
}
/* === SK v23 — venn-SVG näkyviin ja oikean kokoisena mobiilissa === */

/* Yliaja v21+v22 piilotukset */
@media (max-width: 900px) {
  .venn-wrap,
  .method .venn-wrap {
    display: block !important;
    min-height: auto !important;
    padding: 24px 0 !important;
  }
  .venn-svg,
  .method .venn-svg,
  .venn-wrap > svg {
    display: block !important;
    width: 100% !important;
    max-width: 360px !important;
    height: auto !important;
    margin: 0 auto !important;
  }
  /* method-list pinona venn:n alle */
  .method-list,
  .venn-wrap .method-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    margin-top: 32px !important;
  }
}

@media (max-width: 480px) {
  .venn-svg,
  .method .venn-svg,
  .venn-wrap > svg {
    max-width: 300px !important;
  }
}/* End custom CSS */