:root {
    /* Brand tokens: tune these four values if official source artwork differs. */
    --pv-navy: #0b2b45;
    --pv-navy-2: #123e5f;
    --pv-yellow: #f7c600;
    --pv-turquoise: #11aab7;
    --watt-green: #6fbe44;
    --ink: #163042;
    --muted: #657884;
    --surface: #ffffff;
    --soft: #f4f8f9;
    --line: #dce7ea;
    --danger: #9e2d2d;
    --radius: 22px;
    --shadow: 0 18px 48px rgba(11, 43, 69, .12);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--surface); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; line-height: 1.5; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
a { color: inherit; }
.shell { width: min(1180px, calc(100% - 36px)); margin: 0 auto; }
.site-header { position: sticky; top: 0; z-index: 20; background: rgba(255,255,255,.92); backdrop-filter: blur(14px); border-bottom: 1px solid rgba(11,43,69,.08); }
.header-inner { min-height: 68px; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.brand { display: inline-flex; align-items: center; gap: 9px; text-decoration: none; font-weight: 900; letter-spacing: -.04em; font-size: 1.1rem; }
.brand-pv { color: var(--pv-navy); }
.brand-x { color: var(--pv-yellow); }
.brand-watt { color: #478f28; }
.event-chip { font-size: .86rem; font-weight: 700; color: var(--pv-navy); background: #eef6f7; padding: 8px 12px; border-radius: 999px; }
.hero { position: relative; overflow: hidden; color: white; background: linear-gradient(125deg, var(--pv-navy) 0%, #0b4156 55%, #0f686f 100%); padding: 78px 0 64px; }
.hero:after { content: ""; position: absolute; inset: auto 0 0; height: 7px; background: linear-gradient(90deg, var(--pv-yellow) 0 28%, var(--pv-turquoise) 28% 64%, var(--watt-green) 64%); }
.hero-grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1.35fr .85fr; gap: 64px; align-items: center; }
.hero-orb { position: absolute; border-radius: 50%; filter: blur(4px); opacity: .18; }
.hero-orb-a { width: 360px; height: 360px; background: var(--pv-turquoise); right: -90px; top: -120px; }
.hero-orb-b { width: 220px; height: 220px; background: var(--pv-yellow); left: 38%; bottom: -160px; }
.eyebrow { margin: 0 0 14px; color: #c6f3f4; text-transform: uppercase; letter-spacing: .12em; font-weight: 800; font-size: .78rem; }
.eyebrow.dark { color: #42808a; }
.hero h1 { margin: 0; max-width: 820px; font-size: clamp(2.7rem, 6vw, 5.6rem); line-height: .98; letter-spacing: -.055em; }
.hero-lead { max-width: 760px; margin: 25px 0 0; font-size: clamp(1.05rem, 2vw, 1.3rem); color: #dceff2; }
.event-meta { margin-top: 28px; display: flex; flex-wrap: wrap; gap: 10px; }
.event-meta span { padding: 9px 12px; border: 1px solid rgba(255,255,255,.18); border-radius: 999px; background: rgba(255,255,255,.07); font-size: .9rem; }
.machine-context { margin-top: 18px; display: inline-block; background: rgba(111,190,68,.16); border: 1px solid rgba(164,232,122,.36); padding: 10px 14px; border-radius: 12px; }
.energy-card { border: 1px solid rgba(255,255,255,.18); background: rgba(255,255,255,.095); box-shadow: 0 24px 60px rgba(0,0,0,.14); border-radius: 26px; padding: 25px; backdrop-filter: blur(10px); }
.energy-card-top { font-size: .86rem; font-weight: 800; color: #dfffd0; display: flex; align-items: center; gap: 8px; }
.pulse-dot { width: 9px; height: 9px; background: var(--watt-green); border-radius: 50%; box-shadow: 0 0 0 5px rgba(111,190,68,.14); }
.energy-flow { margin: 26px 0 20px; display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.energy-flow div { flex: 1; text-align: center; }
.energy-flow b { width: 52px; height: 52px; display: grid; place-items: center; margin: 0 auto 8px; border-radius: 16px; background: rgba(255,255,255,.12); font-size: 1.5rem; }
.energy-flow span { display: block; font-size: .74rem; color: #d6e9ec; }
.energy-flow i { color: var(--pv-yellow); font-style: normal; font-weight: 900; }
.energy-card p { margin: 0; color: #d6e9ec; font-size: .93rem; }
.intent-section, .form-section { padding: 74px 0; }
.intent-section { background: var(--soft); }
.section-heading { max-width: 760px; margin-bottom: 30px; }
.section-heading h2, .form-intro h2, .success-card h2 { margin: 0; color: var(--pv-navy); font-size: clamp(2rem, 4vw, 3.2rem); line-height: 1.05; letter-spacing: -.04em; }
.section-heading p:last-child, .form-intro p:last-child { color: var(--muted); }
.cta-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.intent-card { min-height: 132px; display: grid; grid-template-columns: 50px 1fr auto; gap: 15px; align-items: center; text-align: left; padding: 20px; border-radius: 18px; border: 1px solid var(--line); background: white; color: var(--ink); transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.intent-card:hover, .intent-card:focus-visible { transform: translateY(-3px); box-shadow: var(--shadow); outline: none; }
.intent-card.accent-green:hover { border-color: var(--watt-green); }
.intent-card.accent-yellow:hover { border-color: var(--pv-yellow); }
.intent-card.accent-turquoise:hover { border-color: var(--pv-turquoise); }
.intent-icon { width: 50px; height: 50px; display: grid; place-items: center; border-radius: 15px; background: #f0f7f8; color: var(--pv-navy); font-size: 1.25rem; font-weight: 900; }
.accent-green .intent-icon { background: #eef8e8; color: #498b2a; }
.accent-yellow .intent-icon { background: #fff8d8; color: #8a7000; }
.accent-turquoise .intent-icon { background: #e9f8fa; color: #087a83; }
.intent-text strong { display: block; color: var(--pv-navy); font-size: 1rem; }
.intent-text small { display: block; margin-top: 4px; color: var(--muted); line-height: 1.35; }
.intent-arrow { color: #7f929d; font-weight: 900; font-size: 1.2rem; }
.form-shell { display: grid; grid-template-columns: .72fr 1.28fr; gap: 58px; align-items: start; }
#leadForm { background: white; border: 1px solid var(--line); border-radius: var(--radius); padding: 28px; box-shadow: var(--shadow); }
.field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.field { display: block; }
.field span { display: block; margin-bottom: 7px; font-weight: 750; color: var(--pv-navy); font-size: .9rem; }
.field input, .field select, .field textarea, .full textarea { width: 100%; border: 1px solid #cbdade; background: #fbfdfd; color: var(--ink); border-radius: 12px; padding: 12px 13px; outline: none; transition: border-color .15s, box-shadow .15s; }
.field input:focus, .field select:focus, .field textarea:focus, .full textarea:focus { border-color: var(--pv-turquoise); box-shadow: 0 0 0 3px rgba(17,170,183,.12); }
.field-help { margin: 9px 0 0; color: var(--muted); font-size: .82rem; }
.dynamic-panel { margin: 24px 0 0; border: 1px solid var(--line); border-radius: 16px; padding: 19px; background: #f9fbfb; }
.dynamic-panel legend { padding: 0 8px; color: var(--pv-navy); font-weight: 850; }
.question-stack { display: grid; gap: 15px; }
.full { display: block; margin-top: 20px; }
.full span { display: block; margin-bottom: 7px; font-weight: 750; color: var(--pv-navy); font-size: .9rem; }
.consent-box { margin-top: 20px; padding: 16px; border-radius: 14px; background: #f3f7f8; }
.check { display: flex; gap: 10px; align-items: flex-start; margin: 9px 0; font-size: .88rem; color: #405966; }
.check input { margin-top: 4px; }
.check a { color: #087a83; font-weight: 700; }
.form-actions { display: flex; align-items: center; gap: 16px; margin-top: 22px; }
.submit-btn, .price-list-btn, .telemetry-cta { border: 0; border-radius: 13px; padding: 13px 18px; font-weight: 850; text-decoration: none; background: linear-gradient(90deg, var(--pv-yellow), #ffd83e); color: var(--pv-navy); display: inline-flex; gap: 18px; align-items: center; box-shadow: 0 8px 20px rgba(247,198,0,.18); }
.submit-btn b { font-size: 1.15rem; }
.text-btn { border: 0; padding: 8px 0; background: transparent; color: #49717b; font-weight: 750; text-decoration: underline; text-underline-offset: 3px; }
.form-status { min-height: 24px; margin-top: 12px; font-size: .9rem; }
.form-status.error { color: var(--danger); }
.form-status.ok { color: #397526; }
.hp-field { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.success-section { padding: 70px 0; background: var(--soft); }
.success-card { text-align: center; background: white; border: 1px solid var(--line); box-shadow: var(--shadow); border-radius: var(--radius); padding: 48px 24px; max-width: 760px; }
.success-mark { width: 60px; height: 60px; margin: 0 auto 18px; display: grid; place-items: center; border-radius: 50%; background: #ecf8e7; color: #4c9a2c; font-size: 1.5rem; font-weight: 900; }
.success-card p { color: var(--muted); }
.success-card .price-list-btn { margin: 14px auto; }
.telemetry-section { padding: 72px 0; color: white; background: var(--pv-navy); }
.section-heading.light h2 { color: white; }
.section-heading.light p:last-child { color: #bcd4db; }
.telemetry-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.metric { border: 1px solid rgba(255,255,255,.13); background: rgba(255,255,255,.06); border-radius: 18px; padding: 22px; }
.metric span { display: block; color: #cce3e7; font-size: .82rem; }
.metric strong { display: inline-block; margin-top: 8px; font-size: 2rem; letter-spacing: -.04em; }
.metric small { margin-left: 5px; color: #9ec1c8; }
.telemetry-cta { margin-top: 20px; }
.trust-strip { padding: 32px 0; border-top: 1px solid var(--line); }
.trust-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.trust-grid div { display: grid; gap: 4px; }
.trust-grid strong { color: var(--pv-navy); }
.trust-grid span { color: var(--muted); font-size: .88rem; }
.site-footer { padding: 24px 0 34px; background: #071f31; color: #a9c3ca; font-size: .83rem; }
.footer-inner { display: flex; justify-content: space-between; gap: 20px; }
[hidden] { display: none !important; }
@media (max-width: 900px) {
    .hero-grid, .form-shell { grid-template-columns: 1fr; gap: 35px; }
    .cta-grid { grid-template-columns: 1fr 1fr; }
    .telemetry-grid { grid-template-columns: 1fr 1fr; }
    .energy-card { max-width: 600px; }
}
@media (max-width: 620px) {
    .shell { width: min(100% - 24px, 1180px); }
    .event-chip { display: none; }
    .hero { padding: 54px 0 48px; }
    .hero h1 { font-size: clamp(2.45rem, 13vw, 4rem); }
    .cta-grid, .field-grid, .telemetry-grid, .trust-grid { grid-template-columns: 1fr; }
    .intent-card { min-height: 108px; }
    .intent-section, .form-section { padding: 52px 0; }
    #leadForm { padding: 19px; border-radius: 17px; }
    .energy-flow b { width: 44px; height: 44px; }
    .footer-inner { flex-direction: column; }
}
