:root{--ink:#f7f7f2;--black:#080909;--muted:#a8aaa6;--line:#292b2a;--acid:#d8ff35;--violet:#7657ff;--card:#111312}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--ink);font-family:Arial,Helvetica,sans-serif}.lab-nav{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,5vw,76px);border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(8,9,9,.94);backdrop-filter:blur(14px);z-index:10}.lab-brand,.back-link,footer a{color:inherit;text-decoration:none}.lab-brand{font-weight:900;letter-spacing:.18em}.brand-spark{display:inline-block;width:10px;height:10px;background:var(--acid);border-radius:50%;margin-right:10px;box-shadow:0 0 18px var(--acid)}.back-link{font-size:.85rem;color:var(--muted)}.hero{min-height:78vh;display:flex;flex-direction:column;justify-content:center;padding:clamp(70px,9vw,140px) clamp(22px,8vw,130px);position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:42vw;height:42vw;border-radius:50%;right:-10vw;top:8%;background:radial-gradient(circle at 35% 35%,#e7ff74 0,#7dff72 15%,#7657ff 42%,transparent 68%);filter:blur(8px);opacity:.65}.eyebrow,.step{font-size:.76rem;font-weight:800;letter-spacing:.22em;color:var(--acid)}h1,h2,p{margin-top:0}.hero h1{font-size:clamp(4rem,11vw,10rem);line-height:.78;letter-spacing:-.07em;margin:22px 0 36px;position:relative;z-index:1}.hero h1 span{color:transparent;-webkit-text-stroke:1px var(--ink)}.hero-copy{max-width:620px;color:#c9cbc7;font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.55;position:relative;z-index:1}.primary-cta{display:inline-flex;width:max-content;align-items:center;gap:28px;border:0;border-radius:100px;background:var(--acid);color:#0a0b0a;text-decoration:none;font-weight:800;padding:17px 25px;cursor:pointer;margin-top:20px;position:relative;z-index:1}.lab-section,.results-section,.idea-section,.made-section{padding:clamp(70px,9vw,130px) clamp(22px,6vw,96px);border-top:1px solid var(--line)}.section-heading{display:grid;grid-template-columns:1.4fr .8fr;gap:40px;align-items:end;margin-bottom:45px}.section-heading h2,.idea-section h2,.made-section h2{font-size:clamp(2.4rem,5vw,5rem);line-height:.98;letter-spacing:-.05em;margin-bottom:0}.section-heading>p,.idea-section>div>p,.made-section>p{color:var(--muted);line-height:1.6}.concept-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.concept-card{min-height:240px;padding:24px;background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:18px;text-align:left;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 1fr auto auto;cursor:pointer;transition:.25s}.concept-card:hover{transform:translateY(-4px);border-color:#626662}.concept-card.selected{border-color:var(--acid);box-shadow:inset 0 0 0 1px var(--acid)}.concept-number{color:var(--muted);font-size:.75rem}.concept-icon{font-size:4.5rem;align-self:center;justify-self:center;color:var(--acid);text-shadow:0 0 25px rgba(216,255,53,.5);grid-column:1/3}.concept-card strong{font-size:1.25rem;grid-column:1/3}.concept-card small{color:var(--muted);margin-top:8px;grid-column:1/3}.compact{grid-template-columns:1fr;margin-bottom:28px}.option-row{display:flex;flex-wrap:wrap;gap:12px}.option-row button{background:transparent;color:var(--ink);border:1px solid #4a4d4b;border-radius:100px;padding:14px 21px;font-weight:700;cursor:pointer}.option-row button.selected{background:var(--violet);border-color:var(--violet)}.controls-section{padding-top:65px;padding-bottom:65px}.vote-action{margin-top:35px;display:flex;align-items:center;gap:24px}.submit-vote:disabled{opacity:.35;cursor:not-allowed}.vote-action p{color:var(--muted);margin:20px 0 0}.results-section{background:#efefe9;color:#101110}.results-section .step{color:#5b43d6}.results-section .section-heading>p{color:#60635f}.result-row{display:grid;grid-template-columns:minmax(160px,240px) 1fr 48px;gap:20px;align-items:center;padding:18px 0;border-top:1px solid #caccc6}.result-bar{height:12px;background:#d4d5d0;border-radius:100px;overflow:hidden}.result-fill{height:100%;background:linear-gradient(90deg,var(--violet),#a8d628);border-radius:inherit;transition:width .5s}.result-value{text-align:right;font-weight:800}.idea-section{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,9vw,130px)}form{display:flex;flex-direction:column;gap:12px}label{font-size:.8rem;font-weight:800;letter-spacing:.08em}label span,.form-note{color:var(--muted);font-weight:400}textarea,input{width:100%;background:#111312;color:var(--ink);border:1px solid #3b3e3c;border-radius:12px;padding:16px;font:inherit}textarea{min-height:160px;resize:vertical}.form-note{font-size:.8rem;line-height:1.5}.made-section{text-align:center;background:radial-gradient(circle at 50% 120%,rgba(118,87,255,.55),transparent 50%)}.made-section h2{max-width:900px;margin:18px auto 24px}.made-section>p{max-width:620px;margin-left:auto;margin-right:auto}.text-link{color:var(--acid);font-weight:800;text-decoration:none}footer{padding:28px clamp(22px,6vw,96px);display:flex;justify-content:space-between;color:var(--muted);font-size:.85rem;border-top:1px solid var(--line)}footer p{margin:0}@media(max-width:800px){.section-heading,.idea-section{grid-template-columns:1fr}.concept-grid{grid-template-columns:1fr 1fr}.hero:after{width:85vw;height:85vw;right:-35vw}.vote-action{align-items:flex-start;flex-direction:column}.result-row{grid-template-columns:120px 1fr 38px}}@media(max-width:520px){.concept-grid{grid-template-columns:1fr}.hero h1{font-size:4.2rem}.result-row{grid-template-columns:1fr 42px}.result-bar{grid-row:2;grid-column:1/3}footer{flex-direction:column;gap:10px}}

/* Privacy and optional analytics choices */
#haske-privacy-controls {
  position: relative;
  z-index: 1400;
}

