/* ═══════════════════════════════════════════
   SolVita Gardens — Page Styles
   solvita.css
═══════════════════════════════════════════ */

:root {
  --sv-green:         #4ADE80;
  --sv-green2:        #22C55E;
  --sv-border:        rgba(74, 222, 128, 0.3);
  --sv-border-strong: rgba(74, 222, 128, 0.55);
  --sv-glow:          rgba(74, 222, 128, 0.11);
}

/* ── HERO ── */
#sv-hero {
  min-height: 100vh;
  min-height: 100svh;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 80px 24px 56px;
  overflow: hidden;
  background: #0A1C10;
}

/* ── HERO VIDEO ── */
.hero-video-bg {
  position: absolute;
  inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  pointer-events: none;
}
.hero-video-overlay {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
#sv-hero .hero-video-overlay {
  background:
    linear-gradient(to bottom, rgba(0,0,0,0.05) 0%, rgba(11,21,53,0.52) 78%, #0B1535 100%),
    radial-gradient(ellipse at 50% 30%, rgba(74,222,128,0.22) 0%, transparent 65%);
}

.hero-hex-bg {
  position: absolute; inset: 0;
  display: flex; flex-wrap: wrap; align-content: flex-start;
  gap: 3px; padding: 64px 10px 0;
  opacity: 0.3; pointer-events: none; z-index: 0;
}
.hero-hex-cell {
  width: calc(16.666% - 3px);
  aspect-ratio: 1 / 0.866;
  background: rgba(74,222,128,0.05);
  border: 1px solid rgba(74,222,128,0.15);
  clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);
  animation: svHexPulse 3.5s ease-in-out infinite;
}
.hero-hex-cell:nth-child(3n)  { background:rgba(74,222,128,0.1); border-color:rgba(74,222,128,0.3); }
.hero-hex-cell:nth-child(5n)  { animation-duration:4.5s; }
.hero-hex-cell:nth-child(7n)  { background:rgba(74,222,128,0.16); animation-duration:2.8s; }
@keyframes svHexPulse { 0%,100%{opacity:.35} 50%{opacity:1} }

.sv-hero-content { position:relative; z-index:1; }

.sv-hero-badge {
  display:inline-flex; align-items:center; gap:10px;
  font-family:'Share Tech Mono',monospace; font-size:9px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--sv-green); margin-bottom:20px;
}
.sv-hero-badge-dot {
  width:6px; height:6px; border-radius:50%; background:var(--sv-green);
  flex-shrink:0; animation:blink 1.6s ease-in-out infinite;
}

.sv-hero-title {
  font-family:'Bebas Neue',sans-serif;
  font-size:clamp(72px,24vw,100px);
  letter-spacing:0.03em; line-height:0.88;
  color:var(--inv); margin-bottom:0;
}
.sv-hero-title-sub {
  font-family:'Bebas Neue',sans-serif;
  font-size:clamp(40px,13vw,56px);
  letter-spacing:0.06em; line-height:1;
  color:var(--sv-green); margin-bottom:20px;
}
.sv-hero-tagline {
  font-size:14px; line-height:1.72; color:var(--inv-muted); margin-bottom:32px;
}

.sv-hero-stats {
  display:grid; grid-template-columns:repeat(3,1fr);
  border-top:1px solid rgba(74,222,128,0.18); border-left:1px solid rgba(74,222,128,0.18);
}
.sv-hero-stat {
  padding:14px 10px;
  border-right:1px solid rgba(74,222,128,0.18);
  border-bottom:1px solid rgba(74,222,128,0.18);
}
.sv-hero-stat-num {
  font-family:'Bebas Neue',sans-serif; font-size:28px; letter-spacing:0.05em;
  color:var(--inv); line-height:1;
}
.sv-hero-stat-label {
  font-family:'Share Tech Mono',monospace; font-size:7px; letter-spacing:0.14em;
  color:rgba(74,222,128,0.6); text-transform:uppercase; margin-top:4px;
}

