:root{
  --navy:#1A2347;
  --blue:#4DB8E8;
  --orange:#F7941D;
  --orange-text:#E07E06;
  --cloud:#F2F7FB;
  --rule:#E4E9F2;
}
*{ box-sizing:border-box; }
body{
  margin:0; background:var(--cloud); color:var(--navy);
  font-family:'Nunito Sans', sans-serif;
}
h1,h2,h3{ font-family:'Bricolage Grotesque', sans-serif; }

.sk-header{ background:var(--navy); color:#fff; padding:18px 24px; display:flex; align-items:baseline; gap:14px; flex-wrap:wrap; }
.sk-logo{ color:#fff; text-decoration:none; font-family:'Bricolage Grotesque', sans-serif; font-weight:800; font-size:1.2rem; }
.sk-header-tag{ margin:0; color:var(--blue); font-weight:700; font-size:.85rem; text-transform:uppercase; letter-spacing:.08em; }

.sk-fit-wrap{ max-width:760px; margin:0 auto; padding:40px 20px 80px; }
.sk-fit-head{ text-align:center; max-width:600px; margin:0 auto 32px; }
.sk-fit-eyebrow{ font-weight:800; font-size:13px; letter-spacing:.14em; text-transform:uppercase; color:var(--orange-text); display:inline-block; margin-bottom:12px; }
.sk-fit-head h1{ font-size:clamp(28px,3.4vw,40px); font-weight:800; color:var(--navy); margin:0; line-height:1.15; }
.sk-fit-head p{ color:#5A6484; margin-top:12px; line-height:1.6; }

.sk-fit-card{ background:#fff; border-radius:18px; box-shadow:0 10px 30px rgba(26,35,71,.10); padding:36px 32px; }
@media(max-width:600px){ .sk-fit-card{ padding:26px 20px; } }

.sk-fit-progress{ display:flex; gap:6px; margin-bottom:28px; }
.sk-fit-progress span{ height:5px; border-radius:99px; flex:1; background:var(--rule); }
.sk-fit-progress span.done{ background:var(--blue); }

.sk-fit-step{ display:none; }
.sk-fit-step.active{ display:block; animation:sk-fit-fade .25s ease; }
@keyframes sk-fit-fade{ from{opacity:0; transform:translateY(6px);} to{opacity:1; transform:translateY(0);} }

.sk-fit-q{ font-size:22px; font-weight:800; color:var(--navy); margin:0 0 8px; line-height:1.3; }
.sk-fit-sub{ color:#5A6484; font-size:15px; margin:0 0 24px; line-height:1.55; }

.sk-fit-options{ display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:8px; }
.sk-fit-options.sk-fit-options--stack{ grid-template-columns:1fr; }
.sk-fit-opt{ border:2px solid var(--rule); background:#fff; border-radius:16px; padding:20px 16px; text-align:center; cursor:pointer; font-family:inherit; transition:border-color .15s ease, background .15s ease; }
.sk-fit-opt:hover{ border-color:var(--blue); }
.sk-fit-opt.selected{ border-color:var(--orange); background:#FFF7EE; }
.sk-fit-opt-icon{ display:block; margin:0 auto 10px; width:120px; height:120px; }
.sk-fit-opt-icon img{ width:100%; height:100%; object-fit:contain; border-radius:8px; }
.sk-fit-opt-label{ font-weight:800; color:var(--navy); font-size:15px; display:block; }
.sk-fit-opt-note{ font-weight:500; color:#8892AC; font-size:12.5px; display:block; margin-top:4px; }

label.sk-fit-field{ display:block; font-weight:700; color:var(--navy); font-size:14px; margin:18px 0 8px; }
input[type="number"], input[type="text"], input[type="email"], textarea{
  width:100%; border:2px solid var(--rule); border-radius:12px; padding:12px 14px; font-size:15px; font-family:inherit; color:var(--navy);
}
input:focus, textarea:focus{ outline:none; border-color:var(--blue); }

.sk-fit-btnrow{ display:flex; gap:12px; margin-top:28px; align-items:center; flex-wrap:wrap; }
.sk-fit-btn{ font-family:inherit; font-weight:800; font-size:15px; border-radius:999px; padding:14px 28px; border:2px solid transparent; cursor:pointer; text-decoration:none; display:inline-flex; align-items:center; gap:8px; }
.sk-fit-btn--primary{ background:var(--navy); color:#fff; }
.sk-fit-btn--primary[disabled]{ opacity:.4; cursor:not-allowed; }
.sk-fit-btn--ghost{ background:transparent; color:var(--navy); border-color:var(--rule); }
.sk-fit-btn--accent{ background:var(--orange); color:#fff; }

.sk-fit-hint{ font-size:13px; color:#8892AC; margin-top:6px; }

.sk-fit-result{ border:2px solid var(--rule); border-radius:16px; padding:22px 20px; margin-bottom:16px; }
.sk-fit-result.sk-fit-result--best{ border-color:var(--blue); background:#F5FBFF; }
.sk-fit-result h3{ margin:0 0 4px; font-size:18px; font-weight:800; color:var(--navy); }
.sk-fit-result .sk-fit-size{ font-weight:800; color:var(--orange-text); }
.sk-fit-result p{ margin:6px 0; color:#5A6484; font-size:14px; line-height:1.5; }
.sk-fit-badge{ display:inline-block; font-size:11px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; padding:4px 10px; border-radius:999px; margin-left:8px; vertical-align:middle; }
.sk-fit-badge--live{ background:#E7F6EC; color:#1E7A3E; }
.sk-fit-badge--soon{ background:#FFF3DE; color:#8A5A00; }

.sk-fit-restart{ background:none; border:none; color:#8892AC; text-decoration:underline; cursor:pointer; font-size:13px; font-family:inherit; margin-top:18px; }
.sk-fit-error{ color:#B3261E; font-size:13px; margin-top:8px; display:none; }
.sk-fit-synced{ text-align:center; color:#8892AC; font-size:12px; margin-top:16px; }

.sk-footer{ text-align:center; padding:24px; color:#5A6484; font-size:13px; }
.sk-footer a{ color:var(--navy); }
