/* Venera layer on top of the base site styles */
:root{--mono:"JetBrains Mono",ui-monospace,Menlo,monospace;--up:#7fd9a8;--down:#ff8a7a;--warn:#ffcf6e}

.brand{display:inline-flex;align-items:center;gap:10px}
.brand .mark{width:30px;height:30px;object-fit:contain}
.head-right{justify-self:end;display:flex;align-items:center;gap:18px}
.dots-btn{justify-self:auto}
.launch{display:inline-flex;align-items:center;gap:10px;font-size:8.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;padding:11px 16px 11px 18px;border:1px solid rgba(255,255,255,.28);background:rgba(12,13,15,.4);backdrop-filter:blur(6px);transition:background .35s,color .35s,border-color .35s}
.launch i{font-style:normal;font-size:12px;letter-spacing:0;transition:transform .35s var(--ease)}
.launch:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.launch:hover i{transform:translate(2px,-2px)}
.term-tag{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);border:1px solid var(--line);padding:7px 10px}

/* hero copy + call to action */
.s1 .copy{grid-column:5;margin-left:0;max-width:230px}
.cta{display:inline-flex;align-items:center;gap:12px;margin-top:22px;font-size:8.5px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;padding:14px 20px;background:var(--ink);color:var(--bg);transition:transform .35s var(--ease),box-shadow .35s}
.cta i{width:18px;height:1px;background:currentColor}
.cta:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(255,255,255,.12)}

/* the technology hook: a live status line across the bottom of the hero */
.hook{position:absolute;left:calc(var(--pad) + (100% - 2*var(--pad))/5);right:var(--pad);bottom:4.2vh;display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;font-family:var(--mono);font-size:10.5px;color:var(--ink-2)}
.pill{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border:1px solid var(--line);background:rgba(12,13,15,.55);backdrop-filter:blur(6px);white-space:nowrap}
.live-dot b{width:6px;height:6px;border-radius:50%;background:var(--up);box-shadow:0 0 0 0 rgba(127,217,168,.6);animation:pulse 1.8s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(127,217,168,.55)}70%{box-shadow:0 0 0 8px rgba(127,217,168,0)}100%{box-shadow:0 0 0 0 rgba(127,217,168,0)}}
.pipe{margin-left:auto;letter-spacing:.06em;color:var(--ink)}
.pipe i{font-style:normal;color:var(--accent);margin:0 4px}

.s2 .stat{margin-top:10px;font-family:var(--mono);font-size:10.5px;color:var(--up);min-height:1.4em}

/* whale tape */
.tape{grid-column:2/6;margin-top:7vh;border-top:1px solid var(--line);font-family:var(--mono);font-size:12px}
.tape-head,.tape-row{display:grid;grid-template-columns:70px 1.4fr 70px 1.2fr 90px;gap:16px;padding:13px 0;border-bottom:1px solid var(--line);align-items:center}
.tape-head{font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3)}
.tape-row{transition:background .4s}
.tape-row:hover{background:rgba(255,255,255,.03)}
.tape-row .t{color:var(--ink-3)}
.tape-row .w{color:var(--ink-2)}
.tape-row .s{text-transform:uppercase;letter-spacing:.12em;font-size:10px}
.tape-row.buy .s{color:var(--up)}
.tape-row.sell .s{color:var(--down)}
.tape-row .k{color:var(--ink)}
.r{text-align:right}
.tape-row.fresh{animation:fresh 2.4s var(--ease)}
@keyframes fresh{0%{background:rgba(43,77,255,.22)}100%{background:transparent}}
.tape-empty{padding:26px 0;color:var(--ink-3)}

/* steps */
.steps{grid-column:2/6;list-style:none;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);margin-top:8vh}
.steps li{padding:28px 1.6vw 36px 0;border-right:1px solid var(--line);position:relative}
.steps li:last-child{border-right:0}
.steps .no{font-family:var(--mono);font-size:10px;color:var(--accent);letter-spacing:.12em}
.steps h3{font-family:var(--serif);font-weight:400;font-size:26px;line-height:1.15;margin:14px 0 12px}

/* faq */
.faq{grid-column:2/6;margin-top:8vh;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line);padding:22px 0}
.faq summary{cursor:pointer;list-style:none;font-family:var(--serif);font-size:clamp(22px,1.9vw,30px);display:flex;justify-content:space-between;gap:20px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--sans);font-weight:300;color:var(--ink-3);transition:transform .35s var(--ease)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{margin-top:14px;max-width:640px;font-size:12px}

@media (max-width:900px){
  .site-header{grid-template-columns:1fr auto}
  .launch{padding:10px 12px}
  .launch span{display:none}
  .launch i{font-size:14px}
  .hook{left:22px;right:22px;bottom:2.4vh;font-size:9.5px;gap:6px}
  .pipe{display:none}
  .s1 .title{margin-bottom:34vh}
  .s1 .copy{bottom:7vh;max-width:260px}
  .tape,.steps,.faq{grid-column:1}
  .tape-head,.tape-row{grid-template-columns:44px 1fr 44px 1fr 64px;gap:8px;font-size:11px}
  .steps{grid-template-columns:1fr 1fr}
  .steps li:nth-child(2){border-right:0}
}

.scroll-hint{display:none}