/* ── SECTION SHARED ── */
#sv-overview   { background:var(--white); border-bottom:1px solid var(--border); }
#sv-arch       { background:var(--ice);   border-bottom:1px solid var(--border); }
#sv-space      { background:var(--white); border-bottom:1px solid var(--border); }
#sv-artemis    { background:var(--ice);   border-bottom:1px solid var(--border); }
#sv-electronics{ background:var(--white); border-bottom:1px solid var(--border); }
#sv-markets    { background:var(--ice);   border-bottom:1px solid var(--border); }
#sv-traction   { background:var(--white); border-bottom:1px solid var(--border); }
#sv-cta        { background:var(--navy);  border-bottom:none; }

.sv-section-label { color:var(--sv-green); }
.sv-section-label::before { color:rgba(74,222,128,0.4); }

/* ── OVERVIEW ── */
.sv-body {
  font-size:15px; line-height:1.76; color:var(--text); margin-bottom:18px;
}
.sv-body strong { color:var(--navy); font-weight:600; }

.sv-callout {
  border-left:3px solid var(--sv-green);
  padding:12px 0 12px 24px; margin:28px 0;
  background:linear-gradient(to right, rgba(74,222,128,0.05), transparent);
}
.sv-callout p {
  font-size:16px; font-style:italic; font-weight:300;
  line-height:1.6; color:var(--text); margin-bottom:10px;
}
.sv-callout small {
  font-family:'Share Tech Mono',monospace; font-size:9px; letter-spacing:0.18em;
  color:var(--muted); text-transform:uppercase;
}

/* ── ARCHITECTURE ── */
.sv-arch-cards { display:flex; flex-direction:column; gap:8px; margin-top:8px; }
.sv-arch-card {
  background:var(--white); border:1px solid var(--border); padding:24px 20px;
  position:relative; overflow:hidden;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.sv-arch-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg, var(--sv-green), transparent);
}
.sv-arch-card:hover { border-color:var(--sv-border-strong); box-shadow:0 4px 16px rgba(74,222,128,0.07); }

.sv-arch-card-header { display:flex; align-items:flex-start; gap:14px; margin-bottom:14px; }
.sv-arch-icon {
  width:40px; height:40px; flex-shrink:0; margin-top:2px;
  background:var(--sv-glow); border:1px solid var(--sv-border);
  clip-path:polygon(25% 0%,75% 0%,100% 50%,75% 100%,25% 100%,0% 50%);
  display:flex; align-items:center; justify-content:center;
  font-size:16px; color:var(--sv-green);
}
.sv-arch-card-title {
  font-family:'Barlow Condensed',sans-serif; font-size:16px; font-weight:700;
  letter-spacing:0.08em; text-transform:uppercase; color:var(--text);
}
.sv-arch-card-sub {
  font-family:'Share Tech Mono',monospace; font-size:9px; letter-spacing:0.16em;
  color:var(--sv-green); margin-top:3px; text-transform:uppercase;
}
.sv-arch-card-body { font-size:14px; line-height:1.72; color:var(--muted); margin-bottom:16px; }

/* Spec rows on SolVita use green border */
#sv-arch .spec-row, #sv-electronics .spec-row { border-bottom-color: rgba(74,222,128,0.15); }
#sv-arch .spec-list, #sv-electronics .spec-list { border-top-color: rgba(74,222,128,0.15); }
#sv-arch .spec-val, #sv-electronics .spec-val { color: var(--navy); }

/* ── SPACE STAGES ── */
.sv-stage-list { display:flex; flex-direction:column; gap:8px; margin-top:8px; }

.sv-stage {
  background:var(--white); border:1px solid var(--border); padding:24px 20px;
  transition: border-color 0.2s;
}
.sv-stage:hover { border-color:var(--sv-border); }

