/* Sobre — estética terminal */
.manifesto { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(24px, 5vw, 72px); align-items: start; }
.manifesto .sec-title { font-size: clamp(2rem, 4.4vw, 3.4rem); }
.manifesto-copy { display: grid; gap: 16px; color: var(--dim); font-size: 15px; padding-left: clamp(0px, 3vw, 32px); border-left: 1px dashed var(--line); }
.manifesto-copy p:first-child { color: var(--ink); font-size: 16px; }

.fronts { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 16px; align-items: stretch; }
.front { display: flex; flex-direction: column; gap: 4px; }
.front-head { display: flex; justify-content: space-between; align-items: center; }
.front .card-title { font-size: 1.6rem; margin-top: 16px; }
.front > .btn { margin-top: auto; align-self: flex-start; }

.plist { list-style: none; margin-top: 18px; display: grid; }
.plist li { --c: var(--orange); border-top: 1px dashed var(--line); }
.plist a { display: grid; grid-template-columns: 12px minmax(120px, 170px) 1fr 16px; gap: 14px; align-items: baseline; padding: 13px 4px; transition: background 0.2s; }
.plist a:hover { background: color-mix(in srgb, var(--c) 10%, transparent); }
.plist i { width: 8px; height: 8px; border-radius: 50%; background: var(--c); box-shadow: 0 0 10px var(--c); align-self: center; }
.plist strong { font-family: var(--display); font-size: 1.02rem; color: var(--c); }
.plist span { color: var(--dim); font-size: 12.5px; }
.plist b { color: var(--c); transition: transform 0.3s var(--ease); }
.plist a:hover b { transform: translateX(4px); }

.focus { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 20px 0 22px; }
.focus div { padding: 14px; border: 1px solid var(--line); background: rgba(5, 5, 7, 0.4); }
.focus span { display: block; color: var(--orange); font-size: 11px; text-transform: uppercase; letter-spacing: 0.1em; font-weight: 700; }
.focus strong { display: block; margin-top: 6px; font-family: var(--display); font-size: 1rem; line-height: 1.2; }

.pipeline { list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; counter-reset: s; position: relative; }
.pipeline li { display: flex; flex-direction: column; gap: 10px; }
.pipeline .step { font-family: var(--display); font-size: 2.6rem; line-height: 1; color: transparent; -webkit-text-stroke: 1px var(--orange); }
.pipeline code { color: var(--green); font-size: 12px; }
.pipeline code::before { content: "$ "; color: var(--dim); }
.pipeline h3 { font-family: var(--display); font-size: 1.2rem; letter-spacing: -0.02em; }
.pipeline p { color: var(--dim); font-size: 13px; }
.pipeline li:not(:last-child)::after { content: "→"; position: absolute; right: -14px; top: 26px; color: var(--orange); font-weight: 700; z-index: 2; }

.principles { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 16px; align-items: stretch; }
.diff .card-title { font-size: 1.35rem; margin: 0 0 18px; }
.diff ul { list-style: none; display: grid; gap: 10px; font-size: 13px; }
.diff li { display: grid; gap: 2px; padding-bottom: 10px; border-bottom: 1px dashed var(--line); }
.diff li:last-child { border-bottom: 0; }
.diff del { color: var(--red); text-decoration: none; opacity: 0.85; }
.diff ins { color: var(--green); text-decoration: none; font-weight: 700; }

.founder { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.4fr); gap: 16px; align-items: start; }
.founder-id { display: flex; flex-direction: column; gap: 12px; }
.founder-id .card-title { margin-top: 0; }
.founder-photo { position: relative; aspect-ratio: 1; border: 1px solid var(--line); background: radial-gradient(circle at 50% 35%, rgba(242, 106, 27, 0.25), transparent 65%), #0b0b10; overflow: hidden; display: grid; place-items: center; margin-bottom: 6px; }
.founder-photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 1; filter: grayscale(0.2) contrast(1.05); }
.founder-mono { display: grid; place-items: center; gap: 4px; width: 118px; height: 118px; background: var(--orange); border: 2px solid #1f1b17; box-shadow: 8px 8px 0 #f4f1ea; font-family: Inter, Arial, sans-serif; }
.founder-mono strong { font-size: 2.1rem; font-weight: 900; letter-spacing: -0.06em; color: #fff; line-height: 1; margin-top: 24px; }
.founder-mono span { font-size: 0.7rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: #fff; margin-bottom: 20px; }
.founder-cv { display: grid; gap: 16px; }
.founder-cv .card-title { font-size: 1.12rem; margin-top: 14px; }
.founder-sum { --c: var(--amber); }

@media (max-width: 1080px) {
  .pipeline { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pipeline li::after { display: none; }
  .principles, .fronts, .founder { grid-template-columns: 1fr; }
  .founder-id { display: grid; grid-template-columns: 200px 1fr; column-gap: 24px; }
  .founder-id .founder-photo { grid-row: span 4; }
}
@media (max-width: 960px) {
  .manifesto { grid-template-columns: 1fr; }
  .manifesto-copy { padding-left: 0; border-left: 0; }
}
@media (max-width: 640px) {
  .pipeline { grid-template-columns: 1fr; }
  .focus { grid-template-columns: 1fr; }
  .plist a { grid-template-columns: 10px 1fr 14px; }
  .plist span { grid-column: 2 / 4; grid-row: 2; margin-top: -6px; }
  .plist b { grid-column: 3; grid-row: 1; }
  .founder-id { display: flex; }
  .founder-photo { max-width: 240px; }
}
