:root {
  --bg: #090909;
  --surface: #111111;
  --surface-2: #171717;
  --text: #f4f1e8;
  --muted: #9d9a91;
  --line: rgba(244, 241, 232, .16);
  --accent: #c8ff38;
  --accent-2: #ff5f38;
  --blue: #6f8cff;
  --radius: 26px;
  --shell: min(1460px, calc(100vw - 48px));
  --header-h: 86px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--bg); }
body {
  margin: 0;
  min-width: 320px;
  background:
    radial-gradient(circle at 10% 10%, rgba(200,255,56,.055), transparent 24rem),
    radial-gradient(circle at 90% 18%, rgba(111,140,255,.05), transparent 28rem),
    var(--bg);
  color: var(--text);
  font-family: Inter, Manrope, "Segoe UI", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

::selection { background: var(--accent); color: #090909; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button { color: inherit; }

.noise {
  pointer-events: none;
  position: fixed;
  inset: 0;
  z-index: 100;
  opacity: .022;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");
}

.cursor-glow {
  position: fixed;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(200,255,56,.055), transparent 66%);
  transform: translate(-50%, -50%);
  pointer-events: none;
  z-index: 0;
  transition: opacity .25s ease;
}

.section-shell { width: var(--shell); margin-inline: auto; position: relative; z-index: 1; }

.site-header {
  width: var(--shell);
  height: var(--header-h);
  margin: 0 auto;
  position: sticky;
  top: 0;
  z-index: 50;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 32px;
  border-bottom: 1px solid var(--line);
  backdrop-filter: blur(18px);
  background: linear-gradient(180deg, rgba(9,9,9,.93), rgba(9,9,9,.73));
}

.brand { display: flex; align-items: center; gap: 12px; font-weight: 850; letter-spacing: -.04em; }
.brand-mark {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: var(--accent);
  color: #090909;
  font-size: 14px;
  letter-spacing: -.08em;
}
.brand-word { font-size: 17px; }

.desktop-nav { justify-self: center; display: flex; gap: 30px; color: #c5c2ba; font-size: 13px; }
.desktop-nav a { position: relative; transition: color .2s ease; }
.desktop-nav a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -7px;
  width: 100%;
  height: 1px;
  background: var(--accent);
  transform: scaleX(0);
  transform-origin: right;
  transition: transform .25s ease;
}
.desktop-nav a:hover { color: var(--text); }
.desktop-nav a:hover::after { transform: scaleX(1); transform-origin: left; }

.header-cta {
  justify-self: end;
  display: inline-flex;
  align-items: center;
  gap: 20px;
  padding: 12px 16px 12px 18px;
  border: 1px solid var(--line);
  border-radius: 999px;
  font-size: 13px;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
}
.header-cta span { color: var(--accent); }
.header-cta:hover { background: var(--accent); color: #090909; border-color: var(--accent); }
.header-cta:hover span { color: #090909; }

.menu-toggle, .mobile-menu { display: none; }

.hero { min-height: calc(100svh - var(--header-h)); padding: 68px 0 0; display: flex; flex-direction: column; }
.hero-kicker { display: flex; align-items: center; gap: 10px; color: var(--muted); font-size: 11px; letter-spacing: .16em; }
.live-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--accent); box-shadow: 0 0 18px rgba(200,255,56,.8); }

.hero-title-wrap { margin-top: clamp(44px, 7vh, 92px); }
.hero h1 { margin: 0; font-size: clamp(72px, 12.35vw, 188px); line-height: .77; letter-spacing: -.075em; font-weight: 900; }
.hero-line { display: block; }
.hero-line--accent { color: var(--accent); padding-left: 10.2vw; }
.hero-line--outline {
  padding-left: 1.2vw;
  color: transparent;
  -webkit-text-stroke: 1.5px rgba(244,241,232,.72);
  text-stroke: 1.5px rgba(244,241,232,.72);
}

.hero-bottom { margin-top: clamp(38px, 7vh, 78px); display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 32px; padding-bottom: 44px; }
.hero-lead { max-width: 700px; margin: 0; font-size: clamp(20px, 2vw, 32px); line-height: 1.2; letter-spacing: -.035em; color: #bcb9b1; }
.hero-lead strong { color: var(--text); font-weight: 650; }
.round-link {
  width: 142px;
  height: 142px;
  border-radius: 50%;
  border: 1px solid var(--line);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 25px;
  font-size: 13px;
  line-height: 1.2;
  transition: background .3s ease, color .3s ease, border-color .3s ease;
}
.round-link b { align-self: flex-end; font-size: 26px; font-weight: 400; }
.round-link:hover { background: var(--accent); color: #090909; border-color: var(--accent); }

.hero-marquee { width: 100vw; margin-left: calc((100% - 100vw)/2); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); overflow: hidden; }
.marquee-track { display: flex; align-items: center; gap: 26px; width: max-content; padding: 16px 0; animation: marquee 30s linear infinite; font-size: 12px; letter-spacing: .16em; color: #8d8a83; }
.marquee-track i { color: var(--accent); font-style: normal; }
@keyframes marquee { to { transform: translateX(-50%); } }

.manifesto { padding: 160px 0; border-bottom: 1px solid var(--line); display: grid; grid-template-columns: 260px 1fr; gap: 40px; }
.manifesto-index, .eyebrow { font-size: 11px; letter-spacing: .18em; color: #85827b; text-transform: uppercase; }
.manifesto-text { margin: 0; font-size: clamp(42px, 5.25vw, 82px); line-height: .96; letter-spacing: -.06em; font-weight: 720; }
.manifesto-text span { display: block; }
.manifesto-text .muted { color: #55534f; }
.manifesto-text .accent-text { color: var(--accent); }

.projects { padding: 150px 0; }
.section-heading { display: grid; grid-template-columns: 1.25fr .75fr; gap: 80px; align-items: end; margin-bottom: 72px; }
.section-heading h2, .about h2, .online h2, .contact h2 { margin: 18px 0 0; font-size: clamp(54px, 6.4vw, 98px); line-height: .88; letter-spacing: -.06em; font-weight: 780; }
h2 em { font-style: normal; color: var(--accent); }
.section-heading > p { margin: 0 0 8px; max-width: 520px; font-size: 18px; line-height: 1.5; color: var(--muted); }

.project-grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: 18px; }
.project-card {
  grid-column: span 6;
  min-height: 580px;
  display: flex;
  flex-direction: column;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  overflow: hidden;
  background: linear-gradient(180deg, rgba(255,255,255,.025), rgba(255,255,255,.008));
  transition: transform .35s cubic-bezier(.2,.8,.2,1), border-color .3s ease, background .3s ease;
  transform-style: preserve-3d;
}
.project-card:hover { border-color: rgba(244,241,232,.32); background: linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.012)); }
.project-card--hero { grid-column: span 7; }
.project-card:nth-child(2) { grid-column: span 5; }
.project-card:nth-child(3) { grid-column: span 5; }
.project-card--wide { grid-column: span 7; min-height: 430px; }
.project-card--lab { grid-column: span 12; min-height: 440px; display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: auto 1fr; }
.project-card--lab .project-card__top { grid-column: 1 / -1; }
.project-card--lab .lab-console, .project-card--lab .project-card__body { min-height: 330px; }

.project-card__top { display: flex; justify-content: space-between; align-items: center; padding: 24px 26px; border-bottom: 1px solid var(--line); font-size: 11px; letter-spacing: .14em; color: #8d8a83; }
.project-status { display: inline-flex; align-items: center; gap: 8px; color: #c8c5bd; }
.project-status i { width: 6px; height: 6px; border-radius: 50%; background: var(--accent); box-shadow: 0 0 12px rgba(200,255,56,.7); }
.project-status--build i { background: #ffb838; box-shadow: 0 0 12px rgba(255,184,56,.7); }
.project-status--lab i { background: var(--blue); box-shadow: 0 0 12px rgba(111,140,255,.7); }

.project-visual { flex: 1; position: relative; min-height: 300px; overflow: hidden; border-bottom: 1px solid var(--line); }
.visual-nikofix { background: radial-gradient(circle at 35% 45%, rgba(200,255,56,.19), transparent 32%), #111; }
.visual-word { position: absolute; right: 6%; bottom: -4%; font-size: clamp(96px, 12vw, 180px); font-weight: 950; line-height: .72; letter-spacing: -.1em; color: rgba(244,241,232,.07); text-align: right; }
.tool-orbit { position: absolute; width: 220px; height: 220px; border: 1px solid rgba(200,255,56,.35); border-radius: 50%; left: 14%; top: 50%; transform: translateY(-50%); }
.tool-orbit::before, .tool-orbit::after { content: ""; position: absolute; inset: 24px; border: 1px dashed rgba(244,241,232,.11); border-radius: 50%; }
.tool-orbit::after { inset: 76px; border-style: solid; }
.tool-orbit span { position: absolute; right: -11px; top: 46%; width: 22px; height: 22px; display: grid; place-items: center; color: var(--accent); animation: spinDot 9s linear infinite; }
@keyframes spinDot { to { transform: rotate(360deg); } }

.visual-ybonus { display: grid; place-items: center; background: radial-gradient(circle, rgba(111,140,255,.15), transparent 45%), #0d0d0f; }
.pulse-ring { position: absolute; border: 1px solid rgba(111,140,255,.36); border-radius: 50%; }
.r1 { width: 250px; height: 250px; animation: pulse 3s ease-in-out infinite; }
.r2 { width: 170px; height: 170px; animation: pulse 3s ease-in-out .65s infinite; }
.pulse-core { width: 82px; height: 82px; border-radius: 22px; background: var(--blue); color: #08090f; display: grid; place-items: center; font-size: 42px; font-weight: 950; box-shadow: 0 0 70px rgba(111,140,255,.2); }
@keyframes pulse { 50% { transform: scale(1.08); opacity: .45; } }

.visual-monster { display: grid; place-items: center; background: #0c0c0c; }
.monster-grid { position: absolute; inset: 0; background-image: linear-gradient(rgba(200,255,56,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(200,255,56,.06) 1px, transparent 1px); background-size: 34px 34px; mask-image: radial-gradient(circle at center, black, transparent 70%); }
.monster-eye { width: 180px; height: 94px; border-radius: 100% 0 100% 0; border: 2px solid rgba(200,255,56,.65); transform: rotate(45deg); display: grid; place-items: center; box-shadow: 0 0 60px rgba(200,255,56,.07); z-index: 2; }
.monster-eye span { width: 40px; height: 40px; border-radius: 50%; background: var(--accent); box-shadow: 0 0 28px rgba(200,255,56,.55); }

.project-card__body { padding: 30px 30px 28px; display: flex; justify-content: space-between; align-items: end; gap: 24px; }
.project-card__body h3 { margin: 7px 0 12px; font-size: clamp(32px, 3.4vw, 52px); letter-spacing: -.055em; line-height: .94; }
.project-card__body p { margin: 0; max-width: 560px; color: #9e9b94; font-size: 15px; line-height: 1.5; }
.project-card__body > a, .project-link-muted { flex: 0 0 auto; font-size: 12px; color: var(--accent); }
.project-link-muted { color: #6f6d67; }
.project-type { font-size: 10px; letter-spacing: .16em; color: #77746d; }

.project-card__body--wide { flex: 1; position: relative; align-items: end; overflow: hidden; }
.project-card__body--wide > div:first-child { position: relative; z-index: 2; max-width: 560px; }
.wide-stamp { position: absolute; right: 7%; top: 50%; transform: translateY(-50%); font-size: 190px; font-weight: 950; letter-spacing: -.11em; color: transparent; -webkit-text-stroke: 1px rgba(244,241,232,.1); }

.lab-console { margin: 0; padding: 52px 38px; display: flex; flex-direction: column; gap: 12px; justify-content: center; border-right: 1px solid var(--line); font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: clamp(18px, 2vw, 28px); color: #8fa0ff; background: radial-gradient(circle at 30% 50%, rgba(111,140,255,.12), transparent 40%); }
.lab-console .cursor { color: var(--accent); animation: blink .9s steps(1) infinite; }
@keyframes blink { 50% { opacity: 0; } }
.project-card--lab .project-card__body { padding: 48px 38px; }

.future-route { margin-top: 20px; display: flex; flex-wrap: wrap; align-items: center; gap: 10px; color: #77746d; font-size: 12px; }
.future-route code { padding: 7px 10px; border-radius: 999px; border: 1px solid var(--line); color: #aaa79f; background: #0d0d0d; }

.about { padding: 150px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.about-layout { display: grid; grid-template-columns: .82fr 1.18fr; gap: 100px; align-items: start; }
.about-sticky { position: sticky; top: calc(var(--header-h) + 38px); }
.about h2 { font-size: clamp(58px, 6vw, 92px); }
.about-copy { border-top: 1px solid var(--line); }
.about-block { display: grid; grid-template-columns: 72px 1fr; gap: 28px; padding: 48px 0; border-bottom: 1px solid var(--line); }
.about-index { font-size: 12px; color: var(--accent); }
.about-block h3 { margin: 0 0 16px; font-size: clamp(28px, 3vw, 44px); letter-spacing: -.045em; }
.about-block p { margin: 0; max-width: 720px; color: #a3a099; font-size: 18px; line-height: 1.6; }
.about-quote { margin: 54px 0 0; padding: 38px; border-radius: var(--radius); background: var(--accent); color: #090909; font-size: clamp(28px, 3.4vw, 50px); line-height: 1.05; letter-spacing: -.045em; font-weight: 720; }
.about-quote span { display: block; font-size: 72px; line-height: .55; opacity: .45; }
.capability-strip { margin-top: 110px; display: grid; grid-template-columns: repeat(5, 1fr); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.capability-strip > div { min-height: 140px; padding: 22px; border-right: 1px solid var(--line); display: flex; flex-direction: column; justify-content: space-between; }
.capability-strip > div:last-child { border-right: 0; }
.capability-strip b { font-size: 10px; font-weight: 500; color: #68665f; }
.capability-strip span { font-size: 13px; line-height: 1.15; letter-spacing: .04em; }

.pricing { padding: 150px 0; }
.section-heading--pricing { margin-bottom: 62px; }
.pricing-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; align-items: stretch; }
.price-card { min-height: 620px; padding: 28px; border: 1px solid var(--line); border-radius: var(--radius); display: flex; flex-direction: column; background: #0d0d0d; position: relative; overflow: hidden; }
.price-card--featured { background: var(--text); color: #0b0b0b; border-color: var(--text); transform: translateY(-18px); }
.price-card--featured .price-intro, .price-card--featured li { color: #55534f; }
.price-card--featured .price-tag { border-color: rgba(9,9,9,.2); }
.price-card--featured .price-cta { border-color: #0b0b0b; }
.price-card--featured .price-cta:hover { background: #0b0b0b; color: var(--text); }
.featured-label { position: absolute; top: 18px; right: -40px; width: 160px; padding: 6px 0; transform: rotate(34deg); background: var(--accent); color: #0b0b0b; text-align: center; font-size: 8px; letter-spacing: .14em; font-weight: 800; }
.price-card__head { display: flex; justify-content: space-between; font-size: 10px; letter-spacing: .12em; opacity: .75; }
.price-tag { border: 1px solid var(--line); border-radius: 999px; padding: 5px 8px; }
.price-card h3 { margin: 64px 0 12px; font-size: clamp(42px, 4vw, 60px); letter-spacing: -.06em; }
.price-intro { min-height: 72px; margin: 0; color: #96938c; line-height: 1.5; }
.price { margin: 44px 0 28px; font-size: clamp(30px, 3vw, 46px); font-weight: 760; letter-spacing: -.045em; }
.price-card ul { margin: 0 0 32px; padding: 0; list-style: none; color: #9d9a93; }
.price-card li { padding: 10px 0 10px 20px; border-bottom: 1px solid currentColor; border-color: rgba(140,137,130,.18); position: relative; font-size: 14px; }
.price-card li::before { content: "+"; position: absolute; left: 0; color: var(--accent); }
.price-card--featured li::before { color: #0b0b0b; }
.price-cta { margin-top: auto; display: flex; justify-content: space-between; align-items: center; padding: 17px 18px; border: 1px solid var(--line); border-radius: 999px; font-size: 13px; transition: .25s ease; }
.price-cta:hover { background: var(--accent); border-color: var(--accent); color: #090909; }
.pricing-note { max-width: 740px; margin: 26px 0 0 auto; color: #6f6d67; font-size: 13px; line-height: 1.5; }

.online { padding: 150px 0; border-top: 1px solid var(--line); }
.online-head { margin-bottom: 78px; }
.social-list { border-top: 1px solid var(--line); }
.social-list a { display: grid; grid-template-columns: 70px 1fr 1fr auto; gap: 24px; align-items: center; min-height: 118px; border-bottom: 1px solid var(--line); transition: padding .3s ease, background .3s ease; }
.social-list a:hover { padding-inline: 22px; background: rgba(255,255,255,.025); }
.social-num { font-size: 10px; color: #66645e; }
.social-list strong { font-size: clamp(30px, 4vw, 58px); letter-spacing: -.055em; }
.social-meta { color: #74716b; font-size: 13px; }
.social-list b { font-size: 30px; color: var(--accent); font-weight: 400; }

.contact { padding: 150px 0 170px; }
.contact-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 100px; align-items: start; }
.contact-copy { position: sticky; top: calc(var(--header-h) + 38px); }
.contact-copy p { max-width: 590px; margin: 36px 0; color: #9e9b94; font-size: 18px; line-height: 1.6; }
.availability { display: inline-flex; align-items: center; gap: 10px; padding: 10px 13px; border: 1px solid var(--line); border-radius: 999px; font-size: 11px; color: #aaa79f; }
.availability i { width: 7px; height: 7px; border-radius: 50%; background: var(--accent); box-shadow: 0 0 12px rgba(200,255,56,.7); }

.contact-form { border-top: 1px solid var(--line); }
.field { display: block; padding: 28px 0; border-bottom: 1px solid var(--line); }
.field > span { display: block; margin-bottom: 16px; font-size: 10px; letter-spacing: .14em; color: #77746e; text-transform: uppercase; }
.field input, .field textarea, .field select { width: 100%; border: 0; outline: 0; background: transparent; color: var(--text); padding: 0; font-size: clamp(22px, 2.2vw, 34px); letter-spacing: -.035em; resize: vertical; }
.field textarea { min-height: 140px; line-height: 1.25; }
.field input::placeholder, .field textarea::placeholder { color: #3f3e3a; }
.field select { appearance: none; cursor: pointer; background-image: linear-gradient(45deg, transparent 50%, #74716b 50%), linear-gradient(135deg, #74716b 50%, transparent 50%); background-position: calc(100% - 18px) 50%, calc(100% - 12px) 50%; background-size: 6px 6px, 6px 6px; background-repeat: no-repeat; }
.field select option { background: #111; color: var(--text); }
.chips { display: flex; flex-wrap: wrap; gap: 9px; }
.chips label { cursor: pointer; }
.chips input { position: absolute; opacity: 0; pointer-events: none; }
.chips span { display: inline-flex; padding: 10px 14px; border: 1px solid var(--line); border-radius: 999px; color: #a4a19a; font-size: 12px; transition: .2s ease; }
.chips input:checked + span { background: var(--accent); border-color: var(--accent); color: #090909; }
.submit-button { margin-top: 30px; width: 100%; min-height: 82px; border: 0; border-radius: 999px; background: var(--accent); color: #090909; display: flex; justify-content: space-between; align-items: center; padding: 0 30px; font-weight: 760; font-size: 22px; cursor: pointer; transition: transform .25s ease, filter .25s ease; }
.submit-button:hover { filter: brightness(1.06); }
.submit-button b { font-size: 28px; font-weight: 400; }
.submit-button[disabled] { opacity: .55; cursor: progress; }
.form-status { min-height: 20px; margin: 14px 0 0; font-size: 13px; color: var(--accent); }
.form-status.is-error { color: #ff7e65; }
.form-legal { margin: 8px 0 0; font-size: 10px; color: #5f5d57; line-height: 1.4; }
.hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

.footer { padding: 70px 0 34px; border-top: 1px solid var(--line); }
.footer-brand { font-size: clamp(72px, 13vw, 200px); line-height: .78; letter-spacing: -.085em; font-weight: 950; color: transparent; -webkit-text-stroke: 1px rgba(244,241,232,.36); }
.footer-brand span { font-size: .15em; vertical-align: top; margin-left: .1em; -webkit-text-stroke: 0; color: var(--accent); }
.footer-line { margin-top: 72px; padding-top: 22px; border-top: 1px solid var(--line); display: grid; grid-template-columns: 1fr 1fr auto; gap: 24px; font-size: 10px; letter-spacing: .1em; color: #6e6b65; }
.footer-line a { color: #a7a49d; }

.reveal { opacity: 0; transform: translateY(26px); transition: opacity .8s cubic-bezier(.2,.8,.2,1), transform .8s cubic-bezier(.2,.8,.2,1); }
.reveal.is-visible { opacity: 1; transform: translateY(0); }

@media (max-width: 1100px) {
  :root { --shell: min(100% - 34px, 1460px); }
  .desktop-nav, .header-cta { display: none; }
  .site-header { grid-template-columns: 1fr auto; }
  .menu-toggle { display: grid; place-items: center; width: 42px; height: 42px; border: 1px solid var(--line); border-radius: 50%; background: transparent; cursor: pointer; }
  .menu-toggle span { position: absolute; width: 15px; height: 1px; background: var(--text); transition: .25s ease; }
  .menu-toggle span:first-child { transform: translateY(-3px); }
  .menu-toggle span:last-child { transform: translateY(3px); }
  .menu-toggle[aria-expanded="true"] span:first-child { transform: rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span:last-child { transform: rotate(-45deg); }
  .mobile-menu { position: fixed; top: var(--header-h); left: 17px; right: 17px; padding: 18px; border: 1px solid var(--line); border-radius: 18px; background: rgba(13,13,13,.98); backdrop-filter: blur(20px); flex-direction: column; gap: 0; box-shadow: 0 22px 50px rgba(0,0,0,.35); }
  .mobile-menu:not([hidden]) { display: flex; }
  .mobile-menu a { padding: 15px 8px; border-bottom: 1px solid var(--line); font-size: 18px; }
  .mobile-menu a:last-child { border-bottom: 0; color: var(--accent); }

  .manifesto { grid-template-columns: 1fr; gap: 34px; }
  .section-heading, .contact-grid { grid-template-columns: 1fr; gap: 44px; }
  .section-heading > p { max-width: 680px; }
  .project-card--hero, .project-card:nth-child(2), .project-card:nth-child(3), .project-card--wide { grid-column: span 6; }
  .project-card { min-height: 540px; }
  .about-layout { grid-template-columns: 1fr; gap: 60px; }
  .about-sticky, .contact-copy { position: static; }
  .capability-strip { grid-template-columns: repeat(3, 1fr); }
  .capability-strip > div:nth-child(3) { border-right: 0; }
  .capability-strip > div:nth-child(-n+3) { border-bottom: 1px solid var(--line); }
  .pricing-grid { grid-template-columns: 1fr; }
  .price-card { min-height: auto; }
  .price-card--featured { transform: none; }
  .price-intro { min-height: 0; }
}

@media (max-width: 760px) {
  :root { --shell: calc(100vw - 24px); --header-h: 72px; --radius: 20px; }
  .brand-word { font-size: 15px; }
  .brand-mark { width: 34px; height: 34px; }
  .hero { padding-top: 40px; min-height: auto; }
  .hero-title-wrap { margin-top: 54px; }
  .hero h1 { font-size: clamp(62px, 21vw, 118px); line-height: .79; }
  .hero-line--accent { padding-left: 0; }
  .hero-line--outline { padding-left: 0; }
  .hero-bottom { grid-template-columns: 1fr; align-items: start; margin-top: 50px; }
  .round-link { width: 116px; height: 116px; padding: 20px; }
  .hero-lead { font-size: 22px; }
  .manifesto, .projects, .about, .pricing, .online, .contact { padding-top: 100px; padding-bottom: 100px; }
  .manifesto-text { font-size: 44px; }
  .section-heading { margin-bottom: 44px; }
  .section-heading h2, .about h2, .online h2, .contact h2 { font-size: clamp(48px, 14.5vw, 78px); }
  .section-heading > p, .contact-copy p, .about-block p { font-size: 16px; }

  .project-grid { display: block; }
  .project-card, .project-card--hero, .project-card:nth-child(2), .project-card:nth-child(3), .project-card--wide, .project-card--lab { width: 100%; min-height: 0; margin-bottom: 14px; display: flex; }
  .project-card--lab .lab-console { border-right: 0; border-bottom: 1px solid var(--line); }
  .project-visual { min-height: 260px; }
  .project-card__body { padding: 24px; flex-direction: column; align-items: flex-start; }
  .project-card__body h3 { font-size: 38px; }
  .project-card--lab .project-card__body { padding: 26px 24px; min-height: 280px; }
  .lab-console { min-height: 240px !important; padding: 30px 24px; font-size: 18px; }
  .wide-stamp { font-size: 120px; }

  .about-block { grid-template-columns: 42px 1fr; gap: 12px; padding: 34px 0; }
  .about-quote { margin-top: 36px; padding: 26px; font-size: 30px; }
  .capability-strip { grid-template-columns: 1fr 1fr; margin-top: 70px; }
  .capability-strip > div { min-height: 110px; }
  .capability-strip > div:nth-child(odd) { border-right: 1px solid var(--line); }
  .capability-strip > div:nth-child(even) { border-right: 0; }
  .capability-strip > div { border-bottom: 1px solid var(--line); }
  .capability-strip > div:last-child { border-bottom: 0; }

  .pricing-grid { gap: 12px; }
  .price-card { padding: 24px; }
  .price-card h3 { margin-top: 48px; }
  .social-list a { grid-template-columns: 42px 1fr auto; min-height: 100px; gap: 10px; }
  .social-meta { display: none; }
  .social-list strong { font-size: 31px; }
  .contact-grid { gap: 56px; }
  .field { padding: 22px 0; }
  .field input, .field textarea, .field select { font-size: 24px; }
  .submit-button { min-height: 72px; }
  .footer-brand { font-size: 20vw; }
  .footer-line { grid-template-columns: 1fr; gap: 12px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .reveal { opacity: 1; transform: none; }
  .cursor-glow { display: none; }
}


/* === SOZDARIUM Demand Widget =============================================== */
.sz-contact{position:fixed;right:24px;bottom:24px;z-index:9999;display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.sz-hint{position:absolute;right:78px;bottom:13px;white-space:nowrap;padding:10px 13px;border:1px solid rgba(255,255,255,.11);border-radius:15px;background:rgba(14,16,14,.9);backdrop-filter:blur(18px);box-shadow:0 12px 35px rgba(0,0,0,.28);font-size:13px;color:#e9ece5;transform-origin:right center;animation:szHintIn .55s .9s both cubic-bezier(.2,.9,.25,1.2);transition:.25s ease}.sz-contact.is-open .sz-hint{opacity:0;transform:translateX(8px) scale(.96);pointer-events:none}
.sz-panel{width:min(370px,calc(100vw - 30px));padding:16px;border:1px solid rgba(255,255,255,.11);border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.035),transparent 30%),rgba(17,19,17,.94);backdrop-filter:blur(24px) saturate(1.2);box-shadow:0 28px 80px rgba(0,0,0,.52);opacity:0;visibility:hidden;transform:translateY(18px) scale(.93);transform-origin:calc(100% - 28px) 100%;transition:opacity .28s ease,transform .42s cubic-bezier(.18,.9,.22,1.16),visibility .28s;overflow:hidden}.sz-contact.is-open .sz-panel{opacity:1;visibility:visible;transform:translateY(0) scale(1)}
.sz-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:4px 3px 14px}.sz-kicker{color:var(--acid,#c8ff2e);text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:800}.sz-title{margin:5px 0 0;font-size:22px;line-height:1.05;letter-spacing:-.035em}.sz-close{width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.11);background:transparent;color:#dfe3da;font-size:20px;cursor:pointer;display:grid;place-items:center;transition:.2s ease}.sz-close:hover{background:rgba(255,255,255,.06);transform:rotate(6deg)}
.sz-note{margin:0 3px 13px;color:#9aa098;font-size:13px;line-height:1.45}.sz-actions{display:grid;gap:8px}.sz-action,.sz-project-choice{appearance:none;width:100%;border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.025);color:#eef0ec;padding:13px 14px;border-radius:16px;text-align:left;cursor:pointer;font:inherit;font-size:13px;font-weight:800;display:flex;justify-content:space-between;align-items:center;transition:.2s ease}.sz-action:hover,.sz-project-choice:hover{border-color:rgba(200,255,46,.45);background:rgba(200,255,46,.06);transform:translateY(-1px)}.sz-action--primary{background:var(--acid,#c8ff2e);color:#090b08;border-color:transparent}.sz-action--primary:hover{background:#d8ff63;color:#090b08}
.sz-back{border:0;background:transparent;color:#9aa098;padding:0 2px 10px;cursor:pointer;font:inherit;font-size:12px}.sz-form{display:grid;gap:9px}.sz-form input,.sz-form textarea{width:100%;border:1px solid rgba(255,255,255,.11);background:#0d100d;color:#f5f6f2;border-radius:13px;padding:12px 13px;font:inherit;outline:0}.sz-form textarea{resize:vertical;min-height:86px}.sz-form input:focus,.sz-form textarea:focus{border-color:rgba(200,255,46,.55)}.sz-widget-status{min-height:18px;margin:5px 2px 0;color:#9aa098;font-size:11px}.sz-widget-status.is-error{color:#ff8c8c}
.sz-primary{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:15px 16px;border:0;border-radius:17px;text-decoration:none;color:#0a0b08;background:var(--acid,#c8ff2e);font:inherit;font-weight:900;letter-spacing:-.02em;cursor:pointer;box-shadow:0 12px 34px rgba(183,255,46,.12);transition:.22s ease}.sz-primary:hover{transform:translateY(-2px);background:#d5ff59}.sz-grid{margin-top:10px;display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.sz-link{min-height:58px;display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid rgba(255,255,255,.11);border-radius:16px;background:rgba(255,255,255,.025);color:#eef0ec;text-decoration:none;font-size:13px;font-weight:700;transition:.2s ease}.sz-link:hover{border-color:rgba(200,255,46,.45);background:rgba(200,255,46,.06);transform:translateY(-2px)}.sz-ico{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.09);background:#161a15;font-size:14px}.sz-foot{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding:3px 3px 0;color:#70776e;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.sz-online{display:flex;align-items:center;gap:6px}.sz-dot{width:7px;height:7px;border-radius:50%;background:var(--acid,#c8ff2e);box-shadow:0 0 16px rgba(200,255,46,.8)}
.sz-launch{position:relative;width:66px;height:66px;padding:0;border:0;border-radius:22px;background:transparent;cursor:pointer;filter:drop-shadow(0 18px 24px rgba(0,0,0,.38));transition:transform .2s ease,filter .2s ease;animation:szBotFloat 3.2s ease-in-out infinite}.sz-launch:hover{transform:translateY(-3px) rotate(-2deg);filter:drop-shadow(0 21px 32px rgba(164,232,30,.17))}.sz-contact.is-open .sz-launch{animation:none}.sz-bot{position:absolute;inset:0}.sz-bot-head{position:absolute;left:7px;top:5px;width:52px;height:48px;border-radius:18px 18px 16px 16px;background:linear-gradient(145deg,#d8ff73,#8ed50f);border:1px solid rgba(255,255,255,.45);box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 0 0 5px rgba(200,255,46,.055)}.sz-bot-face{position:absolute;left:12px;top:13px;width:42px;height:30px;border-radius:11px;background:#0c100b;border:1px solid rgba(0,0,0,.7);overflow:hidden}.sz-bot-face:before,.sz-bot-face:after{content:"";position:absolute;top:10px;width:7px;height:7px;border-radius:2px;background:var(--acid,#c8ff2e);box-shadow:0 0 12px rgba(200,255,46,.8);animation:szBlink 4.2s infinite}.sz-bot-face:before{left:9px}.sz-bot-face:after{right:9px}.sz-bot-mouth{position:absolute;left:16px;bottom:5px;width:10px;height:2px;border-radius:4px;background:#61735b}.sz-bot-body{position:absolute;left:18px;top:49px;width:30px;height:14px;border-radius:7px 7px 10px 10px;background:#a9e929;border:1px solid rgba(255,255,255,.28)}.sz-bot-leg{position:absolute;top:59px;width:10px;height:7px;border-radius:4px;background:#719d16}.sz-bot-leg.l{left:20px}.sz-bot-leg.r{right:20px}.sz-bot-glow{position:absolute;inset:-7px;border-radius:30px;border:1px solid rgba(200,255,46,.12);animation:szPulse 2.4s ease-out infinite;pointer-events:none}
@keyframes szBotFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes szBlink{0%,43%,47%,100%{transform:scaleY(1)}45%{transform:scaleY(.08)}}@keyframes szPulse{0%{transform:scale(.92);opacity:.8}70%,100%{transform:scale(1.18);opacity:0}}@keyframes szHintIn{from{opacity:0;transform:translateX(8px) scale(.94)}to{opacity:1;transform:none}}
@media(max-width:600px){.sz-contact{right:14px;bottom:max(14px,env(safe-area-inset-bottom))}.sz-panel{width:calc(100vw - 28px);border-radius:21px}.sz-hint{display:none}.sz-launch{width:60px;height:60px}}
@media(prefers-reduced-motion:reduce){.sz-contact *,.sz-contact *:before,.sz-contact *:after{animation:none!important;transition-duration:.01ms!important}}


/* SOZDARIUM MOBILE OVERFLOW PATCH v1.5.1 */
html, body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden !important;
}

body {
  position: relative;
}

img, svg, video, canvas, iframe {
  max-width: 100%;
}

@media (max-width: 768px) {
  .shell,
  .container,
  .page-shell,
  main,
  section {
    max-width: 100vw;
    overflow-x: clip;
  }

  .hero-title,
  .hero h1,
  .hero__title {
    max-width: 100%;
    font-size: clamp(42px, 13vw, 72px);
    letter-spacing: -0.065em;
    overflow-wrap: anywhere;
    word-break: break-word;
  }

  .marquee,
  .ticker,
  .running-line,
  .tags-line {
    width: 100%;
    max-width: 100vw;
    overflow: hidden;
  }

  .menu,
  .nav {
    max-width: 100%;
  }

  .feedback-widget,
  .contact-widget,
  .sozdarium-widget {
    right: 12px;
    max-width: calc(100vw - 24px);
  }
}

/* SOZDARIUM v1.6.1 mobile typography */
@media (max-width:768px){
  h1,h2,h3,.hero-title,.project-title{
    overflow-wrap:break-word;
  }
  .footer-tagline{
    white-space:normal;
    overflow-wrap:break-word;
  }
}

/* SOZDARIUM v1.6.2 mobile */
html, body { overflow-x:hidden; }
@media(max-width:768px){
  h1,h2,h3,.hero-title,.project-title,.visual-word{
    max-width:100%;
    overflow-wrap:break-word;
    word-break:normal;
  }
  .footer-tagline,.footer-location{
    white-space:normal;
    overflow-wrap:break-word;
  }
  img,svg{max-width:100%;height:auto;}
}