.sv-stage-header { display:flex; gap:16px; align-items:flex-start; margin-bottom:14px; }
.sv-stage-number { flex-shrink:0; text-align:center; min-width:44px; }
.sv-stage-num-label {
  font-family:'Bebas Neue',sans-serif; font-size:32px; letter-spacing:0.06em;
  color:var(--sv-green); line-height:1;
}
.sv-stage-num-sub {
  font-family:'Share Tech Mono',monospace; font-size:8px; letter-spacing:0.16em;
  color:var(--muted); text-transform:uppercase; margin-top:2px;
}
.sv-stage-meta { flex:1; }
.sv-stage-title {
  font-family:'Barlow Condensed',sans-serif; font-size:15px; font-weight:700;
  letter-spacing:0.1em; text-transform:uppercase; color:var(--text); margin-bottom:4px;
}
.sv-stage-timeline {
  font-family:'Share Tech Mono',monospace; font-size:9px; letter-spacing:0.14em;
  color:var(--muted); text-transform:uppercase;
}
.sv-stage-body { font-size:14px; line-height:1.72; color:var(--muted); }
.sv-stage-body strong { color:var(--text); }

.sv-milestones { margin-top:16px; display:flex; flex-direction:column; gap:6px; }
.sv-milestone {
  font-family:'Share Tech Mono',monospace; font-size:10px; letter-spacing:0.1em;
  color:var(--muted); padding-left:16px; position:relative;
}
.sv-milestone::before { content:'▸'; position:absolute; left:0; color:var(--sv-green); }

/* ── ARTEMIS BANNER ── */
.sv-artemis-banner {
  background:var(--white); border:1px solid var(--border);
  border-left:3px solid var(--sv-green); padding:20px; margin-bottom:28px;
  box-shadow: 0 2px 12px rgba(74,222,128,0.05);
}
.sv-artemis-title {
  font-family:'Barlow Condensed',sans-serif; font-size:11px; font-weight:700;
  letter-spacing:0.22em; text-transform:uppercase; color:var(--sv-green); margin-bottom:4px;
}
.sv-artemis-subtitle {
  font-family:'Share Tech Mono',monospace; font-size:9px; letter-spacing:0.14em;
  color:var(--muted); text-transform:uppercase; margin-bottom:14px;
}
.sv-artemis-body { font-size:14px; line-height:1.72; color:var(--text); }
.sv-artemis-body strong { color:var(--navy); }

.sv-artemis-points { display:flex; flex-direction:column; gap:24px; }
.sv-artemis-point  { display:flex; gap:16px; align-items:flex-start; }
.sv-artemis-point-icon { font-size:22px; flex-shrink:0; line-height:1; margin-top:2px; }
.sv-artemis-point-title {
  font-family:'Barlow Condensed',sans-serif; font-size:14px; font-weight:700;
  letter-spacing:0.1em; text-transform:uppercase; color:var(--text); margin-bottom:6px;
}
.sv-artemis-point-body { font-size:14px; line-height:1.72; color:var(--muted); }
.sv-artemis-point-body strong { color:var(--text); }

/* ── MARKETS ── */
.sv-market-grid {
  display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:8px;
}
.sv-market-card {
  background:var(--white); border:1px solid var(--border); padding:20px 16px;
  position:relative; overflow:hidden;
  transition: border-color 0.2s;
}
.sv-market-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg, var(--sv-green), transparent);
}
.sv-market-card:hover { border-color:var(--sv-border-strong); }
.sv-market-icon  { font-size:20px; margin-bottom:10px; }
.sv-market-title {
  font-family:'Barlow Condensed',sans-serif; font-size:13px; font-weight:700;
  letter-spacing:0.1em; text-transform:uppercase; color:var(--text); margin-bottom:6px;
}
.sv-market-body { font-size:12px; line-height:1.6; color:var(--muted); }

