/* Trillionaires Tribe — geïsoleerde vormgeving voor de AI-contentscan */
.scan-page{--gold-rgb:217,174,62}
.scan-page .dots{opacity:.44}
.scan-page footer{margin-top:0}

.scan-hero{padding:clamp(8rem,10vw,9.5rem) 0 clamp(5rem,8vw,7.5rem)}
.scan-shell{width:min(1020px,92vw);display:grid;gap:clamp(2.4rem,5vw,4.2rem)}
.scan-intro{display:grid;gap:1.25rem;min-width:0}
.scan-intro h1{font-size:clamp(3rem,6vw,5.15rem);line-height:.95;max-width:16ch;overflow-wrap:normal}
.scan-intro .lead{max-width:61ch;line-height:1.65}
.scan-value{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--hair-soft);margin-top:.55rem}
.scan-value > div{display:grid;grid-template-columns:2.2rem 1fr;gap:.75rem;padding:1.05rem 1.1rem;border-right:1px solid var(--hair-soft);min-width:0}
.scan-value > div:last-child{border-right:0}
.scan-value-n{font-family:var(--mono);font-size:.58rem;color:var(--gold);letter-spacing:.1em;padding-top:.16rem}
.scan-value p{font-size:.78rem;color:var(--ash);line-height:1.5}
.scan-value b{font-family:var(--display);font-size:.9rem;color:var(--bone);font-weight:500}
.scan-human{display:grid;grid-template-columns:auto 1fr;gap:.75rem;align-items:start;max-width:760px;padding:.95rem 1.1rem;border-left:2px solid var(--gold);background:rgba(var(--gold-rgb),.035)}
.scan-live{display:block;width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 14px rgba(var(--gold-rgb),.75);margin-top:.42rem}
.scan-human p{color:var(--ash);font-size:.78rem;line-height:1.55}
.scan-human b{color:var(--bone);font-weight:500}

.scan-product{position:relative;width:100%;max-width:920px;margin-inline:auto;border:1px solid rgba(var(--gold-rgb),.42);background:var(--onyx);box-shadow:0 32px 90px rgba(0,0,0,.42);overflow:hidden;scroll-margin-top:6.5rem}
.scan-product::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,rgba(var(--gold-rgb),.045),transparent 34%);z-index:0}
.scan-product > *{position:relative;z-index:1}
.scan-product-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;background:rgba(10,10,9,.96);border-bottom:1px solid var(--hair-soft)}
.scan-product-top > div{display:grid;gap:.18rem}
.scan-product-top b{font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase}
.scan-kicker,.result-label{font-family:var(--mono);font-size:.54rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.scan-status{font-family:var(--mono);font-size:.55rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ash);display:flex;align-items:center;gap:.45rem}
.scan-status i{display:block;width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 14px rgba(var(--gold-rgb),.8)}
.scan-progress{padding:1.05rem 1.25rem;background:rgba(14,14,12,.97);border-bottom:1px solid var(--hair-soft)}
.scan-progress-bar{height:2px;background:rgba(255,255,255,.08);overflow:hidden}
.scan-progress-bar span{display:block;height:100%;width:33%;background:var(--gold);box-shadow:0 0 16px rgba(var(--gold-rgb),.4);transition:width .5s var(--ease)}
.scan-progress-meta{display:flex;justify-content:space-between;margin-top:.6rem;font-family:var(--mono);font-size:.53rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ash-dim)}

