.improve-hero .hero-copy{max-width:900px}
.improve-hero .hero-copy strong{color:var(--text-color);font-weight:700}

.decision-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:870px;margin-top:30px}
.decision-card{background:#fff;border:1px solid var(--tile-border);border-radius:18px;padding:22px 24px}
.decision-card .decision-kicker{display:block;margin-bottom:6px;font-family:var(--font-head);font-size:11px;font-weight:800;letter-spacing:.07em;color:var(--muted)}
.decision-card>strong{display:block;margin-bottom:8px;font-family:var(--font-head);font-size:24px;line-height:1.15}
.decision-card p{margin:0;font-size:15.5px;line-height:1.55;color:#4E5864}
.answer-card{border-top:4px solid var(--green)}
.evaluator-card{border-top:4px solid var(--blue)}

.concept-note{max-width:700px;margin-top:26px;padding:20px 22px;border-left:4px solid var(--blue);background:#fff;border-radius:0 16px 16px 0}
.concept-note>strong{font-family:var(--font-head);font-size:16px;color:var(--text-color)}
.concept-note p{margin:8px 0 0;font-size:15px;color:#4F5965}

.partition-demo{display:grid;grid-template-columns:1fr;gap:16px;justify-self:end;width:100%;max-width:500px}
.partition-card{background:#fff;border:1px solid var(--tile-border);border-radius:20px;padding:20px 22px;box-shadow:0 14px 32px rgba(34,45,60,.06)}
.partition-card.stronger-partition{border-color:rgba(42,141,93,.38)}
.partition-title{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:10px}
.partition-title span{font-family:var(--font-head);font-size:11px;font-weight:800;letter-spacing:.07em;color:var(--muted)}
.partition-title strong{font-family:var(--font-head);font-size:18px}
.partition-source{font-size:13px;color:var(--muted);margin-bottom:13px}
.branch-row{display:flex;gap:8px;align-items:stretch;margin-bottom:10px}
.branch{display:flex;align-items:center;justify-content:center;min-height:52px;border-radius:12px;font-family:var(--font-head);font-size:21px;font-weight:800;color:#fff}
.branch-three{flex:1;background:var(--grey)}
.six-branches{display:grid;grid-template-columns:repeat(6,1fr)}
.branch-one{background:var(--green)}
.partition-card p{margin:0;font-size:13.5px;color:#5A6470}

.family-demo{justify-self:end;display:grid;gap:14px;width:100%;max-width:540px}
.trap-family-card,.trap-plan-card{background:#fff;border:1px solid var(--tile-border);border-radius:22px;padding:20px;box-shadow:0 14px 32px rgba(34,45,60,.06)}
.trap-card-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:16px}
.trap-card-head span{font-family:var(--font-head);font-size:11px;font-weight:800;letter-spacing:.07em;color:var(--muted)}
.trap-card-head strong{font-family:var(--font-head);font-size:20px;line-height:1.1}
.cloud-row{margin-bottom:18px}
.mini-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}
.tile{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;border-radius:9px;font-family:var(--font-head);font-size:26px;font-weight:800;color:#fff;box-shadow:inset 0 -1px 0 rgba(255,255,255,.18)}
.tile.green{background:var(--green)}
.tile.amber{background:var(--yellow)}
.tile.slate{background:var(--grey)}

.family-branch-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.family-branch{display:grid;justify-items:center;gap:8px}
.branch-tile{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:11px;background:var(--green);color:#fff;font-family:var(--font-head);font-size:21px;font-weight:800}
.branch-word{font-family:var(--font-head);font-size:11px;font-weight:800;letter-spacing:.04em;color:#36404A;text-align:center}
.family-caption{margin:18px 2px 0;font-size:13.5px;line-height:1.45;color:var(--muted)}

.possible-family{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:18px}
.possible-family span{display:flex;align-items:center;justify-content:center;min-height:42px;padding:8px 10px;border:1px solid var(--tile-border);border-radius:12px;background:#FAFAFA;font-family:var(--font-head);font-size:13px;font-weight:800;color:#3F4852}
.pad-block{padding:16px;border-radius:18px;background:#F4F6F8;border:1px solid #E3E7EB}
.pad-title{margin-bottom:4px;text-align:center;font-family:var(--font-head);font-size:14px;font-weight:800;letter-spacing:.04em;color:var(--text-color)}
.pad-subtitle{margin-bottom:12px;text-align:center;font-size:12px;color:var(--muted)}
.pad-row{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:6px}
.pad-slot{display:flex;align-items:center;justify-content:center;min-height:42px;border-radius:10px;border:2px solid rgba(42,141,93,.56);background:#fff;font-family:var(--font-head);font-size:16px;font-weight:800;color:#1D232A}
.pad-slot.empty{background:transparent;border-color:rgba(88,101,116,.25)}
.route-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}
.route-step{padding:14px;border:1px solid var(--tile-border);border-radius:16px;background:#FBFBFB}
.route-label{display:block;margin-bottom:10px;font-family:var(--font-head);font-size:11px;font-weight:800;letter-spacing:.06em;color:var(--muted)}
.route-word{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.route-word span{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;border-radius:10px;background:var(--grey);color:#fff;font-family:var(--font-head);font-size:18px;font-weight:800}
.plan-caption{margin:16px 2px 0;font-size:13.5px;line-height:1.5;color:#4F5965}

.rabbit-note{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:flex-start;padding:16px 18px;border-radius:18px;background:#FFF8EF;border:1px solid rgba(223,149,22,.28)}
.rabbit-icon{display:flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:16px;background:rgba(223,149,22,.14);color:var(--yellow);flex:0 0 54px}
.rabbit-icon svg{width:34px;height:34px;display:block}
.rabbit-note strong{display:block;font-family:var(--font-head);font-size:16px;color:var(--text-color)}
.rabbit-note p{margin:4px 0 0;font-size:14px;line-height:1.55;color:#4F5965}

.role-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px}
.role-card{background:#fff;border:1px solid var(--tile-border);border-radius:18px;padding:22px;position:relative;overflow:hidden}
.role-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--blue)}
.burner-role:before{background:var(--yellow)}
.trap-role:before{background:var(--red)}
.role-card>span{display:block;margin-bottom:8px;font-family:var(--font-head);font-size:11px;font-weight:800;letter-spacing:.07em;color:var(--muted)}
.role-card>strong{display:block;margin-bottom:8px;font-family:var(--font-head);font-size:21px}
.role-card p{margin:0;font-size:15px;line-height:1.55;color:#525D68}
.role-rule{display:flex;flex-wrap:wrap;gap:6px 10px;margin-top:18px;padding:16px 18px;border-radius:14px;background:var(--chrome-bg);font-size:14px;color:#4B5560}
.role-rule strong{color:var(--text-color)}

.skill-luck-matrix{justify-self:end;display:grid;grid-template-columns:118px repeat(2,minmax(0,1fr));grid-template-rows:auto repeat(2,1fr);gap:8px;width:100%;max-width:520px}
.top-axis{grid-column:2/4;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.top-axis span{font-family:var(--font-head);font-size:10px;font-weight:800;letter-spacing:.055em;color:var(--muted);text-align:center;padding-bottom:4px}
.matrix-row-label{display:flex;align-items:center;justify-content:flex-end;text-align:right;padding-right:7px;font-family:var(--font-head);font-size:10px;font-weight:800;line-height:1.3;letter-spacing:.05em;color:var(--muted)}
.matrix-cell{min-height:132px;border:1px solid var(--tile-border);border-radius:16px;background:#fff;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:18px}
.matrix-cell strong{font-family:var(--font-head);font-size:17px;margin-bottom:4px}
.matrix-cell span{font-size:13px;color:var(--muted)}
.strong-helpful{border-top:4px solid var(--green)}
.strong-awkward{border-top:4px solid var(--blue)}
.weak-helpful{border-top:4px solid var(--yellow)}
.weak-awkward{border-top:4px solid var(--red)}

.analysis-section{padding-bottom:64px}
.analysis-intro{max-width:860px;margin-bottom:30px}
.analysis-intro p{max-width:820px}
.coach-lab{font-size:18px!important;color:var(--text-color)!important;margin-top:22px!important}
.analysis-visuals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.analysis-figure{margin:0;background:#fff;border:1px solid var(--tile-border);border-radius:22px;padding:16px;box-shadow:0 18px 42px rgba(34,45,60,.08)}
.analysis-label{display:grid;gap:2px;margin:2px 2px 13px}
.analysis-label span{font-family:var(--font-head);font-size:11px;font-weight:800;letter-spacing:.07em;color:var(--green)}
.analysis-label strong{font-family:var(--font-head);font-size:18px}
.analysis-figure img{display:block;width:100%;height:auto;border:1px solid #E2E4E7;border-radius:14px;background:#fff}
.analysis-figure figcaption{margin:11px 2px 1px;color:var(--muted);font-size:13.5px;line-height:1.45}

@media(max-width:900px){
  .partition-demo,.family-demo,.skill-luck-matrix{justify-self:start;max-width:620px}
  .role-grid{grid-template-columns:1fr}
  .analysis-visuals{grid-template-columns:1fr}
  .analysis-figure{max-width:620px}
}
@media(max-width:680px){
  .decision-pair{grid-template-columns:1fr}
  .skill-luck-matrix{grid-template-columns:94px repeat(2,minmax(0,1fr))}
  .matrix-cell{min-height:120px;padding:14px}
  .six-branches{grid-template-columns:repeat(3,1fr)}
  .family-branch-grid,.possible-family{grid-template-columns:repeat(2,minmax(0,1fr))}
  .route-steps{grid-template-columns:1fr}
  .pad-row{grid-template-columns:repeat(5,minmax(0,1fr))}
}
@media(max-width:480px){
  .trap-family-card,.trap-plan-card{padding:16px}
  .trap-card-head{flex-direction:column;align-items:flex-start}
  .rabbit-note{grid-template-columns:1fr}
  .skill-luck-matrix{grid-template-columns:70px repeat(2,minmax(0,1fr));gap:6px}
  .matrix-row-label,.top-axis span{font-size:8.5px}
  .matrix-cell{min-height:110px;padding:10px}
  .matrix-cell strong{font-size:14px}
  .matrix-cell span{font-size:11px}
}