/* ── TRACTION ── */
.sv-traction-list { display:flex; flex-direction:column; gap:8px; margin-top:8px; }
.sv-traction-item {
  background:var(--white); border:1px solid var(--border); padding:20px;
  display:flex; gap:14px; align-items:flex-start;
  transition: border-color 0.2s;
}
.sv-traction-item:hover { border-color:var(--sv-border); }
.sv-traction-icon { font-size:20px; flex-shrink:0; line-height:1; }
.sv-traction-title {
  font-family:'Barlow Condensed',sans-serif; font-size:14px; font-weight:700;
  letter-spacing:0.08em; text-transform:uppercase; color:var(--text); margin-bottom:6px;
}
.sv-traction-body { font-size:13px; line-height:1.68; color:var(--muted); }
.sv-hi { color:var(--sv-green2); font-weight:600; }

/* ── PCB CARDS ── */
.sv-pcb-card {
  background:var(--white); border:1px solid var(--border);
  border-top:3px solid var(--sv-green); padding:24px 20px; margin-bottom:12px;
}
.sv-pcb-title {
  font-family:'Barlow Condensed',sans-serif; font-size:15px; font-weight:700;
  letter-spacing:0.1em; text-transform:uppercase; color:var(--text); margin-bottom:4px;
}
.sv-pcb-subtitle {
  font-family:'Share Tech Mono',monospace; font-size:9px; letter-spacing:0.14em;
  color:var(--sv-green); text-transform:uppercase; margin-bottom:16px;
}

/* ── CTA (dark) ── */
#sv-cta {
  padding:72px 24px;
  text-align:center;
}
.sv-cta-title {
  font-family:'Bebas Neue',sans-serif; font-size:clamp(52px,16vw,72px); letter-spacing:0.03em;
  color:var(--inv); line-height:0.92; margin-bottom:20px;
}
.sv-cta-body {
  font-size:15px; line-height:1.72; color:var(--inv-muted); margin-bottom:32px;
  max-width:440px; margin-left:auto; margin-right:auto;
}
#sv-cta .cta-pair { display:flex; flex-direction:column; gap:12px; max-width:360px; margin:0 auto 16px; }
#sv-cta .btn-primary { background:var(--sv-green); color:#0B1535; }
#sv-cta .btn-ghost { color:var(--inv); border-color:rgba(255,255,255,0.28); }
#sv-cta .btn-ghost:hover { border-color:rgba(255,255,255,0.65); background:rgba(255,255,255,0.05); }
.sv-back-link {
  display:inline-block; margin-top:4px;
  font-family:'Barlow Condensed',sans-serif; font-size:12px; letter-spacing:0.2em;
  text-transform:uppercase; text-decoration:none;
  color:rgba(74,222,128,0.6); transition:color 0.2s;
}
.sv-back-link:hover { color:var(--sv-green); }

/* ── HEX DECO BG (section decoration) ── */
.hex-deco-bg {
  position:absolute; inset:0; pointer-events:none; overflow:hidden; z-index:0; opacity:0.025;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='64'%3E%3Cpolygon points='28,2 54,16 54,48 28,62 2,48 2,16' fill='none' stroke='%234ade80' stroke-width='1'/%3E%3C/svg%3E");
  background-size:56px 64px;
}

/* ══════════════════════════════════════════
   NEW SECTION BACKGROUNDS — rebuilt structure
   Section order: overview → hexmod → tiers →
   usecases → why → pathway → arch → traction → cta
══════════════════════════════════════════ */
#sv-hexmod   { background:var(--ice);   border-bottom:1px solid var(--border); }
#sv-tiers    { background:var(--white); border-bottom:1px solid var(--border); }
#sv-usecases { background:var(--ice);   border-bottom:1px solid var(--border); }
#sv-why      { background:var(--white); border-bottom:1px solid var(--border); }
#sv-pathway  { background:var(--ice);   border-bottom:1px solid var(--border); }