.scan-form{background:linear-gradient(160deg,rgba(24,24,21,.99),rgba(10,10,9,.99));padding:clamp(1.35rem,4vw,2.7rem);display:grid;gap:1.4rem}
.scan-step{border:0;padding:0;margin:0;display:grid;gap:1.15rem;min-width:0;animation:scanStepIn .45s var(--ease) both}
.scan-step[hidden]{display:none!important}
@keyframes scanStepIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.scan-step legend{font-family:var(--display);font-weight:600;font-size:clamp(1.55rem,3vw,2.25rem);line-height:1.08;letter-spacing:-.03em;padding:0;text-transform:none}
.scan-step-copy{color:var(--ash);font-size:.86rem;line-height:1.55;margin-top:-.5rem;max-width:62ch}
.scan-fields{display:grid;gap:1rem}
.scan-fields.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.scan-form .fld{display:grid;gap:.48rem;min-width:0}
.scan-form label:not(.choice):not(.scan-consent),.scan-form .field-label{font-family:var(--mono);font-size:.57rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ash);display:block}
.scan-form label b,.scan-form .field-label b{color:var(--gold);font-weight:500}
.scan-form input:not([type="radio"]):not([type="checkbox"]),.scan-form textarea,.scan-form select{width:100%;min-height:52px;border:1px solid rgba(255,255,255,.12);border-radius:0;background:rgba(255,255,255,.025);color:var(--bone);font-family:var(--body);font-size:.94rem;padding:.9rem 1rem;outline:none;transition:border-color .25s,box-shadow .25s,background .25s}
.scan-form textarea{min-height:112px;resize:vertical;line-height:1.55}
.scan-form input::placeholder,.scan-form textarea::placeholder{color:#777268}
.scan-form input:focus,.scan-form textarea:focus,.scan-form select:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(var(--gold-rgb),.09);background:rgba(var(--gold-rgb),.025)}
.scan-form input[aria-invalid="true"],.scan-form textarea[aria-invalid="true"],.scan-form select[aria-invalid="true"]{border-color:#D06B55}
.scan-form .err{display:none;color:#E18B76;font-family:var(--mono);font-size:.55rem;letter-spacing:.06em}
.scan-form .bad > .err{display:block}
.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}
.choice{display:block;cursor:pointer}
.choice input{position:absolute;opacity:0;pointer-events:none}
.choice > span{display:grid;gap:.18rem;min-height:74px;padding:.85rem .95rem;border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.02);transition:border-color .25s,background .25s,transform .25s}
.choice:hover > span{border-color:rgba(var(--gold-rgb),.55);transform:translateY(-1px)}
.choice input:focus-visible + span{outline:2px solid var(--gold);outline-offset:3px}
.choice input:checked + span{border-color:var(--gold);background:rgba(var(--gold-rgb),.09);box-shadow:inset 3px 0 var(--gold)}
.choice b{font-family:var(--display);font-size:.88rem;font-weight:500}
.choice small{color:var(--ash);font-size:.7rem}
.scan-consent{display:grid;grid-template-columns:auto 1fr;gap:.8rem;align-items:start;padding:1rem;border:1px solid var(--hair-soft);cursor:pointer}
.scan-consent input{width:18px;height:18px;margin:.15rem 0 0;accent-color:var(--gold)}
.scan-consent span{color:var(--ash);font-size:.76rem;line-height:1.55}
.scan-consent a{color:var(--gold);text-decoration:underline;text-underline-offset:3px}
.scan-consent.bad{border-color:#D06B55}
.scan-form-msg{display:none;padding:.85rem 1rem;border:1px solid var(--hair-soft);font-size:.8rem}
.scan-form-msg.fail{display:block;color:#E18B76;border-color:#D06B55;background:rgba(208,107,85,.06)}
.scan-controls{display:flex;align-items:center;justify-content:flex-end;gap:1rem;border-top:1px solid var(--hair-soft);padding-top:1.25rem}
.scan-controls [hidden]{display:none!important}
.scan-back{margin-right:auto;border:0;background:none;color:var(--ash);font-family:var(--mono);font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;padding:.9rem 0}
.scan-back:hover{color:var(--gold)}
.scan-controls .btn{min-width:190px}
.scan-trustline{display:flex;justify-content:center;flex-wrap:wrap;gap:.5rem 1.2rem;font-family:var(--mono);font-size:.49rem;letter-spacing:.11em;text-transform:uppercase;color:var(--ash-dim)}
.scan-trustline span{display:flex;align-items:center;gap:.45rem}
.scan-trustline span::before{content:"";width:3px;height:3px;background:var(--gold)}

.scan-loading{min-height:580px;background:linear-gradient(160deg,rgba(24,24,21,.99),rgba(10,10,9,.99));padding:clamp(2rem,5vw,4rem);text-align:center;place-content:center;justify-items:center;gap:1rem}
.scan-loading:not([hidden]){display:grid}
.scan-orbit{width:110px;aspect-ratio:1;border:1px solid var(--hair);border-radius:50%;display:grid;place-items:center;position:relative;margin-bottom:.7rem}
.scan-orbit::before{content:"";position:absolute;inset:-1px;border-radius:50%;border-top:1px solid var(--gold);animation:scanOrbit 1.5s linear infinite}
.scan-orbit img{width:42px;filter:drop-shadow(0 0 18px rgba(var(--gold-rgb),.28))}
@keyframes scanOrbit{to{transform:rotate(360deg)}}
.scan-loading h2{font-size:clamp(1.7rem,4vw,2.8rem);max-width:14ch}
.scan-loading-list{display:grid;gap:.7rem;text-align:left;width:min(100%,410px);margin-top:1rem}
.scan-loading-list span{position:relative;padding:.75rem 1rem .75rem 2.3rem;border:1px solid var(--hair-soft);color:var(--ash);font-size:.78rem}
.scan-loading-list span::before{content:"";position:absolute;left:1rem;top:50%;width:6px;height:6px;border-radius:50%;background:#47453f;transform:translateY(-50%)}
.scan-loading-list .is-running{color:var(--bone);border-color:var(--hair)}
.scan-loading-list .is-running::before{background:var(--gold);box-shadow:0 0 12px rgba(var(--gold-rgb),.8);animation:blink 1s infinite}
.scan-loading-list .is-done::before{background:var(--gold)}
.scan-loading-note{color:var(--ash-dim);font-size:.7rem;max-width:48ch;margin-top:.5rem}

.scan-result{background:linear-gradient(160deg,rgba(24,24,21,.99),rgba(10,10,9,.99));padding:clamp(1.35rem,4vw,3rem);display:grid;gap:1.6rem}
.scan-result[hidden]{display:none!important}
.result-head{display:grid;grid-template-columns:auto 1fr;gap:1.2rem;align-items:center;padding-bottom:1.4rem;border-bottom:1px solid var(--hair-soft)}
.score-ring{--score:0deg;width:92px;aspect-ratio:1;border-radius:50%;display:grid;place-content:center;text-align:center;position:relative;background:conic-gradient(var(--gold) var(--score),rgba(255,255,255,.08) 0)}
.score-ring[hidden]{display:none!important}
.score-ring::before{content:"";position:absolute;inset:5px;border-radius:50%;background:var(--onyx)}
.score-ring span,.score-ring small{position:relative;z-index:1}
.score-ring span{font-family:var(--display);font-weight:700;font-size:1.65rem;line-height:1;color:var(--gold)}
.score-ring small{font-family:var(--mono);font-size:.42rem;color:var(--ash-dim)}
.result-head h2{font-size:clamp(1.45rem,3vw,2.35rem);margin-top:.35rem;text-transform:none}
.result-diagnosis,.result-angle,.result-firstweek{padding:1.15rem 1.2rem;border:1px solid var(--hair-soft);background:rgba(255,255,255,.018)}
.result-diagnosis p,.result-angle p{color:var(--ash);font-size:.86rem;line-height:1.65;margin-top:.45rem}
.result-formats{display:grid;gap:.75rem;margin-top:.7rem}
.result-format{position:relative;padding:1.2rem 1.2rem 1.15rem 3.5rem;border:1px solid var(--hair-soft);background:rgba(255,255,255,.018);display:grid;gap:.5rem}
.result-format-number{position:absolute;left:1.1rem;top:1.35rem;font-family:var(--mono);font-size:.55rem;color:var(--gold)}
.result-format h3{font-size:1rem}
.result-format > p{color:var(--ash);font-size:.8rem;line-height:1.55}
.result-hook{display:grid;gap:.25rem;margin-top:.2rem;padding:.75rem .85rem;background:rgba(var(--gold-rgb),.06);border-left:2px solid var(--gold)}
.result-hook span{font-family:var(--mono);font-size:.48rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.result-hook q{font-family:var(--display);font-size:.86rem;line-height:1.45;color:var(--bone)}
.result-format small{color:var(--ash-dim);font-size:.68rem}
.result-firstweek ol{display:grid;gap:.55rem;margin:.65rem 0 0;padding-left:1.15rem;color:var(--ash);font-size:.8rem}
.result-firstweek li::marker{color:var(--gold);font-family:var(--mono)}
.result-cta{display:grid;gap:1rem;padding:1.35rem;border:1px solid var(--gold);background:rgba(var(--gold-rgb),.045)}
.result-cta h3{font-size:1.15rem;margin-top:.25rem}
.result-cta p{color:var(--ash);font-size:.78rem;margin-top:.35rem}
.result-note{font-size:.66rem;color:var(--ash-dim);line-height:1.55}

.scan-after{padding-top:clamp(4rem,7vw,6.5rem);background:rgba(255,255,255,.008)}
.scan-after-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--hair-soft);border:1px solid var(--hair-soft)}
.scan-after-grid article{padding:clamp(1.4rem,3vw,2.2rem);background:var(--void);display:grid;gap:.75rem}
.scan-after-grid article > span{font-family:var(--mono);font-size:.56rem;color:var(--gold)}
.scan-after-grid p{color:var(--ash);font-size:.84rem}

@media(max-width:760px){
  .scan-hero{padding-top:7rem}
  .scan-shell{gap:2.25rem}
  .scan-intro h1{font-size:clamp(2.65rem,12vw,4rem);max-width:12ch}
  .scan-value,.scan-fields.two,.choice-grid,.scan-after-grid{grid-template-columns:1fr}
  .scan-value > div{border-right:0;border-bottom:1px solid var(--hair-soft)}
  .scan-value > div:last-child{border-bottom:0}
  .scan-form{padding:1.2rem}
  .scan-form input:not([type="radio"]):not([type="checkbox"]),.scan-form textarea,.scan-form select{font-size:1rem}
  .scan-product-top,.scan-progress{padding-inline:1rem}
  .scan-controls{align-items:stretch;flex-direction:column-reverse}
  .scan-controls .btn,.scan-back{width:100%}
  .scan-back{text-align:center}
  .result-head{grid-template-columns:1fr;justify-items:start}
  .result-format{padding-left:1.15rem;padding-top:3.1rem}
  .result-format-number{top:1rem}
}
@media(max-width:380px){.scan-shell{width:calc(100% - 32px)}}
@media(prefers-reduced-motion:reduce){
  .scan-orbit::before{animation:none}
  .scan-step{animation:none}
  .scan-progress-bar span{transition:none}
}

/* v12 — mobiele contentscan polish */
@media(max-width:760px){
  .scan-hero{padding:calc(7.1rem + env(safe-area-inset-top)) 0 4.2rem}
  .scan-shell{width:calc(100% - 40px);gap:2rem}
  .scan-intro{gap:1rem}
  .scan-intro h1{font-size:clamp(2.55rem,11vw,3.55rem);line-height:.94;letter-spacing:-.05em;max-width:13ch;text-wrap:balance}
  .scan-intro .lead{font-size:1rem;line-height:1.6}
  .scan-human{padding:.9rem 1rem}
  .scan-product{box-shadow:0 22px 60px rgba(0,0,0,.38)}
  .scan-product-top{padding:.9rem 1rem}
  .scan-product-top b{font-size:.58rem}
  .scan-status{font-size:.5rem}
  .scan-progress{padding:.9rem 1rem}
  .scan-form{padding:1.15rem;gap:1.2rem}
  .scan-step legend{font-size:clamp(1.45rem,7vw,1.9rem);line-height:1.08}
  .choice > span{min-height:70px}
  .scan-controls .btn{min-height:54px}
  .scan-trustline{justify-content:flex-start;gap:.45rem .9rem;line-height:1.45}
  .scan-loading{min-height:500px;padding:2rem 1.15rem}
  .scan-result{padding:1.15rem;gap:1.3rem}
  .result-cta{padding:1.15rem}
  .scan-after{padding-top:4rem}
}
@media(max-width:380px){
  .scan-shell{width:calc(100% - 32px)}
  .scan-product-top{align-items:flex-start}
  .scan-status{max-width:8rem;text-align:right;line-height:1.4}
}
