/* Luminous Solutions – Copilot Opportunity Assessment */
:root{--red:#ed111f;--red2:#ff3540;--blue:#0867ed;--blue2:#16a7ff;--navy:#061a4d;--ink:#10131a;--muted:#667085;--line:#e7eaf0;--soft:#f6f8fc;--white:#fff;--font:"Segoe UI Variable Display","Segoe UI",system-ui,-apple-system,"Helvetica Neue",Roboto,Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-height:100vh;font-family:var(--font);color:var(--ink);background:linear-gradient(135deg,#fff 0%,#f5f9ff 58%,#fff6f7 100%);overflow-x:hidden}
a{color:inherit}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:8px}
.hidden{display:none!important}

/* Ambient background */
.aurora{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:0}
.aurora span{position:absolute;border-radius:50%;filter:blur(90px);opacity:.5;animation:drift 18s ease-in-out infinite alternate}
.aurora span:nth-child(1){width:520px;height:520px;left:-160px;top:-160px;background:rgba(8,103,237,.18)}
.aurora span:nth-child(2){width:480px;height:480px;right:-160px;bottom:-180px;background:rgba(237,17,31,.14);animation-delay:-6s}
.aurora span:nth-child(3){width:340px;height:340px;left:45%;top:35%;background:rgba(22,167,255,.10);animation-delay:-12s}
@keyframes drift{to{transform:translate(60px,40px) scale(1.12)}}

