.hero {
    position: relative;
    min-height: 960px;
    padding: clamp(148px, 15vw, 190px) 0 44px;
    overflow: hidden;
    background-color: var(--color-background);
    background-image:
        linear-gradient(var(--hero-grid-line) 1px, transparent 1px),
        linear-gradient(90deg, var(--hero-grid-line) 1px, transparent 1px);
    background-size: 48px 48px;
}

.hero::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 220px;
    background: linear-gradient(to bottom, transparent, var(--color-background));
    content: "";
    pointer-events: none;
}

.hero__glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(1px);
    pointer-events: none;
}

.hero__glow--one {
    top: -180px;
    right: -100px;
    width: 620px;
    height: 620px;
    background: radial-gradient(circle, color-mix(in srgb, var(--color-accent) 18%, transparent), transparent 66%);
}

.hero__glow--two {
    bottom: 50px;
    left: -240px;
    width: 520px;
    height: 520px;
    background: radial-gradient(circle, color-mix(in srgb, var(--color-primary) 10%, transparent), transparent 68%);
}

.hero__grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: clamp(52px, 7vw, 86px);
    align-items: center;
    text-align: center;
}

.hero__content {
    width: min(100%, 1020px);
    margin-inline: auto;
}

.hero__content h1 {
    max-width: 1020px;
    margin-inline: auto;
    margin-bottom: 30px;
    color: var(--color-text);
    font-size: clamp(3.7rem, 8.4vw, 7.8rem);
    font-weight: 720;
    letter-spacing: -0.073em;
    line-height: 0.86;
}

.hero__content h1 span {
    display: block;
}

.hero-title__brand {
    margin-bottom: 0.14em;
    color: var(--color-text) !important;
    font-size: 0.54em;
    letter-spacing: -0.045em;
}

.hero-title__statement {
    color: var(--color-text) !important;
}

.hero-title__accent {
    color: var(--color-primary);
}

.hero__lead {
    max-width: 640px;
    margin-inline: auto;
    margin-bottom: 36px;
    color: var(--color-text-secondary);
    font-size: clamp(1.05rem, 1.55vw, 1.24rem);
    line-height: 1.72;
}

.hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 13px;
    justify-content: center;
}

.hero__capabilities {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    margin-top: 34px;
    justify-content: center;
}

.hero__capabilities span {
    display: inline-flex;
    gap: 9px;
    align-items: center;
    color: var(--color-text-muted);
    font-size: 0.79rem;
    font-weight: 640;
}

.hero__capabilities span::before {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--color-primary);
    content: "";
}

.hero-studio {
    position: relative;
    overflow: hidden;
    border: 1px solid var(--studio-border);
    border-radius: 22px;
    background: var(--studio-background);
    color: var(--brand-white);
    box-shadow: 0 36px 90px rgba(3, 11, 18, 0.28);
    width: min(860px, 100%);
    margin-inline: auto;
    transform: perspective(1400px) rotateX(2deg) translateY(0);
    transition: transform var(--transition-smooth);
}

.hero-studio:hover {
    transform: perspective(1400px) rotateX(0) translateY(-5px) scale(1.005);
}

.hero-studio::before {
    position: absolute;
    z-index: 2;
    top: -130px;
    right: -120px;
    width: 320px;
    height: 320px;
    border-radius: 50%;
    background: rgba(143, 212, 0, 0.11);
    filter: blur(4px);
    content: "";
    pointer-events: none;
}

.hero-studio__topbar {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    gap: 12px;
    align-items: center;
    min-height: 56px;
    padding: 0 17px;
    border-bottom: 1px solid var(--studio-border);
    background: #06121D;
}

.hero-studio__window {
    display: flex;
    gap: 6px;
}

.hero-studio__window span {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #315066;
}

.hero-studio__window span:first-child {
    background: var(--brand-lime);
}

.hero-studio__filename {
    color: #89938E;
    font-family: var(--font-mono);
    font-size: 0.67rem;
}

.status-badge {
    display: inline-flex;
    justify-self: end;
    gap: 7px;
    align-items: center;
    color: #CCD3CF;
    font-size: 0.67rem;
    font-weight: 650;
}

.status-badge i {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--brand-lime);
    box-shadow: 0 0 0 4px rgba(143, 212, 0, 0.13);
}