/* hero side rails: live agent feed (left), latest signal and audit (right) */
.rail{position:absolute;font-family:var(--mono);font-size:10.5px;color:var(--ink-2);z-index:5}
.rail-h{display:flex;align-items:center;gap:8px;font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3);margin-bottom:12px}
.rail-h b{width:5px;height:5px;border-radius:50%;background:var(--up);animation:pulse 1.8s infinite}
.rail-l{left:var(--pad);top:52vh;width:calc((100% - 2*var(--pad))/5 - 36px);max-height:30vh;overflow:hidden;
  -webkit-mask-image:linear-gradient(#000 70%,transparent);mask-image:linear-gradient(#000 70%,transparent)}
.rail-l ul{list-style:none}
.rail-l li{padding:7px 0;border-top:1px solid var(--line);line-height:1.5;animation:feedIn .6s var(--ease)}
.rail-l li i{display:block;font-style:normal;font-size:8.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);margin-bottom:2px}
.rail-l li.signal{color:var(--ink)}
.rail-l li.warn{color:var(--warn)}
@keyframes feedIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.muted{color:var(--ink-3)}
.rail-r{right:var(--pad);top:15vh;width:calc((100% - 2*var(--pad))/5 - 10px);display:flex;flex-direction:column;gap:12px}
.card{display:block;border:1px solid var(--line);background:rgba(12,13,15,.6);backdrop-filter:blur(8px);padding:14px 14px 13px;transition:border-color .3s,background .3s}
.card:hover{border-color:rgba(255,255,255,.22);background:rgba(20,22,26,.7)}
.card .rail-h{margin-bottom:9px}
.card .big{font-family:var(--serif);font-size:24px;color:var(--ink);line-height:1.1;display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.card .big small{font-family:var(--mono);font-size:9.5px;color:var(--ink-3);letter-spacing:.06em}
.card .line{margin-top:6px;line-height:1.55}
.card .v{display:inline-block;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;padding:3px 7px;border:1px solid}
.card .v.pass{color:var(--up);border-color:rgba(127,217,168,.45)}
.card .v.caution{color:var(--warn);border-color:rgba(255,207,110,.45)}
.card .v.fail{color:var(--down);border-color:rgba(255,138,122,.45)}
.card .up{color:var(--up)}

/* lower sections use the full width */
.block .lead{grid-column:1/4}
.block .side{grid-column:4/6}
.tape,.steps,.faq{grid-column:1/6}

@media (max-width:1100px){.rail{display:none}}
@media (max-width:900px){.block .lead,.block .side,.tape,.steps,.faq{grid-column:1}}

/* contract address pill (shown once the owner saves the CA in /studio) */
.pill.ca{gap:10px;border-color:rgba(217,169,95,.45)}
.pill.ca .ca-l{color:#d9a95f}
.pill.ca button{font:inherit;color:var(--ink);background:none;border:0;cursor:pointer;display:inline-flex;gap:8px}
.pill.ca button i{font-style:normal;color:var(--ink-3)}
.pill.ca a{color:#1a1206;background:#d9a95f;padding:3px 8px;margin:-3px -5px -3px 0}

/* Buy $VENERA buttons: "Soon" until the CA is saved in /studio */
.buy-btn{display:inline-flex;align-items:center;gap:10px;font-size:8.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;padding:11px 16px;background:#d9a95f;color:#1a1206;border:1px solid #d9a95f;transition:filter .3s}
.buy-btn i{font-style:normal;font-size:11px;letter-spacing:0}
.buy-btn:hover{filter:brightness(1.12)}
.buy-btn.soon,.buy-cta.soon{background:transparent;color:#d9a95f;cursor:default;filter:none}
.buy-btn.soon i,.buy-cta.soon i{font-size:8px;letter-spacing:.18em;text-transform:uppercase;padding:2px 6px;border:1px solid rgba(217,169,95,.5)}
.cta.buy-cta{background:#d9a95f;color:#1a1206;margin-left:8px;border:1px solid #d9a95f}
.cta.buy-cta i{width:auto;height:auto;background:none;font-style:normal}
@media (max-width:900px){.buy-btn span{display:inline}.buy-btn{padding:9px 11px}.cta.buy-cta{margin:10px 0 0}}

.buy-btn,.launch,.cta{white-space:nowrap}
.head-right{gap:12px}

/* ---- pre-launch QA fixes ---- */
/* the fixed header gets a soft dark backing so content never runs into the nav when scrolled */
.site-header{background:linear-gradient(to bottom,rgba(12,13,15,.94) 0%,rgba(12,13,15,.72) 60%,rgba(12,13,15,0) 100%)}
.brand-name{display:inline}
@media (max-width:600px){
  .brand-name{display:none}                       /* laurel only, so the name never collides with the buttons */
  .buy-btn{padding:9px 11px;letter-spacing:.14em}
  .buy-btn.soon i{display:none}
  .head-right{gap:8px}
  .launch{padding:9px 10px}
  /* hero: title up top, text and buttons below it with room for the status pills */
  .s1 .title{align-self:start;margin:15vh 0 0}
  .s1 .copy{bottom:15vh}
  .hook{bottom:2vh}
}

.indicator{display:none}

/* cleaner chrome: no dash marks */
.nav a::after{display:none}
.nav a.on{opacity:1;color:var(--ink)}
.nav a{opacity:.62}
.nav a:hover{opacity:1}
.cta i,.btn i{display:none}
.cta,.btn{gap:0}