.app{position:relative;z-index:1;width:min(1120px,93vw);margin:auto;min-height:100vh;padding:22px 0 30px;display:flex;flex-direction:column}
.top{display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand img{display:block;width:300px;max-width:58vw;height:82px;object-fit:contain;object-position:left center}
.pill{display:inline-flex;align-items:center;gap:9px;font-size:12px;font-weight:800;color:#344054;padding:9px 15px;border:1px solid #dfe4ec;border-radius:99px;background:rgba(255,255,255,.85);backdrop-filter:blur(10px)}
.pill i{width:8px;height:8px;border-radius:50%;background:var(--red);box-shadow:0 0 0 4px rgba(237,17,31,.15);animation:pulse 2s infinite}
@keyframes pulse{50%{box-shadow:0 0 0 8px rgba(237,17,31,0)}}
.shell{margin:auto 0;padding:22px 0}
.card{position:relative;background:rgba(255,255,255,.9);backdrop-filter:blur(18px);border:1px solid rgba(8,103,237,.12);box-shadow:0 30px 100px rgba(15,35,70,.13);border-radius:32px;padding:clamp(24px,5vw,58px);overflow:hidden}
.card:before{content:"";position:absolute;left:0;top:0;width:100%;height:6px;background:linear-gradient(90deg,var(--red),var(--blue),var(--red));background-size:200% 100%;animation:sheen 6s linear infinite}
@keyframes sheen{to{background-position:200% 0}}
.view{animation:enter .55s cubic-bezier(.2,.8,.2,1)}
@keyframes enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

/* Intro */
.heroGrid{display:grid;grid-template-columns:1fr 300px;gap:40px;align-items:center}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:900;letter-spacing:.17em;color:var(--blue);text-transform:uppercase}
.eyebrow:before{content:"";width:34px;height:4px;border-radius:9px;background:linear-gradient(90deg,var(--red),var(--blue))}
.eyebrow.light{color:#85caff}
.hero h1{font-size:clamp(39px,6vw,70px);line-height:1.01;margin:16px 0 20px;letter-spacing:-.045em;color:var(--navy)}
.gradient{background:linear-gradient(100deg,var(--red),#a6001a 38%,var(--blue) 70%,var(--blue2));-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{font-size:clamp(16px,2vw,20px);line-height:1.62;color:#566176;max-width:680px;margin:0}
.facts{display:flex;gap:10px;flex-wrap:wrap;margin:26px 0 0}
.fact{padding:10px 15px;border-radius:14px;background:var(--soft);border:1px solid var(--line);color:#344054;font-size:13px}
.fact b{color:var(--red);font-size:16px;margin-right:3px}
.heroVisual{position:relative;width:280px;height:280px;margin:auto;display:grid;place-items:center}
.ring{position:absolute;border-radius:50%;border:1px dashed rgba(8,103,237,.28)}
.r1{inset:0;animation:spin 30s linear infinite}.r2{inset:26px;border-color:rgba(237,17,31,.25);animation:spin 22s linear infinite reverse}.r3{inset:52px;border-style:solid;border-color:rgba(8,103,237,.12)}
.r1:after,.r2:after{content:"";position:absolute;width:12px;height:12px;border-radius:50%;top:-6px;left:50%;background:var(--blue);box-shadow:0 0 14px var(--blue)}
.r2:after{background:var(--red);box-shadow:0 0 14px var(--red)}
@keyframes spin{to{transform:rotate(360deg)}}
.heroOrb{width:150px;height:150px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;background:radial-gradient(circle at 30% 25%,#2b8bff,#073b9d 55%,#5d0612);box-shadow:0 25px 60px rgba(8,59,157,.35),inset 0 0 30px rgba(255,255,255,.15)}
.heroOrb span{font-size:62px;font-weight:900;line-height:1}
.heroOrb small{font-size:10px;letter-spacing:.18em;font-weight:800;opacity:.8}
.capture{margin-top:32px;padding:20px;border:1px solid #dfe5ef;border-radius:20px;background:linear-gradient(110deg,#fafcff,#fff8f8)}
.captureFields{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:12px;margin-bottom:14px}
.captureFields label{font-size:13px;font-weight:800;color:#1c2636;display:flex;flex-direction:column;gap:7px}
.req{color:var(--red)}.opt{font-weight:500;color:#8490a2}
.input{width:100%;min-width:0;border:1px solid #cfd6e2;border-radius:12px;padding:14px 15px;font:inherit;font-weight:500;outline:0;background:#fff;transition:border-color .2s,box-shadow .2s}
.input:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(8,103,237,.12)}
.input.invalid{border-color:var(--red);box-shadow:0 0 0 4px rgba(237,17,31,.1)}
.privacy{font-size:12px;color:#8490a2;margin:12px 2px 0}
.privacy.error{color:var(--red);font-weight:700}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;color:#fff;text-decoration:none;background:linear-gradient(110deg,var(--blue),#006bed);padding:14px 22px;border-radius:999px;font:inherit;font-weight:800;font-size:15px;cursor:pointer;box-shadow:0 12px 25px rgba(8,103,237,.22);transition:transform .2s,filter .2s,box-shadow .2s}
.btn:hover{transform:translateY(-2px);filter:brightness(1.06)}
.btn.red{background:linear-gradient(110deg,var(--red),var(--red2));box-shadow:0 12px 25px rgba(237,17,31,.22)}
.btn.big{padding:16px 28px;font-size:16px}
.btn.secondary{background:#fff;color:#344054;box-shadow:none;border:1px solid #d8dee8}
.btn:disabled{opacity:.35;cursor:not-allowed;transform:none}

/* Quiz */
.progress-top{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:14px}
.progress-label{font-size:13px;font-weight:700;color:#68758a}
.dots{display:flex;gap:6px}
.dots span{width:9px;height:9px;border-radius:50%;background:#e3e8f0;transition:background .3s,transform .3s}
.dots span.done{background:var(--blue)}
.dots span.now{background:var(--red);transform:scale(1.35)}
.bar{height:8px;background:#edf0f5;border-radius:10px;overflow:hidden;margin-bottom:34px}
.bar>div{height:100%;width:10%;background:linear-gradient(90deg,var(--red),var(--blue));transition:width .5s cubic-bezier(.2,.8,.2,1);border-radius:10px}
.question{animation:enter .45s cubic-bezier(.2,.8,.2,1)}
.qtag{display:inline-block;color:var(--blue);background:rgba(8,103,237,.08);padding:6px 11px;border-radius:99px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:1.4px;margin-bottom:14px}
.question h2{font-size:clamp(25px,4vw,39px);line-height:1.15;margin:0 0 9px;letter-spacing:-.03em;color:var(--navy)}
.hint{color:#758197;font-size:15px;margin:0 0 24px}
.answers{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}
.answer{display:flex;gap:12px;align-items:center;text-align:left;font:inherit;font-size:15px;color:#1c2636;background:#fff;border:1px solid #e0e5ed;border-radius:15px;padding:14px 15px;cursor:pointer;min-height:60px;transition:.18s}
.answer:hover{border-color:#77a6f8;background:#f8fbff;transform:translateY(-2px);box-shadow:0 10px 24px rgba(8,59,157,.08)}
.answer.selected{background:linear-gradient(110deg,rgba(237,17,31,.055),rgba(8,103,237,.08));border-color:var(--blue);box-shadow:inset 4px 0 var(--red)}
.check{width:23px;height:23px;flex:0 0 23px;border-radius:7px;border:1px solid #c8cfda;display:grid;place-items:center;font-size:12px;font-weight:900;color:#98a2b3}
.selected .check{background:var(--blue);border-color:var(--blue);color:#fff}
.nav{display:flex;justify-content:space-between;margin-top:30px}
.micro{font-size:12px;color:#98a2b3;text-align:center;margin-top:20px}

/* Result */
.result{text-align:center}
.result-hero{position:relative;border-radius:26px;padding:clamp(24px,5vw,50px);background:linear-gradient(135deg,#073b9d,#02091d 50%,#5d0612);color:#fff;overflow:hidden}
.result-hero:before,.result-hero:after{content:"";position:absolute;width:320px;height:320px;border-radius:50%;filter:blur(80px);opacity:.38}
.result-hero:before{background:#008cff;left:-110px;top:-140px}
.result-hero:after{background:#ff1429;right:-110px;bottom:-160px}
.result-grid{position:relative;z-index:1;display:grid;grid-template-columns:290px 1fr;gap:40px;align-items:center;text-align:left}
.orb{--deg:0deg;width:250px;height:250px;margin:auto;border-radius:50%;padding:12px;background:conic-gradient(#ff2638 0deg,#159dff var(--deg),rgba(255,255,255,.13) var(--deg));box-shadow:0 0 80px rgba(24,148,255,.32)}
.orb-inner{width:100%;height:100%;border-radius:50%;background:#07172f;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.12)}
.score{font-size:82px;font-weight:900;line-height:.85;letter-spacing:-5px}
.outof{font-size:12px;color:#afc7e9;margin-top:12px;font-weight:700;letter-spacing:.06em}
.level{font-size:clamp(31px,5vw,58px);font-weight:900;line-height:1.02;margin:10px 0 14px;letter-spacing:-.04em}
.result-copy{color:#d9e5f6;line-height:1.6;font-size:17px;margin:0}
.potential{display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding:8px 13px;border-radius:99px;background:rgba(255,255,255,.1);font-size:12px;font-weight:800}
.potential i{width:8px;height:8px;border-radius:50%;background:#42ffb0;box-shadow:0 0 12px #42ffb0}
.legend{margin:22px auto 0;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.band{font-size:12px;padding:11px 6px;border-radius:12px;background:#f3f5f8;color:#6f7b8e;transition:.3s}
.band b{display:block;font-size:13px}
.band.active{color:#fff;background:linear-gradient(110deg,var(--red),var(--blue));transform:translateY(-3px);box-shadow:0 12px 25px rgba(8,59,157,.2)}
.sendStatus{display:inline-flex;align-items:center;gap:10px;margin:22px auto 0;padding:10px 16px;border-radius:99px;font-size:13px;font-weight:700;color:#475467;background:#f3f6fb;border:1px solid #e3e8f0}
.sendStatus.ok{color:#05603a;background:#ecfdf3;border-color:#abefc6}
.sendStatus.err{color:#b42318;background:#fef3f2;border-color:#fecdca}
.spinner{width:14px;height:14px;border-radius:50%;border:2px solid #c8d3e6;border-top-color:var(--blue);animation:spin .8s linear infinite}
.sendStatus.ok .spinner,.sendStatus.err .spinner{display:none}
.summary-title{font-size:22px;margin:30px 0 14px;color:var(--navy)}
.summary{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;text-align:left}
.summary div{padding:17px 18px;border-radius:16px;background:#f8faff;border:1px solid #e3e8f0;color:#5f6e83;font-size:13px}
.summary strong{color:#121b29;display:flex;justify-content:space-between;margin-bottom:8px;font-size:15px}
.summary strong em{font-style:normal;color:var(--blue);font-size:13px}
.meter{height:6px;border-radius:9px;background:#e6ebf3;overflow:hidden;margin-bottom:9px}
.meter i{display:block;height:100%;width:0;border-radius:9px;background:linear-gradient(90deg,var(--red),var(--blue));transition:width 1.2s cubic-bezier(.2,.8,.2,1)}
.cta{margin-top:24px;padding:30px;border-radius:22px;background:linear-gradient(110deg,#fff5f6,#f3f8ff);border:1px solid #dfe5ef}
.cta h3{font-size:clamp(23px,4vw,34px);margin:0 0 8px;color:var(--navy)}
.cta p{color:#657186;max-width:680px;margin:0 auto 18px;line-height:1.55}
.actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.contact-note{font-size:12px;color:#8792a3;margin-top:14px}
.foot{text-align:center;font-size:12px;color:#8792a3;padding-top:10px}
.foot a{text-decoration:none}.foot a:hover{color:var(--blue)}

@media(max-width:860px){
  .heroGrid{grid-template-columns:1fr}
  .heroVisual{display:none}
  .captureFields{grid-template-columns:1fr 1fr}
  .fieldWide{grid-column:1/-1}
}
@media(max-width:760px){
  .result-grid{grid-template-columns:1fr;text-align:center}
  .answers,.summary{grid-template-columns:1fr}
  .legend{grid-template-columns:repeat(2,1fr)}
  .top .pill{display:none}
  .brand img{height:64px}
  .captureFields{grid-template-columns:1fr}
  .capture .btn{width:100%}
  .card{border-radius:22px}
  .orb{width:210px;height:210px}
  .score{font-size:68px}
  .dots{display:none}
}
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{animation:none!important;transition:none!important}
}
@media print{
  .aurora,.actions,.contact-note,.sendStatus,.foot{display:none!important}
  body{background:#fff}
  .card{box-shadow:none;border:0;padding:0}
  .result-hero,.band.active{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