.hero-studio__canvas {
    position: relative;
    display: grid;
    min-height: 420px;
    place-items: center;
    overflow: hidden;
    background:
        linear-gradient(rgba(49, 80, 102, 0.15) 1px, transparent 1px),
        linear-gradient(90deg, rgba(49, 80, 102, 0.15) 1px, transparent 1px),
        radial-gradient(circle at 50% 42%, #10283D 0, #07182A 68%);
    background-size: 26px 26px, 26px 26px, auto;
}

.hero-studio__canvas::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 100px;
    background: linear-gradient(transparent, rgba(3, 11, 18, 0.62));
    content: "";
}

.axis {
    position: absolute;
    z-index: 2;
    display: grid;
    width: 24px;
    height: 24px;
    place-items: center;
    border: 1px solid #315066;
    border-radius: 6px;
    background: rgba(7, 24, 42, 0.8);
    color: #89938E;
    font-family: var(--font-mono);
    font-size: 0.57rem;
}

.axis--x { top: 18px; left: 18px; color: #EF6A6A; }
.axis--y { top: 18px; left: 48px; color: #8FD400; }
.axis--z { top: 18px; left: 78px; color: #62A9FF; }

.layer-object {
    position: relative;
    z-index: 1;
    width: min(84%, 390px);
    overflow: visible;
    filter: drop-shadow(0 22px 26px rgba(0, 0, 0, 0.42));
}

.layer-object__shadow {
    fill: rgba(0, 0, 0, 0.28);
    transform: translateY(13px);
}

.layer-object__cut {
    fill: #07182A;
    stroke: rgba(166, 235, 25, 0.52);
    stroke-width: 2;
}

.layer-object__line {
    fill: none;
    stroke: rgba(166, 235, 25, 0.5);
    stroke-width: 1.6;
}

.print-trace {
    fill: none;
    stroke: #D7FF79;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2.1;
    filter: drop-shadow(0 0 5px rgba(166, 235, 25, 0.7));
}

.nozzle-guide {
    fill: none;
    stroke: rgba(166, 235, 25, 0.12);
    stroke-dasharray: 4 6;
    stroke-width: 1;
}

.printer-nozzle {
    color: var(--brand-lime);
    filter: drop-shadow(0 5px 8px rgba(0, 0, 0, 0.5));
    transform-box: fill-box;
    transform-origin: center;
}

.printer-nozzle rect {
    fill: #315066;
    stroke: #89938E;
    stroke-width: 1.2;
}

.printer-nozzle path {
    fill: #CCD3CF;
    stroke: #FFFFFF;
    stroke-width: 0.7;
}

.printer-nozzle circle {
    fill: var(--brand-lime);
}

.layer-meter {
    position: absolute;
    z-index: 3;
    right: 18px;
    bottom: 16px;
    left: 18px;
    display: flex;
    gap: 16px;
    align-items: center;
}

.layer-meter span {
    flex: 0 0 auto;
    color: #89938E;
    font-family: var(--font-mono);
    font-size: 0.6rem;
}

.layer-meter b {
    color: var(--brand-lime);
    font: inherit;
    font-weight: 700;
}

.layer-meter > div {
    flex: 1;
    height: 3px;
    overflow: hidden;
    border-radius: 10px;
    background: #1E3445;
}

.layer-meter i {
    display: block;
    width: 0;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--brand-green), var(--brand-lime));
}

.hero-studio__footer {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: 78px;
    border-top: 1px solid var(--studio-border);
    background: #06121D;
}

.hero-studio__footer > div {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 13px 18px;
}

.hero-studio__footer > div + div {
    border-left: 1px solid var(--studio-border);
}

.hero-studio__footer span {
    margin-bottom: 4px;
    color: #6F7D85;
    font-family: var(--font-mono);
    font-size: 0.59rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.hero-studio__footer strong {
    color: #CCD3CF;
    font-size: 0.75rem;
    font-weight: 650;
}

.hero__rail {
    position: relative;
    z-index: 3;
    display: grid;
    grid-template-columns: auto 1fr auto 1fr auto 1fr auto;
    gap: 16px;
    align-items: center;
    margin-top: clamp(70px, 10vw, 120px);
    color: var(--color-text-muted);
    font-family: var(--font-mono);
    font-size: 0.58rem;
    letter-spacing: 0.12em;
}

.hero__rail i {
    height: 1px;
    background: linear-gradient(90deg, var(--color-border-strong), var(--color-primary));
}

@media (max-width: 1040px) {
    .hero {
        min-height: auto;
    }

    .hero__grid {
        grid-template-columns: 1fr;
    }

    .hero-studio {
        width: min(780px, 100%);
        margin-inline: auto;
        transform: none;
    }
}

@media (max-width: 640px) {
    .hero {
        padding-top: 128px;
    }

    .hero__content h1 {
        font-size: clamp(3rem, 15vw, 4.8rem);
        line-height: 0.91;
    }

    .hero__actions,
    .hero__actions .button {
        width: 100%;
    }

    .hero__capabilities {
        gap: 11px 16px;
    }

    .hero-studio__topbar {
        grid-template-columns: 1fr auto;
    }

    .hero-studio__filename {
        display: none;
    }

    .hero-studio__canvas {
        min-height: 330px;
    }

    .hero-studio__footer {
        grid-template-columns: 1fr;
    }

    .hero-studio__footer > div + div {
        border-top: 1px solid var(--studio-border);
        border-left: 0;
    }

    .hero__rail {
        gap: 7px;
        font-size: 0.48rem;
        letter-spacing: 0.06em;
    }
}

.hero-brand-display{display:grid;place-items:center;align-self:center;padding:clamp(20px,4vw,55px)}.hero-brand-display img{width:min(100%,460px);height:auto;border-radius:50%;box-shadow:var(--shadow-card)}.brand-night{display:none}[data-theme="dark"] .brand-day{display:none}[data-theme="dark"] .brand-night{display:block}

.hero-brand-display{display:grid;place-items:center;align-self:center;padding:clamp(20px,4vw,55px)}.hero-brand-display img{width:min(100%,460px);height:auto;border-radius:50%;box-shadow:var(--shadow-card)}.brand-night{display:none}[data-theme="dark"] .brand-day{display:none}[data-theme="dark"] .brand-night{display:block}

.hero-studio[hidden]{display:none!important}

.hero--centered .hero__grid{display:flex!important;flex-direction:column;align-items:center;gap:26px;min-height:auto;padding-top:40px;padding-bottom:65px}.hero--centered .hero-brand-display{padding:0;order:0}.hero--centered .hero-brand-display img{width:clamp(210px,24vw,330px);border-radius:0;box-shadow:none;filter:drop-shadow(0 15px 35px rgba(7,24,42,.12))}.hero--centered .hero__content{text-align:center;max-width:850px;order:1}.hero--centered h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em;line-height:1.07;font-size:clamp(40px,5vw,72px)}.hero--centered .hero-title__brand{display:block;font-size:.7em;font-style:italic;margin-bottom:12px}.hero--centered .hero-title__statement{display:block}.hero--centered h1 em{font-style:italic;color:var(--color-primary)}.hero--centered .hero__description{max-width:590px;margin:22px auto;font-size:16px}.hero--centered .hero__actions{justify-content:center}.hero--centered .hero__trust{font-size:12px;color:var(--color-text-secondary);margin-top:24px}@media(max-width:700px){.hero--centered .hero__grid{padding-top:24px;gap:20px}.hero--centered .hero__trust{line-height:1.8}.hero--centered .hero__actions{flex-wrap:wrap}}

.hero--centered{min-height:100svh;padding-top:clamp(100px,10vh,150px)}
.hero-brand-display{position:relative}
.hero-brand-display::after{content:"";position:absolute;inset:-10px;border:1px solid color-mix(in srgb,var(--color-primary) 35%,transparent);border-radius:50%;pointer-events:none}
.hero-type-cursor{display:inline!important;color:var(--color-primary);font-style:normal;animation:hero-caret 1s steps(2,end) infinite}
@keyframes hero-caret{50%{opacity:0}}
@media(prefers-reduced-motion:reduce){.hero-type-cursor{display:none!important}}
.hero-orbits{position:absolute;inset:-28px;pointer-events:none;color:var(--color-primary);overflow:visible;width:calc(100% + 56px);height:calc(100% + 56px)}
.hero-orbits circle{fill:none;stroke:currentColor;stroke-width:.5;opacity:.3;transform-origin:160px 160px}
.hero-orbits .hero-orbit--outer{stroke-dasharray:2 10}
.hero-orbits .hero-orbit--inner{stroke-dasharray:95 230}
.hero-orbits .hero-orbit-dot{fill:currentColor;stroke:none;opacity:.85}
.hero--centered .hero-brand-display::after{display:none}
.hero--centered .hero__content{position:relative}
.hero--centered .hero__description{line-height:1.8}
@media(max-width:640px){.hero-orbits{inset:-15px;width:calc(100% + 30px);height:calc(100% + 30px)}}
.hero-orbits [data-hero-orbit]{transform-box:view-box;transform-origin:50% 50%}
