:root { --black: #090b09; --surface: #111611; --surface-soft: #172018; --white: #f4f6f0; --muted: #b3baaf; --green: #5eae4a; --green-light: #91d86f; --line: rgba(244, 246, 240, .16); }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; overflow-x: hidden; background: var(--black); color: var(--white); font-family: Arial, Helvetica, sans-serif; line-height: 1.5; }
a { color: inherit; }
.container { width: min(100% - 32px, 1180px); margin: 0 auto; }
.hero { display: flex; flex-direction: column; min-height: 100svh; background: radial-gradient(circle at 86% 13%, rgba(94, 174, 74, .28), transparent 20rem), linear-gradient(135deg, transparent 0 62%, rgba(94, 174, 74, .08) 62% 63%, transparent 63%), var(--black); }
.nav { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-top: 24px; }
.brand, footer span { color: var(--green-light); font-size: .72rem; font-weight: 800; letter-spacing: .14em; text-decoration: none; }
.nav-link { border-bottom: 1px solid var(--green-light); font-size: .8rem; font-weight: 700; padding-bottom: 3px; text-decoration: none; }
.hero-content { margin: auto; padding: 86px 0 62px; }
.prototype-mark { display: inline-block; margin: 0 0 20px; border: 1px solid var(--green); color: var(--green-light); font-size: .72rem; font-weight: 800; letter-spacing: .1em; padding: 7px 10px; text-transform: uppercase; }
.eyebrow, .section-label { color: var(--green-light); font-size: .72rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
h1, h2, h3, p { overflow-wrap: break-word; }
.hero h1 { font-size: clamp(3.8rem, 12vw, 9.8rem); letter-spacing: -.075em; line-height: .78; margin: 18px 0 32px; }
.hero h1 span { color: var(--green-light); }
.hero-lead { font-size: clamp(1.1rem, 2vw, 1.45rem); margin: 0; max-width: 39rem; }
.hero-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 18px 28px; margin-top: 35px; color: var(--muted); font-size: .94rem; }
.hero-meta a { color: var(--white); font-weight: 700; text-decoration-color: var(--green-light); text-underline-offset: 5px; }
.hero-meta a span { color: var(--green-light); padding-left: 7px; }
.notice { background: var(--green); color: var(--black); }
.notice p { margin: 0; max-width: 720px; padding: 20px 0; font-size: .91rem; font-weight: 700; }
.section { display: grid; grid-template-columns: minmax(140px, .55fr) 2fr; gap: 42px; padding-top: clamp(76px, 10vw, 132px); padding-bottom: clamp(76px, 10vw, 132px); }
.section-layout { display: grid; grid-template-columns: minmax(140px, .55fr) 2fr; gap: 42px; }
.section-content { max-width: 820px; }
h2 { font-size: clamp(2.4rem, 5vw, 4.8rem); letter-spacing: -.06em; line-height: .92; margin: 0 0 30px; }
.section-content > p { color: var(--muted); font-size: clamp(1.05rem, 1.6vw, 1.25rem); margin: 0; max-width: 690px; }
.idea-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 46px; }
.idea-grid article, .format-card, .audience-grid article { border: 1px solid var(--line); padding: 23px; }
.idea-grid span, .card-number, .audience-grid span { color: var(--green-light); font-size: .74rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
h3 { font-size: 1.22rem; letter-spacing: -.025em; line-height: 1.05; margin: 20px 0 12px; }
.idea-grid p, .format-card > p:not(.card-number), .audience-grid p { color: var(--muted); font-size: .94rem; margin: 0; }
.section-tint, .audience-section { background: var(--surface); }
.program-list { list-style: none; margin: 43px 0 0; padding: 0; border-top: 1px solid var(--line); }
.program-list article { display: grid; grid-template-columns: 55px 1fr; gap: 14px; border-bottom: 1px solid var(--line); padding: 23px 0; }
.program-list span { color: var(--green-light); font-size: .78rem; font-weight: 800; padding-top: 3px; }
.program-list h3 { margin: 0 0 8px; }
.program-list p { color: var(--muted); margin: 0; max-width: 610px; }
.format-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 45px; }
.format-card { display: flex; flex-direction: column; min-height: 290px; background: var(--surface); }
.format-card.featured { border-color: var(--green); background: var(--surface-soft); }
.format-card h3 { font-size: 1.35rem; margin-top: 27px; }
.format-card strong { color: var(--green-light); font-size: .84rem; line-height: 1.35; margin-top: auto; padding-top: 28px; }
.audience-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; margin-top: 44px; }
.audience-grid article { background: var(--black); min-height: 220px; }
.audience-grid h3 { font-size: 1.4rem; margin-top: 24px; }
.closing { padding: clamp(80px, 12vw, 160px) 0; background: radial-gradient(circle at 20% 75%, rgba(94, 174, 74, .18), transparent 25rem), var(--black); }
.closing h2 { max-width: 700px; margin-bottom: 24px; }
.closing p:last-child { color: var(--muted); font-size: clamp(1.05rem, 1.7vw, 1.25rem); max-width: 620px; margin: 0; }
footer { border-top: 1px solid var(--line); padding: 24px 0; }
footer .container { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
footer small { color: var(--muted); }
a:focus-visible { outline: 3px solid var(--green-light); outline-offset: 4px; }
@media (max-width: 760px) { .section, .section-layout { display: block; } .section-label { margin-bottom: 28px; } .idea-grid, .format-grid { grid-template-columns: 1fr; } .format-card { min-height: 235px; } }
@media (max-width: 480px) { .container { width: min(100% - 28px, 1180px); } .hero { min-height: 680px; } .hero-content { padding-top: 76px; } .hero h1 { font-size: clamp(3.65rem, 20vw, 5.7rem); } .audience-grid { grid-template-columns: 1fr; } .program-list article { grid-template-columns: 42px 1fr; } footer .container { align-items: flex-start; flex-direction: column; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