/* Override legacy values for sections that moved in the alternating pattern */
#sv-arch     { background:var(--white) !important; }
#sv-traction { background:var(--ice)   !important; }

/* Arch cards on white section need ice fill to stand out */
#sv-arch .sv-arch-card { background:var(--ice); }
#sv-arch .sv-pcb-card  { background:var(--ice); }

/* ── HEXMOD SCALING DIAGRAM ── */
.sv-scale-diagram {
  display:flex;
  gap:8px;
  align-items:center;
  justify-content:center;
  margin:28px 0;
  flex-wrap:wrap;
}
.sv-scale-group {
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
}
.sv-scale-hexes {
  display:flex;
  flex-wrap:wrap;
  gap:3px;
  justify-content:center;
}
.sv-scale-hex {
  width:26px; height:26px; flex-shrink:0;
  background:rgba(74,222,128,0.05);
  border:1px solid rgba(74,222,128,0.18);
  clip-path:polygon(25% 0%,75% 0%,100% 50%,75% 100%,25% 100%,0% 50%);
}
.sv-scale-hex.active {
  background:rgba(74,222,128,0.18);
  border-color:rgba(74,222,128,0.55);
}
.sv-scale-hex-dim { opacity:0.3; }
.sv-scale-name {
  font-family:'Bebas Neue',sans-serif; font-size:18px; letter-spacing:0.06em;
  color:var(--sv-green); line-height:1;
}
.sv-scale-label {
  font-family:'Share Tech Mono',monospace; font-size:7px; letter-spacing:0.1em;
  text-transform:uppercase; color:var(--muted); text-align:center; max-width:120px;
}
.sv-scale-arrow {
  font-size:16px; color:rgba(74,222,128,0.35); padding:0 4px;
  align-self:center; margin-bottom:44px;
}

/* ── HEXMOD AUDIENCE FRAMES ── */
.sv-hexmod-frames { display:flex; flex-direction:column; gap:8px; margin-top:28px; }
.sv-hexmod-frame {
  background:var(--white); border:1px solid var(--border);
  border-left:3px solid var(--sv-green); padding:20px;
}
.sv-hexmod-frame-label {
  font-family:'Share Tech Mono',monospace; font-size:9px; letter-spacing:0.2em;
  text-transform:uppercase; color:var(--sv-green); margin-bottom:10px;
}
.sv-hexmod-frame-body { font-size:14px; line-height:1.72; color:var(--muted); }

/* ── PRODUCT TIER CARDS ── */
.sv-tier-list { display:flex; flex-direction:column; gap:12px; margin-top:12px; }

.sv-tier-card {
  background:var(--ice); border:1px solid var(--border);
  border-left:4px solid var(--sv-green); padding:28px 24px;
  position:relative; overflow:hidden;
  transition:border-color 0.2s, box-shadow 0.2s;
}
.sv-tier-card:hover {
  border-color:var(--sv-border-strong);
  box-shadow:0 4px 20px rgba(74,222,128,0.07);
}
.sv-tier-card-omegah {
  border-color:var(--border);
  border-left-color:var(--sv-green);
}

.sv-tier-header {
  display:flex; align-items:baseline; gap:14px;
  margin-bottom:16px; flex-wrap:wrap;
}
.sv-tier-name {
  font-family:'Bebas Neue',sans-serif; font-size:44px; letter-spacing:0.04em;
  color:var(--text); line-height:0.9;
}

.sv-tier-badge {
  font-family:'Share Tech Mono',monospace; font-size:8px; letter-spacing:0.2em;
  text-transform:uppercase; color:var(--sv-green);
  padding:4px 8px; border:1px solid var(--sv-border); background:var(--sv-glow);
}
.sv-tier-badge-space {
  color:rgba(74,222,128,0.75);
  border-color:rgba(74,222,128,0.18);
  background:rgba(74,222,128,0.04);
}