.privacy-consent-panel {
  position: fixed;
  right: 1.25rem;
  bottom: 1.25rem;
  left: 1.25rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  max-width: 1120px;
  margin: 0 auto;
  padding: 1.25rem 1.4rem;
  color: #f8f4ec;
  background: rgba(12, 12, 14, 0.98);
  border: 1px solid rgba(203, 164, 75, 0.55);
  box-shadow: 0 18px 60px rgba(0, 0, 0, 0.5);
}

.privacy-consent-copy {
  max-width: 720px;
}

.privacy-consent-copy h2 {
  margin: 0 0 0.35rem;
  color: #f2d588;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(1.45rem, 3vw, 1.9rem);
  font-weight: 500;
}

.privacy-consent-copy p {
  margin: 0 0 0.45rem;
  color: #e4ded2;
  font-size: 0.88rem;
  line-height: 1.6;
}

.privacy-consent-copy a {
  color: #f2d588;
  font-size: 0.8rem;
  text-underline-offset: 0.2em;
}

.privacy-consent-actions {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.65rem;
}

.privacy-button,
.privacy-choice-launcher,
.policy-choice-button {
  min-height: 44px;
  padding: 0.72rem 1rem;
  border: 1px solid #cba44b;
  border-radius: 0;
  font: 600 0.72rem/1.2 Montserrat, Arial, sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  cursor: pointer;
}

.privacy-button-primary,
.policy-choice-button {
  color: #101012;
  background: #d8b85e;
}

.privacy-button-secondary,
.privacy-choice-launcher {
  color: #f2d588;
  background: #151518;
}

.privacy-button:hover,
.privacy-button:focus-visible,
.privacy-choice-launcher:hover,
.privacy-choice-launcher:focus-visible,
.policy-choice-button:hover,
.policy-choice-button:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 2px;
}

.privacy-choice-launcher {
  position: fixed;
  bottom: 0.8rem;
  left: 0.8rem;
  min-height: 38px;
  padding: 0.55rem 0.7rem;
  font-size: 0.62rem;
  box-shadow: 0 8px 26px rgba(0, 0, 0, 0.35);
}

@media (max-width: 760px) {
  .privacy-consent-panel {
    right: 0.65rem;
    bottom: 0.65rem;
    left: 0.65rem;
    display: block;
    max-height: calc(100vh - 1.3rem);
    overflow-y: auto;
    padding: 1rem;
  }

  .privacy-consent-actions {
    justify-content: stretch;
    margin-top: 0.85rem;
  }

  .privacy-button {
    flex: 1 1 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .privacy-consent-panel,
  .privacy-choice-launcher {
    scroll-behavior: auto;
  }
}