.sv-tier-hexcount {
  display:flex; align-items:baseline; gap:12px; flex-wrap:wrap;
  margin-bottom:16px; padding:10px 14px;
  background:var(--sv-glow); border:1px solid var(--sv-border);
}
.sv-tier-hexcount-dark {
  background:rgba(74,222,128,0.05);
  border-color:rgba(74,222,128,0.15);
}
.sv-tier-hex-label {
  font-family:'Share Tech Mono',monospace; font-size:8px; letter-spacing:0.16em;
  text-transform:uppercase; color:var(--muted); flex-shrink:0;
}
.sv-tier-hex-num {
  font-family:'Share Tech Mono',monospace; font-size:10px; letter-spacing:0.1em;
  color:var(--sv-green); font-style:italic;
}

.sv-tier-body { font-size:14px; line-height:1.72; color:var(--muted); margin-bottom:16px; }

.sv-tier-note {
  font-size:11px; line-height:1.65; color:rgba(74,222,128,0.5); font-style:italic;
  margin-bottom:16px; padding:10px 14px;
  border-left:2px solid rgba(74,222,128,0.2);
  background:rgba(74,222,128,0.03);
}

.sv-tier-contexts { display:flex; flex-wrap:wrap; gap:6px; }
.sv-tier-ctx {
  font-family:'Share Tech Mono',monospace; font-size:8px; letter-spacing:0.12em;
  text-transform:uppercase; padding:4px 8px;
  border:1px solid var(--border); color:var(--muted); background:var(--white);
}
.sv-tier-ctx-space {
  border-color:rgba(74,222,128,0.2);
  color:rgba(74,222,128,0.65);
  background:rgba(74,222,128,0.04);
}

/* ── USE CASES GRID (10 cards, 2-column) ── */
.sv-use-grid { grid-template-columns:1fr 1fr; margin-top:8px; }
@media (max-width:600px) { .sv-use-grid { grid-template-columns:1fr; } }

/* ── WHY IT MATTERS ── */
.sv-why-grid { display:flex; flex-direction:column; gap:8px; margin-top:24px; }
.sv-why-item {
  display:flex; gap:16px; align-items:flex-start;
  background:var(--ice); border:1px solid var(--border); padding:20px;
  transition:border-color 0.2s;
}
.sv-why-item:hover { border-color:var(--sv-border); }
.sv-why-num {
  font-family:'Bebas Neue',sans-serif; font-size:34px; letter-spacing:0.06em;
  color:rgba(74,222,128,0.35); line-height:1; flex-shrink:0; min-width:32px;
}
.sv-why-title {
  font-family:'Barlow Condensed',sans-serif; font-size:13px; font-weight:700;
  letter-spacing:0.12em; text-transform:uppercase; color:var(--text); margin-bottom:6px;
}
.sv-why-body { font-size:13px; line-height:1.72; color:var(--muted); }

/* ── SOLVITA HERO BRAND IMAGE ── */
.sv-hero-brand-img {
  display:block;
  max-width:260px; width:100%;
  margin-bottom:20px;
  border-radius:6px;
  box-shadow:0 0 0 1px rgba(74,222,128,0.25), 0 8px 32px rgba(0,0,0,0.35);
}

/* ── TIER CARD PRODUCT IMAGES ── */
.sv-tier-img-wrap {
  width:100%; margin:0 -24px 20px;
  width:calc(100% + 48px);
  background:rgba(255,255,255,0.06);
  overflow:hidden;
  display:flex; align-items:center; justify-content:center;
  padding:20px 0;
  border-bottom:1px solid var(--border);
}
.sv-tier-img-wrap-dark {
  background:rgba(255,255,255,0.04);
  border-bottom-color:rgba(74,222,128,0.12);
}
.sv-tier-img {
  max-height:260px; max-width:100%;
  width:auto; height:auto;
  object-fit:contain; display:block;
}
.sv-tier-img-wrap-dark .sv-tier-img {
  transform:scale(2.0);
}
