:root {
  --bg: #080808;
  --bg-2: #101010;
  --surface: #151515;
  --soft: #f4f2f6;
  --white: #ffffff;
  --text: #171717;
  --muted: #6d6872;
  --muted-light: #a6a1aa;
  --purple: #8c3fd9;
  --purple-2: #6f20c8;
  --purple-soft: #efe3fb;
  --line: rgba(255,255,255,.12);
  --line-dark: rgba(15,15,15,.12);
  --radius: 24px;
  --shadow: 0 25px 80px rgba(0,0,0,.16);
  --container: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
html, body { overflow-x: hidden; }
body {
  margin: 0;
  font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  color: var(--text);
  background: #fff;
  -webkit-font-smoothing: antialiased;
}
.container > *, .hero-layout > *, .split-heading > *, .lite-site-layout > *, .express-layout > *, .result-layout > *, .quote-layout > *, .desktop-project > *, .about-layout > *, .faq-layout > *, .closing-inner > *, .site-options > *, .feature-grid > *, .process-track > *, .scope-grid > *, .fit-layout > *, .footer-inner > * { min-width: 0; }
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
button { color: inherit; }
img { max-width: 100%; display: block; }
.container { width: min(calc(100% - 40px), var(--container)); margin: 0 auto; }
.section { padding: 112px 0; position: relative; }
.section-dark { background: var(--bg); color: #fff; }
.section-soft { background: var(--soft); }

.scroll-progress { position: fixed; top: 0; left: 0; right: 0; height: 3px; z-index: 120; background: rgba(255,255,255,.04); }
.scroll-progress span { display: block; width: 0; height: 100%; background: linear-gradient(90deg, var(--purple), #c289ff); }

.site-header {
  position: fixed; top: 0; left: 0; right: 0; z-index: 100;
  height: 84px; display: flex; align-items: center;
  background: rgba(8,8,8,.74); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
  border-bottom: 1px solid transparent; transition: .25s ease;
}
.site-header.is-scrolled { height: 72px; border-bottom-color: rgba(255,255,255,.08); background: rgba(8,8,8,.92); }
.header-inner { display: grid; grid-template-columns: 190px 1fr auto; gap: 28px; align-items: center; }
.brand img { width: 148px; height: auto; }
.main-nav { display: flex; justify-content: center; gap: 27px; }
.main-nav a { color: rgba(255,255,255,.66); font-size: 13px; font-weight: 600; transition: .2s ease; }
.main-nav a:hover, .main-nav a.is-active { color: #fff; }
.menu-toggle { display: none; border: 0; background: transparent; width: 42px; height: 42px; padding: 10px; cursor: pointer; }
.menu-toggle span { display: block; height: 2px; background: #fff; margin: 6px 0; transition: .25s ease; }

.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 12px;
  min-height: 48px; padding: 0 22px; border-radius: 12px; font-weight: 700; font-size: 14px;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease; border: 1px solid transparent;
}
.btn:hover { transform: translateY(-2px); }
.btn-primary { color: #fff; background: linear-gradient(135deg, var(--purple), var(--purple-2)); box-shadow: 0 14px 38px rgba(140,63,217,.22); }
.btn-primary:hover { box-shadow: 0 18px 45px rgba(140,63,217,.34); }
.btn-ghost { color: #fff; border-color: rgba(255,255,255,.18); background: rgba(255,255,255,.03); }
.btn-ghost:hover { background: rgba(255,255,255,.08); }
.btn-light { background: #fff; color: #111; }
.btn-lg { min-height: 56px; padding: 0 27px; border-radius: 14px; }
.btn-small { min-height: 44px; padding: 0 18px; }
.btn-block { width: 100%; }
.text-link { display: inline-flex; align-items: center; gap: 8px; color: var(--purple); font-weight: 700; font-size: 14px; }
.text-link span { transition: transform .2s ease; }
.text-link:hover span { transform: translateX(4px); }

.eyebrow { display: inline-flex; align-items: center; gap: 10px; font-size: 11px; font-weight: 800; letter-spacing: .15em; color: rgba(255,255,255,.56); margin-bottom: 24px; }
.eyebrow span { width: 24px; height: 2px; background: var(--purple); border-radius: 999px; }
.eyebrow-dark { color: #837d87; }

.hero { min-height: 850px; padding: 168px 0 100px; overflow: hidden; }
.hero-grid-bg, .closing-grid, .about-grid {
  position: absolute; inset: 0; pointer-events: none; opacity: .34;
  background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 54px 54px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.85), transparent 92%);
}
.hero-glow { position: absolute; border-radius: 50%; filter: blur(10px); pointer-events: none; }
.hero-glow-one { width: 560px; height: 560px; right: -160px; top: 55px; background: radial-gradient(circle, rgba(140,63,217,.24), transparent 68%); }
.hero-glow-two { width: 420px; height: 420px; left: 28%; bottom: -250px; background: radial-gradient(circle, rgba(140,63,217,.13), transparent 70%); }
.hero-layout { position: relative; z-index: 2; display: grid; grid-template-columns: 1.04fr .96fr; align-items: center; gap: 72px; }
.hero h1, .section-heading h2, .split-heading h2, .express-copy h2, .result-heading h2, .quote-copy h2, .about-copy h2, .faq-heading h2, .closing-inner h2 {
  font-family: 'Manrope', sans-serif; letter-spacing: -.045em; margin: 0;
}
.hero h1 { font-size: clamp(48px, 5.15vw, 76px); line-height: .99; max-width: 780px; }
.hero h1 em { color: #b96fff; font-style: normal; }
.hero-lead { margin: 26px 0 0; max-width: 670px; color: rgba(255,255,255,.66); font-size: 18px; line-height: 1.7; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 38px; }
.hero-note { display: block; margin: 11px 0 0; color: rgba(255,255,255,.34); font-size: 10px; }
.hero-highlight { margin-top: 45px; max-width: 690px; display: grid; grid-template-columns: auto 1fr auto; gap: 17px; align-items: center; padding: 15px 16px; border: 1px solid rgba(255,255,255,.11); border-radius: 16px; background: rgba(255,255,255,.045); }
.hero-highlight-badge { align-self: stretch; display: grid; place-items: center; padding: 0 13px; border-radius: 11px; color: #d8afff; background: rgba(140,63,217,.15); font-size: 8px; font-weight: 800; letter-spacing: .12em; white-space: nowrap; }
.hero-highlight div:nth-child(2) { display: flex; flex-direction: column; gap: 4px; }
.hero-highlight strong { font: 700 14px 'Manrope', sans-serif; }
.hero-highlight span { color: rgba(255,255,255,.5); font-size: 11px; line-height: 1.5; }
.hero-highlight span b { color: rgba(255,255,255,.86); }
.hero-highlight > a { width: 36px; height: 36px; border-radius: 9px; display: grid; place-items: center; background: #fff; color: #111; font-weight: 800; }

.hero-visual { position: relative; padding: 22px 0 50px; isolation: isolate; }
.hero-brand-motion {
  --logo-x: 0px;
  --logo-y: 0px;
  position: absolute; z-index: -1; width: min(570px, 122%); aspect-ratio: 1.29 / 1;
  right: -145px; top: -102px; pointer-events: none;
  transform: translate3d(var(--logo-x), var(--logo-y), 0) rotate(-7deg);
  transition: transform .18s ease-out;
}
.hero-brand-motion::before {
  content: ''; position: absolute; inset: 4% 7%; border-radius: 50%;
  background: radial-gradient(circle, rgba(140,63,217,.24), rgba(140,63,217,.07) 44%, transparent 72%);
  filter: blur(25px); animation: brandGlow 5.5s ease-in-out infinite;
}
.hero-brand-motion img {
  position: relative; z-index: 2; width: 100%; opacity: .26;
  filter: drop-shadow(0 0 34px rgba(140,63,217,.22));
  animation: brandFloat 7s ease-in-out infinite;
}
.brand-motion-ring { position: absolute; z-index: 1; border: 1px solid rgba(185,111,255,.16); border-radius: 50%; }
.brand-motion-ring-one { width: 82%; height: 82%; left: 9%; top: 7%; animation: brandOrbit 16s linear infinite; }
.brand-motion-ring-two { width: 60%; height: 60%; left: 21%; top: 18%; border-style: dashed; opacity: .7; animation: brandOrbitReverse 11s linear infinite; }
.brand-motion-particle { position: absolute; z-index: 3; width: 7px; height: 7px; border-radius: 50%; background: #b96fff; box-shadow: 0 0 18px rgba(185,111,255,.8); }
.particle-one { right: 14%; top: 22%; animation: particlePulse 3.2s ease-in-out infinite; }
.particle-two { left: 15%; bottom: 24%; width: 5px; height: 5px; animation: particlePulse 3.9s .5s ease-in-out infinite; }
.particle-three { right: 31%; bottom: 8%; width: 4px; height: 4px; animation: particlePulse 4.4s 1s ease-in-out infinite; }

.browser-card { position: relative; border: 1px solid rgba(255,255,255,.14); border-radius: 22px; padding: 8px; background: rgba(255,255,255,.06); box-shadow: 0 35px 90px rgba(0,0,0,.48); transform: perspective(1200px) rotateY(-3deg) rotateX(1deg); transition: transform .35s ease; }
.browser-card:hover { transform: perspective(1200px) rotateY(0) rotateX(0) translateY(-5px); }
.browser-top { height: 46px; display: grid; grid-template-columns: 72px 1fr 30px; align-items: center; gap: 10px; padding: 0 11px; }
.browser-dots { display: flex; gap: 6px; }
.browser-dots i { width: 8px; height: 8px; border-radius: 50%; background: rgba(255,255,255,.22); }
.browser-address { height: 27px; border: 1px solid rgba(255,255,255,.08); border-radius: 8px; display: flex; align-items: center; justify-content: center; color: rgba(255,255,255,.35); font-size: 10px; }
.browser-lock { font-size: 7px; color: #83d79f; text-align: center; }
.browser-screen { min-height: 442px; border-radius: 15px; background: linear-gradient(145deg, #f9f7fb, #eee9f2); color: #161318; overflow: hidden; position: relative; }
.demo-nav { display: flex; justify-content: space-between; align-items: center; padding: 24px 28px; border-bottom: 1px solid rgba(0,0,0,.06); }
.demo-logo { font-size: 11px; letter-spacing: -.03em; font-weight: 800; }
.demo-logo span { color: var(--purple); }
.demo-links { display: flex; gap: 8px; }
.demo-links i { display: block; width: 24px; height: 3px; border-radius: 9px; background: rgba(0,0,0,.15); }
.demo-slide { position: absolute; left: 0; right: 0; top: 73px; bottom: 0; padding: 52px 38px; opacity: 0; transform: translateY(12px); pointer-events: none; transition: .35s ease; }
.demo-slide.is-active { opacity: 1; transform: translateY(0); pointer-events: auto; }
.demo-kicker { color: var(--purple); font-size: 9px; font-weight: 800; letter-spacing: .14em; }
.demo-slide h3 { margin: 12px 0 14px; max-width: 350px; font: 800 31px/1.05 'Manrope', sans-serif; letter-spacing: -.05em; }
.demo-slide p { color: #6d6872; font-size: 12px; line-height: 1.65; max-width: 320px; }
.demo-slide button { margin-top: 14px; height: 38px; padding: 0 16px; border: 0; border-radius: 8px; color: #fff; background: #121212; font-size: 10px; font-weight: 700; }
.demo-bars { display: grid; grid-template-columns: 1.2fr .8fr 1fr; gap: 9px; margin-top: 39px; }
.demo-bars i { height: 70px; border-radius: 10px; background: linear-gradient(145deg, rgba(140,63,217,.16), rgba(140,63,217,.05)); }
.demo-bars i:nth-child(2) { height: 92px; margin-top: -22px; background: linear-gradient(145deg, rgba(18,18,18,.92), rgba(18,18,18,.72)); }
.demo-services { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-top: 34px; }
.demo-services i { height: 145px; border-radius: 12px; background: linear-gradient(145deg, #171717, #303030); }
.demo-services i:nth-child(2) { background: linear-gradient(145deg, var(--purple), #b879ef); }
.demo-contact { display: grid; grid-template-columns: 1fr .7fr; gap: 11px; margin-top: 26px; }
.demo-contact i { height: 90px; border-radius: 12px; background: #fff; border: 1px solid rgba(0,0,0,.08); }
.demo-contact i:nth-child(2) { background: var(--purple-soft); border: 0; }
.demo-switcher { display: flex; gap: 8px; justify-content: center; margin-top: 18px; }
.demo-switcher button { border: 1px solid rgba(255,255,255,.12); color: rgba(255,255,255,.44); background: rgba(255,255,255,.04); border-radius: 999px; padding: 8px 14px; font-size: 10px; font-weight: 700; cursor: pointer; transition: .2s ease; }
.demo-switcher button.is-active { color: #fff; border-color: rgba(185,111,255,.42); background: rgba(140,63,217,.18); }
.floating-chip { position: absolute; z-index: 4; padding: 11px 14px; border: 1px solid rgba(255,255,255,.14); border-radius: 12px; color: rgba(255,255,255,.76); background: rgba(17,17,17,.82); backdrop-filter: blur(12px); box-shadow: 0 15px 40px rgba(0,0,0,.28); font-size: 10px; font-weight: 700; }
.floating-chip span { color: #be79ff; margin-right: 5px; }
.chip-one { left: -25px; bottom: 85px; }
.chip-two { right: -18px; top: 76px; }

.quick-benefits { background: #111; color: #fff; border-top: 1px solid rgba(255,255,255,.07); border-bottom: 1px solid rgba(255,255,255,.07); }
.quick-benefits-grid { display: grid; grid-template-columns: repeat(4,1fr); }
.quick-benefits-grid > div { position: relative; min-height: 142px; padding: 30px 28px; display: flex; flex-direction: column; gap: 7px; border-right: 1px solid rgba(255,255,255,.08); }
.quick-benefits-grid > div:last-child { border-right: 0; }
.quick-benefits-grid span { color: #b66ef6; font: 700 10px 'Manrope',sans-serif; }
.quick-benefits-grid strong { font: 700 15px 'Manrope',sans-serif; }
.quick-benefits-grid small { color: rgba(255,255,255,.43); font-size: 11px; line-height: 1.55; }

.split-heading { display: grid; grid-template-columns: .92fr 1.08fr; gap: 100px; align-items: end; margin-bottom: 54px; }
.split-heading h2 { font-size: clamp(38px, 4vw, 58px); line-height: 1.04; }
.split-copy { padding-bottom: 5px; }
.split-copy p { margin: 0 0 14px; color: var(--muted); font-size: 15px; line-height: 1.75; }
.split-copy p:last-child { margin-bottom: 0; }

.site-options { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.site-option { min-height: 560px; padding: 34px; border: 1px solid var(--line-dark); border-radius: var(--radius); background: #fff; display: flex; flex-direction: column; transition: .25s ease; }
.site-option:hover { transform: translateY(-5px); box-shadow: var(--shadow); }
.site-option-featured { color: #fff; border-color: #171717; background: linear-gradient(145deg, #171717, #0d0d0d); box-shadow: 0 24px 70px rgba(0,0,0,.14); }
.site-option-top { display: flex; align-items: center; justify-content: space-between; }
.solution-tag { color: #d4a8fa; background: rgba(140,63,217,.16); border: 1px solid rgba(185,111,255,.2); border-radius: 999px; padding: 7px 10px; font-size: 8px; font-weight: 800; letter-spacing: .1em; }
.solution-tag-soft { color: #6e6872; background: #f2eff4; border-color: transparent; }
.solution-number { color: rgba(255,255,255,.25); font: 700 11px 'Manrope',sans-serif; }
.site-option:not(.site-option-featured) .solution-number { color: #a5a0a8; }
.solution-icon { margin-top: 47px; width: 48px; height: 48px; display: grid; place-items: center; color: #111; background: #fff; border-radius: 12px; font-size: 20px; }
.solution-icon-dark { color: #fff; background: #151515; }
.site-option h3 { margin: 25px 0 13px; font: 800 29px/1.06 'Manrope',sans-serif; letter-spacing: -.04em; }
.site-option > p { margin: 0; color: rgba(255,255,255,.52); font-size: 13px; line-height: 1.7; }
.site-option:not(.site-option-featured) > p { color: var(--muted); }
.site-option ul { list-style: none; margin: 27px 0 34px; padding: 22px 0 0; border-top: 1px solid rgba(255,255,255,.1); }
.site-option:not(.site-option-featured) ul { border-top-color: var(--line-dark); }
.site-option li { position: relative; padding: 7px 0 7px 23px; color: rgba(255,255,255,.68); font-size: 12px; }
.site-option:not(.site-option-featured) li { color: #68626b; }
.site-option li::before { content: '✓'; position: absolute; left: 0; color: #b86eff; font-weight: 800; }
.solution-bottom { margin-top: auto; display: flex; align-items: end; justify-content: space-between; gap: 14px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.1); }
.solution-bottom > div { display: flex; flex-direction: column; gap: 2px; }
.solution-bottom small { color: rgba(255,255,255,.42); font-size: 9px; }
.solution-bottom strong { font: 800 24px 'Manrope',sans-serif; letter-spacing: -.04em; }
.solution-bottom span { color: rgba(255,255,255,.42); font-size: 9px; }
.solution-bottom-dark { border-top-color: var(--line-dark); }
.solution-bottom-dark small, .solution-bottom-dark span { color: #97909a; }
.solution-bottom-dark strong { color: #1c191d; }
.express-guarantee { display: grid; grid-template-columns: auto 1fr; gap: 12px; margin: -12px 0 22px; padding: 16px; border: 1px solid rgba(140,63,217,.2); border-radius: 15px; background: linear-gradient(135deg, #f7f0fd, #efe3fb); }
.express-guarantee-icon { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: linear-gradient(135deg, var(--purple), var(--purple-2)); font-weight: 900; box-shadow: 0 7px 18px rgba(140,63,217,.22); }
.express-guarantee small { display: block; margin-bottom: 4px; color: var(--purple); font-size: 8px; font-weight: 800; letter-spacing: .14em; }
.express-guarantee strong { display: block; color: #25152f; font: 800 14px/1.25 'Manrope',sans-serif; letter-spacing: -.02em; }
.express-guarantee p { margin: 6px 0 0; color: #75667d; font-size: 10px; line-height: 1.5; }

.lite-site-section { overflow: hidden; }
.lite-site-glow { position: absolute; width: 720px; height: 720px; right: -230px; top: 50%; transform: translateY(-50%); border-radius: 50%; background: radial-gradient(circle, rgba(140,63,217,.28), rgba(140,63,217,.07) 43%, transparent 70%); pointer-events: none; }
.lite-site-layout { position: relative; z-index: 2; display: grid; grid-template-columns: 1.03fr .97fr; gap: 88px; align-items: center; }
.lite-site-copy h2 { margin: 0; max-width: 700px; font: 800 clamp(42px,4.8vw,66px)/1.01 'Manrope',sans-serif; letter-spacing: -.05em; }
.lite-site-copy > p { max-width: 670px; margin: 24px 0 30px; color: rgba(255,255,255,.57); font-size: 15px; line-height: 1.8; }
.lite-site-benefits { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-bottom: 32px; }
.lite-site-benefits > div { min-height: 132px; padding: 18px; border: 1px solid rgba(255,255,255,.09); border-radius: 15px; background: rgba(255,255,255,.035); }
.lite-site-benefits strong { display: block; margin-bottom: 8px; font: 700 12px/1.35 'Manrope',sans-serif; }
.lite-site-benefits span { color: rgba(255,255,255,.4); font-size: 10px; line-height: 1.55; }
.lite-site-showcase { position: relative; min-height: 590px; display: grid; place-items: center; isolation: isolate; }
.lite-site-showcase::before { content: ''; position: absolute; inset: 6% 0; z-index: -2; border: 1px solid rgba(255,255,255,.08); border-radius: 34px; background: linear-gradient(145deg, rgba(255,255,255,.07), rgba(255,255,255,.02)); box-shadow: inset 0 1px rgba(255,255,255,.06), 0 35px 90px rgba(0,0,0,.32); }
.lite-site-orbit { position: absolute; z-index: -1; border: 1px solid rgba(190,121,255,.18); border-radius: 50%; pointer-events: none; }
.lite-site-orbit-one { width: 470px; height: 470px; animation: brandOrbit 18s linear infinite; }
.lite-site-orbit-two { width: 360px; height: 360px; border-style: dashed; animation: brandOrbitReverse 13s linear infinite; }
.lite-site-phone { width: 260px; padding: 9px; border: 1px solid rgba(255,255,255,.22); border-radius: 37px; background: #09090a; box-shadow: 0 38px 90px rgba(0,0,0,.55); transform: rotate(3deg); transition: transform .35s ease; }
.lite-site-showcase:hover .lite-site-phone { transform: rotate(0) translateY(-6px); }
.lite-site-phone-speaker { width: 58px; height: 5px; margin: 4px auto 10px; border-radius: 999px; background: #2c2930; }
.lite-site-phone-screen { min-height: 485px; overflow: hidden; padding: 40px 24px 26px; border-radius: 27px; color: #171319; background: linear-gradient(160deg, #fff 0%, #f7efff 63%, #eee0fb 100%); }
.lite-site-real-preview { --lite-screen-height: 485px; height: var(--lite-screen-height); min-height: 0; padding: 0; background: #ecded9; }
.lite-site-real-preview img { width: 100%; max-width: none; height: auto; animation: liteSitePreviewScroll 16s ease-in-out infinite alternate; }
.lite-site-model-label { position: absolute; z-index: 3; right: 30px; top: 55px; padding: 8px 10px; border: 1px solid rgba(255,255,255,.1); border-radius: 999px; color: rgba(255,255,255,.52); background: rgba(255,255,255,.04); font-size: 8px; font-weight: 800; letter-spacing: .12em; }
.lite-site-float-card { position: absolute; z-index: 3; padding: 11px 14px; border: 1px solid rgba(255,255,255,.15); border-radius: 12px; color: rgba(255,255,255,.76); background: rgba(14,14,15,.88); box-shadow: 0 18px 45px rgba(0,0,0,.32); backdrop-filter: blur(12px); font-size: 10px; font-weight: 700; }
.lite-site-float-card span { color: #c17cff; margin-right: 5px; }
.lite-site-float-card-one { left: 25px; top: 150px; }
.lite-site-float-card-two { right: 12px; bottom: 142px; }
.lite-site-showcase-link { position: absolute; right: 30px; bottom: 55px; color: rgba(255,255,255,.48); font-size: 10px; font-weight: 700; }
.lite-site-showcase-link b { color: #c17cff; margin-left: 5px; }

.express-layout { display: grid; grid-template-columns: 1.02fr .74fr; gap: 105px; align-items: center; }
.express-copy h2 { max-width: 720px; font-size: clamp(40px,4.5vw,62px); line-height: 1.02; }
.express-copy > p { max-width: 680px; color: var(--muted); margin: 24px 0 30px; font-size: 15px; line-height: 1.8; }
.express-list { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 0 0 28px; }
.express-list > div { display: flex; gap: 12px; align-items: flex-start; padding: 15px 0; }
.express-list > div > span { flex: 0 0 auto; width: 25px; height: 25px; display: grid; place-items: center; border-radius: 8px; color: var(--purple); background: #fff; font-size: 11px; font-weight: 800; }
.express-list p { margin: 0; display: flex; flex-direction: column; gap: 4px; }
.express-list strong { font-size: 13px; }
.express-list small { color: #7e7881; font-size: 10px; line-height: 1.55; }
.express-price-card { border: 1px solid rgba(17,17,17,.08); border-radius: 28px; background: #fff; padding: 33px; box-shadow: 0 28px 80px rgba(26,19,31,.11); }
.express-price-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.express-price-top span { font: 800 11px 'Manrope',sans-serif; letter-spacing: .08em; }
.express-price-top b { color: var(--purple); background: var(--purple-soft); padding: 7px 9px; border-radius: 8px; font-size: 8px; letter-spacing: .08em; }
.express-price-card > p { margin: 28px 0 0; color: #726b75; font-size: 12px; line-height: 1.7; }
.express-price { display: flex; align-items: flex-start; gap: 7px; margin-top: 24px; }
.express-price small { margin-top: 13px; font: 700 19px 'Manrope',sans-serif; }
.express-price strong { font: 800 59px/1 'Manrope',sans-serif; letter-spacing: -.06em; }
.express-payment { color: #8f8891; font-size: 11px; }
.express-divider { height: 1px; background: var(--line-dark); margin: 27px 0; }
.express-metrics { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; margin-bottom: 26px; }
.express-metrics > div { display: flex; flex-direction: column; gap: 4px; }
.express-metrics strong { font: 800 17px 'Manrope',sans-serif; }
.express-metrics span { color: #9a949c; font-size: 9px; }
.express-small { display: block; margin-top: 14px; color: #99929b; font-size: 9px; line-height: 1.55; text-align: center; }

.section-heading { max-width: 780px; margin-bottom: 58px; }
.section-heading h2 { font-size: clamp(40px,4.5vw,62px); line-height: 1.02; }
.section-heading > p { margin: 19px 0 0; color: rgba(255,255,255,.5); font-size: 15px; line-height: 1.75; max-width: 650px; }
.process-section { overflow: hidden; }
.process-glow { position: absolute; width: 720px; height: 720px; right: -300px; top: -300px; border-radius: 50%; background: radial-gradient(circle, rgba(140,63,217,.16), transparent 68%); }
.process-track { position: relative; display: grid; grid-template-columns: repeat(4,1fr); gap: 0; }
.process-track::before { content: ''; position: absolute; left: 0; right: 0; top: 43px; height: 1px; background: rgba(255,255,255,.11); }
.process-step { position: relative; padding: 0 34px 0 0; }
.process-step > span { color: rgba(255,255,255,.3); font: 700 10px 'Manrope',sans-serif; }
.process-marker { position: relative; z-index: 2; width: 11px; height: 11px; margin: 27px 0 32px; border-radius: 50%; background: var(--purple); box-shadow: 0 0 0 7px rgba(140,63,217,.14); }
.process-step h3 { margin: 0 0 10px; font: 700 19px 'Manrope',sans-serif; }
.process-step p { margin: 0; color: rgba(255,255,255,.46); font-size: 12px; line-height: 1.7; }

.result-layout { display: grid; grid-template-columns: .78fr 1.22fr; gap: 90px; align-items: start; }
.result-heading { position: sticky; top: 110px; }
.result-heading h2 { font-size: clamp(40px,4.4vw,60px); line-height: 1.03; }
.result-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.result-card { min-height: 250px; padding: 30px; border: 1px solid var(--line-dark); border-radius: 20px; background: #fff; }
.result-card span { color: var(--purple); font: 700 10px 'Manrope',sans-serif; }
.result-card h3 { margin: 58px 0 12px; font: 800 21px 'Manrope',sans-serif; letter-spacing: -.03em; }
.result-card p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.75; }

.quote-layout { display: grid; grid-template-columns: .82fr 1.18fr; gap: 100px; align-items: center; }
.quote-copy h2 { font-size: clamp(40px,4.4vw,60px); line-height: 1.03; }
.quote-copy p { margin: 22px 0 0; color: var(--muted); font-size: 14px; line-height: 1.8; }
.quote-card { padding: 30px; border: 1px solid rgba(0,0,0,.08); border-radius: 25px; background: #fff; box-shadow: 0 24px 70px rgba(23,17,28,.08); }
.quote-card fieldset { margin: 0 0 23px; padding: 0; border: 0; }
.quote-card legend { margin-bottom: 11px; font-size: 11px; font-weight: 800; }
.quote-options { display: grid; grid-template-columns: repeat(4,1fr); gap: 8px; }
.quote-options label { cursor: pointer; }
.quote-options input { position: absolute; opacity: 0; pointer-events: none; }
.quote-options span { min-height: 48px; display: grid; place-items: center; padding: 8px; border: 1px solid var(--line-dark); border-radius: 11px; color: #746e77; background: #fff; font-size: 10px; font-weight: 700; text-align: center; transition: .2s ease; }
.quote-options input:checked + span { color: #fff; border-color: #171717; background: #171717; box-shadow: inset 0 0 0 1px rgba(255,255,255,.04); }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.quote-card label:not(.quote-options label) { display: flex; flex-direction: column; gap: 7px; margin-bottom: 13px; color: #4f4952; font-size: 10px; font-weight: 700; }
.quote-card input[type='text'], .quote-card textarea { width: 100%; border: 1px solid var(--line-dark); border-radius: 11px; outline: none; padding: 13px 14px; color: #1b181c; background: #faf9fb; font-size: 12px; transition: .2s ease; resize: vertical; }
.quote-card input[type='text']:focus, .quote-card textarea:focus { border-color: rgba(140,63,217,.55); box-shadow: 0 0 0 3px rgba(140,63,217,.08); }
.quote-card > small { display: block; margin-top: 12px; color: #9b949e; font-size: 9px; text-align: center; }

.desktop-project {
  position: relative; overflow: hidden; margin: -4px 0 18px; min-height: 470px;
  display: grid; grid-template-columns: .95fr 1.05fr; gap: 65px; align-items: center;
  padding: 48px; border-radius: 28px; color: #fff;
  background: linear-gradient(135deg, #171717 0%, #0b0b0b 55%, #171020 100%);
  box-shadow: 0 26px 80px rgba(20,13,25,.13);
}
.desktop-project::before {
  content: ''; position: absolute; width: 520px; height: 520px; right: -240px; bottom: -320px;
  border-radius: 50%; background: radial-gradient(circle, rgba(140,63,217,.28), transparent 68%); pointer-events: none;
}
.desktop-project-visual { position: relative; min-height: 330px; display: grid; place-items: center; }
.desktop-window {
  width: 100%; max-width: 455px; overflow: hidden; border: 1px solid rgba(255,255,255,.15); border-radius: 18px;
  background: #f7f5f8; box-shadow: 0 35px 85px rgba(0,0,0,.42); transform: perspective(900px) rotateY(5deg) rotateX(2deg);
  animation: desktopWindowFloat 7s ease-in-out infinite;
}
.desktop-window-top { height: 48px; display: flex; align-items: center; justify-content: space-between; padding: 0 14px; color: #262229; background: #fff; border-bottom: 1px solid rgba(0,0,0,.07); }
.desktop-window-title { display: flex; align-items: center; gap: 9px; font-size: 10px; font-weight: 700; }
.desktop-app-icon { width: 25px; height: 25px; display: grid; place-items: center; border-radius: 7px; color: #fff; background: linear-gradient(135deg, var(--purple), #701ed0); font: 800 8px 'Manrope',sans-serif; }
.desktop-window-actions { display: flex; gap: 7px; }
.desktop-window-actions i { width: 8px; height: 8px; border-radius: 50%; background: #d9d4dc; }
.desktop-window-body { min-height: 240px; display: grid; grid-template-columns: 56px 1fr; }
.desktop-sidebar { padding: 17px 13px; display: flex; flex-direction: column; gap: 13px; background: #19171a; }
.desktop-sidebar i { width: 28px; height: 8px; border-radius: 99px; background: rgba(255,255,255,.16); }
.desktop-sidebar i:first-child { background: #9f55e8; }
.desktop-content { padding: 22px; }
.desktop-content-head { display: flex; align-items: center; justify-content: space-between; gap: 15px; }
.desktop-content-head i:first-child { width: 44%; height: 12px; border-radius: 99px; background: #242026; }
.desktop-content-head i:last-child { width: 72px; height: 28px; border-radius: 8px; background: var(--purple-soft); }
.desktop-stats { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; margin-top: 20px; }
.desktop-stats i { height: 58px; border: 1px solid rgba(0,0,0,.07); border-radius: 10px; background: #fff; }
.desktop-stats i:nth-child(2) { background: linear-gradient(135deg, #1c1a1d, #302a33); }
.desktop-table { display: grid; gap: 8px; margin-top: 18px; }
.desktop-table span { height: 24px; border-radius: 7px; background: #eae6ed; }
.desktop-table span:nth-child(2) { width: 88%; }
.desktop-table span:nth-child(3) { width: 93%; }
.desktop-table span:nth-child(4) { width: 78%; }
.desktop-code-chip { position: absolute; right: -6px; bottom: 16px; padding: 11px 14px; border: 1px solid rgba(255,255,255,.16); border-radius: 12px; color: #d8c8e5; background: rgba(17,17,17,.9); box-shadow: 0 16px 40px rgba(0,0,0,.28); font-size: 9px; font-weight: 700; letter-spacing: .04em; }
.desktop-project-copy { position: relative; z-index: 2; }
.desktop-project-copy .eyebrow { color: rgba(255,255,255,.5); }
.desktop-project-copy h3 { margin: 0; max-width: 590px; font: 800 clamp(34px,3.5vw,52px)/1.02 'Manrope',sans-serif; letter-spacing: -.045em; }
.desktop-project-copy > p { margin: 20px 0 24px; max-width: 650px; color: rgba(255,255,255,.56); font-size: 13px; line-height: 1.8; }
.desktop-project-points { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 30px; }
.desktop-project-points span { padding: 9px 11px; border: 1px solid rgba(255,255,255,.1); border-radius: 999px; color: rgba(255,255,255,.58); background: rgba(255,255,255,.035); font-size: 9px; font-weight: 600; }
.btn-dark { color: #171217; background: #fff; box-shadow: 0 14px 38px rgba(0,0,0,.2); }
.btn-dark:hover { background: #f4ecfb; }

.secondary-services { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.secondary-card { min-height: 330px; padding: 36px; border: 1px solid var(--line-dark); border-radius: var(--radius); background: #fff; display: flex; flex-direction: column; }
.secondary-card > span { color: var(--purple); font-size: 9px; font-weight: 800; letter-spacing: .12em; }
.secondary-card h3 { margin: 75px 0 15px; font: 800 29px 'Manrope',sans-serif; letter-spacing: -.04em; }
.secondary-card p { margin: 0; max-width: 530px; color: var(--muted); font-size: 13px; line-height: 1.75; }
.secondary-card .text-link { margin-top: auto; padding-top: 26px; }

.about-section { overflow: hidden; }
.about-grid { opacity: .22; mask-image: linear-gradient(90deg, transparent, #000 25%, #000 75%, transparent); }
.about-layout { position: relative; z-index: 2; display: grid; grid-template-columns: .65fr 1.35fr; gap: 100px; align-items: center; }
.about-logo-stage { position: relative; min-height: 380px; display: grid; place-items: center; isolation: isolate; }
.about-logo-stage::before { content: ''; position: absolute; width: 88%; height: 88%; border-radius: 50%; background: radial-gradient(circle, rgba(140,63,217,.28), rgba(140,63,217,.06) 44%, transparent 72%); filter: blur(18px); animation: brandGlow 5.2s ease-in-out infinite; }
.about-logo-stage img { position: relative; z-index: 3; width: min(100%, 350px); filter: drop-shadow(0 0 38px rgba(140,63,217,.25)); animation: aboutLogoBreath 5.8s ease-in-out infinite; }
.about-logo-orbit { position: absolute; z-index: 1; border-radius: 50%; border: 1px solid rgba(185,111,255,.18); }
.about-logo-orbit-one { width: 355px; height: 355px; animation: brandOrbit 18s linear infinite; }
.about-logo-orbit-two { width: 285px; height: 285px; border-style: dashed; opacity: .7; animation: brandOrbitReverse 13s linear infinite; }
.about-logo-dot { position: absolute; z-index: 2; width: 9px; height: 9px; border-radius: 50%; background: #b66ef6; box-shadow: 0 0 24px rgba(182,110,246,.9); }
.about-logo-dot-one { left: calc(50% - 172px); top: 50%; animation: particlePulse 3.5s ease-in-out infinite; }
.about-logo-dot-two { right: calc(50% - 142px); top: 24%; width: 6px; height: 6px; animation: particlePulse 4.2s .8s ease-in-out infinite; }
.about-copy h2 { max-width: 790px; font-size: clamp(42px,4.6vw,64px); line-height: 1.01; }
.about-copy > p { margin: 23px 0 35px; max-width: 720px; color: rgba(255,255,255,.52); font-size: 14px; line-height: 1.8; }
.about-values { display: grid; grid-template-columns: repeat(3,1fr); gap: 11px; }
.about-values div { padding: 20px; border: 1px solid rgba(255,255,255,.09); border-radius: 15px; background: rgba(255,255,255,.035); }
.about-values strong { display: block; margin-bottom: 7px; font: 700 13px 'Manrope',sans-serif; }
.about-values span { color: rgba(255,255,255,.38); font-size: 10px; line-height: 1.55; }

.faq-layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: 95px; }
.faq-heading { position: sticky; top: 120px; align-self: start; }
.faq-heading h2 { font-size: clamp(40px,4vw,58px); line-height: 1.04; }
.faq-heading p { color: var(--muted); font-size: 13px; line-height: 1.7; }
.faq-heading .text-link { margin-top: 16px; }
.faq-list { border-top: 1px solid var(--line-dark); }
.faq-item { border-bottom: 1px solid var(--line-dark); }
.faq-item button { width: 100%; border: 0; background: transparent; padding: 24px 0; display: flex; align-items: center; justify-content: space-between; gap: 20px; cursor: pointer; text-align: left; color: #1d1b1f; font-weight: 700; }
.faq-item button i { width: 28px; height: 28px; flex: 0 0 auto; display: grid; place-items: center; background: #f4eff7; color: var(--purple); border-radius: 8px; font-style: normal; }
.faq-answer { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .28s ease; }
.faq-answer > p { overflow: hidden; margin: 0; color: var(--muted); font-size: 13px; line-height: 1.75; }
.faq-item.is-open .faq-answer { grid-template-rows: 1fr; }
.faq-item.is-open .faq-answer > p { padding-bottom: 24px; }

.closing { position: relative; overflow: hidden; padding: 96px 0 0; }
.closing-grid { opacity: .25; }
.closing-inner { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr auto; gap: 80px; align-items: end; }
.closing-inner h2 { max-width: 820px; font-size: clamp(42px,5vw,68px); line-height: .99; }
.closing-inner p { max-width: 650px; margin: 21px 0 0; color: rgba(255,255,255,.5); font-size: 14px; line-height: 1.75; }
.closing-actions { display: flex; flex-direction: column; gap: 10px; min-width: 245px; }
.contact-strip { position: relative; z-index: 2; margin-top: 70px; min-height: 74px; display: flex; align-items: center; justify-content: space-between; gap: 24px; border-top: 1px solid rgba(255,255,255,.09); color: rgba(255,255,255,.38); font-size: 10px; }

.footer { color: #fff; background: #050505; border-top: 1px solid rgba(255,255,255,.07); }
.footer-inner { min-height: 132px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 520px) auto; align-items: center; gap: 24px; }
.footer-brand { display: flex; align-items: center; gap: 17px; }
.footer-brand img { width: 90px; max-height: 42px; object-fit: contain; object-position: left center; }
.footer-brand span { color: rgba(255,255,255,.36); font-size: 10px; }
.footer-nav { display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; column-gap: 16px; row-gap: 10px; }
.footer-nav a { color: rgba(255,255,255,.48); font-size: 10px; }
.footer-nav a:hover { color: #fff; }
.footer-nav .footer-instagram { display: inline-flex; align-items: center; gap: 7px; padding: 9px 12px; border: 1px solid rgba(255,255,255,.4); border-radius: 999px; background: #050505; color: #fff; font-size: 10px; font-weight: 700; letter-spacing: .01em; box-shadow: 0 7px 22px rgba(0,0,0,.32); transition: transform .2s ease, background .2s ease, box-shadow .2s ease; }
.footer-nav .footer-instagram:hover { color: #fff; background: #1a1a1a; transform: translateY(-2px); box-shadow: 0 10px 28px rgba(0,0,0,.5); }
.footer-instagram svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.footer-inner > small { color: rgba(255,255,255,.28); font-size: 9px; }

.reveal { opacity: 0; transform: translateY(20px); transition: opacity .65s ease, transform .65s ease; }
.reveal.is-visible { opacity: 1; transform: translateY(0); }
.reveal-delay-1 { transition-delay: .08s; }
.reveal-delay-2 { transition-delay: .16s; }
.reveal-delay-3 { transition-delay: .24s; }


@keyframes brandFloat {
  0%,100% { transform: translate3d(0,0,0) rotate(0deg) scale(1); }
  50% { transform: translate3d(0,-13px,0) rotate(1.4deg) scale(1.025); }
}
@keyframes brandGlow {
  0%,100% { opacity: .7; transform: scale(.96); }
  50% { opacity: 1; transform: scale(1.05); }
}
@keyframes brandOrbit { to { transform: rotate(360deg); } }
@keyframes brandOrbitReverse { to { transform: rotate(-360deg); } }
@keyframes particlePulse {
  0%,100% { opacity: .35; transform: scale(.72); }
  50% { opacity: 1; transform: scale(1.45); }
}
@keyframes desktopWindowFloat {
  0%,100% { transform: perspective(900px) rotateY(5deg) rotateX(2deg) translateY(0); }
  50% { transform: perspective(900px) rotateY(2deg) rotateX(1deg) translateY(-9px); }
}
@keyframes liteSitePreviewScroll {
  0%,15% { transform: translateY(0); }
  85%,100% { transform: translateY(calc(-100% + var(--lite-screen-height))); }
}
@keyframes aboutLogoBreath {
  0%,100% { transform: translateY(0) scale(.96) rotate(-1deg); opacity: .88; }
  50% { transform: translateY(-10px) scale(1.02) rotate(1deg); opacity: 1; }
}

/* Portfolio */
.portfolio-hero { min-height: 610px; padding: 190px 0 112px; overflow: hidden; position: relative; }
.portfolio-hero-inner { position: relative; z-index: 1; max-width: 820px; }
.portfolio-hero h1, .portfolio-heading h2, .portfolio-cta h2 { font: 800 clamp(46px, 5.3vw, 76px)/1 'Manrope', sans-serif; letter-spacing: -.055em; margin: 0; }
.portfolio-hero h1 em { color: #b96fff; font-style: normal; }
.portfolio-hero p { max-width: 660px; margin: 27px 0 36px; color: rgba(255,255,255,.64); font-size: 18px; line-height: 1.7; }
.portfolio-glow { position: absolute; border-radius: 50%; pointer-events: none; filter: blur(15px); }
.portfolio-glow-one { width: 620px; height: 620px; top: -260px; right: -70px; background: radial-gradient(circle, rgba(140,63,217,.36), transparent 68%); }
.portfolio-glow-two { width: 500px; height: 500px; bottom: -330px; left: 18%; background: radial-gradient(circle, rgba(185,111,255,.19), transparent 70%); }
.portfolio-projects { padding: 118px 0 132px; background: #fff; }
.portfolio-heading { display: grid; grid-template-columns: 1.04fr .7fr; align-items: end; gap: 90px; margin-bottom: 56px; }
.portfolio-heading h2 { max-width: 680px; font-size: clamp(38px, 4vw, 58px); color: #151218; }
.portfolio-heading p { margin: 0 0 5px; color: var(--muted); font-size: 15px; line-height: 1.75; }
.portfolio-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.portfolio-card { display: block; min-width: 0; overflow: hidden; border: 1px solid rgba(20,16,25,.1); border-radius: 20px; background: #faf9fb; box-shadow: 0 12px 34px rgba(24,15,35,.06); transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.portfolio-card:hover { transform: translateY(-7px); border-color: rgba(140,63,217,.38); box-shadow: 0 24px 50px rgba(54,27,79,.14); }
.portfolio-preview { position: relative; height: 312px; overflow: hidden; background: #e6e1e8; }
.portfolio-preview::after { content: ''; position: absolute; inset: auto 0 0; height: 34%; background: linear-gradient(transparent, rgba(8,8,8,.15)); pointer-events: none; }
.portfolio-preview img { width: 100%; height: 100%; object-fit: contain; object-position: center; transition: transform .55s cubic-bezier(.2,.7,.2,1); }
.portfolio-card-copy { min-height: 126px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 24px 23px; }
.portfolio-type { display: block; margin-bottom: 7px; color: #8c3fd9; font-size: 9px; font-weight: 800; letter-spacing: .14em; }
.portfolio-card h3 { margin: 0; color: #1a171d; font: 800 20px/1.2 'Manrope', sans-serif; letter-spacing: -.035em; }
.portfolio-arrow { flex: 0 0 39px; width: 39px; height: 39px; display: grid; place-items: center; border-radius: 11px; color: #fff; background: #17131a; font-weight: 800; transition: background .2s ease, transform .2s ease; }
.portfolio-card:hover .portfolio-arrow { background: var(--purple); transform: translate(2px,-2px); }
.portfolio-cta { position: relative; overflow: hidden; padding: 103px 0; }
.portfolio-cta-inner { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr .72fr; align-items: center; gap: 100px; }
.portfolio-cta h2 { max-width: 640px; font-size: clamp(38px, 4vw, 58px); }
.portfolio-cta p { margin: 0 0 27px; color: rgba(255,255,255,.61); font-size: 15px; line-height: 1.75; }
.portfolio-teaser { background: #fff; }
.portfolio-teaser-heading { display: grid; grid-template-columns: 1fr .62fr; align-items: end; gap: 80px; margin-bottom: 48px; }
.portfolio-teaser-heading h2 { max-width: 680px; margin: 0; color: #171318; font: 800 clamp(38px, 4vw, 57px)/1.05 'Manrope', sans-serif; letter-spacing: -.05em; }
.portfolio-teaser-heading p { margin: 0 0 15px; color: var(--muted); font-size: 14px; line-height: 1.7; }
.portfolio-teaser-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.portfolio-teaser-card { overflow: hidden; padding: 0 0 21px; border: 1px solid rgba(20,16,25,.1); border-radius: 18px; background: #fff; box-shadow: 0 10px 28px rgba(22,14,35,.06); transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
.portfolio-teaser-card:hover { border-color: rgba(140,63,217,.38); box-shadow: 0 22px 43px rgba(50,25,73,.14); transform: translateY(-5px); }
.portfolio-teaser-image { height: 216px; margin-bottom: 19px; overflow: hidden; background: #e8e3e9; }
.portfolio-teaser-image img { width: 100%; height: 100%; object-fit: contain; object-position: center; transition: transform .45s ease; }
.portfolio-teaser-card > span, .portfolio-teaser-card > strong, .portfolio-teaser-card > b { display: block; margin: 0 20px; }
.portfolio-teaser-card > span { color: var(--purple); font-size: 9px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.portfolio-teaser-card > strong { margin-top: 7px; color: #19151b; font: 800 19px/1.2 'Manrope', sans-serif; letter-spacing: -.035em; }
.portfolio-teaser-card > b { margin-top: 16px; color: #5d5265; font-size: 11px; }

@media (max-width: 920px) {
  .portfolio-heading, .portfolio-cta-inner { grid-template-columns: 1fr; gap: 28px; }
  .portfolio-teaser-heading { grid-template-columns: 1fr; gap: 23px; }
  .portfolio-grid { grid-template-columns: repeat(2, 1fr); }
  .portfolio-grid .portfolio-card:last-child { grid-column: 1 / -1; max-width: calc(50% - 10px); }
}

@media (max-width: 680px) {
  .portfolio-hero { min-height: auto; padding: 142px 0 82px; }
  .portfolio-hero h1 { font-size: clamp(42px, 13vw, 60px); }
  .portfolio-hero p { font-size: 16px; }
  .portfolio-projects { padding: 76px 0 82px; }
  .portfolio-heading { margin-bottom: 38px; }
  .portfolio-grid { grid-template-columns: 1fr; gap: 16px; }
  .portfolio-teaser-grid { grid-template-columns: 1fr; gap: 15px; }
  .portfolio-teaser-image { height: 235px; }
  .portfolio-grid .portfolio-card:last-child { grid-column: auto; max-width: none; }
  .portfolio-preview { height: 280px; }
  .portfolio-card-copy { min-height: 112px; padding: 21px; }
  .portfolio-cta { padding: 74px 0; }
  .portfolio-cta-inner { gap: 25px; }
}

@media (max-width: 1100px) {
  .header-inner { grid-template-columns: 170px 1fr auto; }
  .main-nav { gap: 18px; }
  .hero-layout { gap: 42px; }
  .site-options { grid-template-columns: 1fr 1fr; }
  .site-option-featured { min-height: 560px; }
  .lite-site-layout { gap: 50px; }
  .lite-site-benefits { grid-template-columns: 1fr; }
  .lite-site-benefits > div { min-height: 0; }
  .express-layout, .quote-layout { gap: 60px; }
  .result-layout { gap: 55px; }
  .about-layout { gap: 55px; }
  .desktop-project { gap: 38px; padding: 40px; }
  .footer-inner { grid-template-columns: minmax(0, 1fr) minmax(0, 500px); gap: 24px; padding: 30px 0; }
  .footer-inner > small { grid-column: 1 / -1; }
}

@media (max-width: 920px) {
  .section { padding: 88px 0; }
  .site-header, .site-header.is-scrolled { height: 70px; }
  .header-inner { display: flex; justify-content: space-between; }
  .brand img { width: 135px; }
  .menu-toggle { display: block; order: 3; }
  .header-cta { margin-left: auto; }
  .main-nav { position: fixed; inset: 70px 0 0; z-index: 101; height: calc(100vh - 70px); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 28px; padding: 0; background: #080808; opacity: 0; visibility: hidden; transform: translateY(-10px); transition: .25s ease; }
  .main-nav.is-open { opacity: 1; visibility: visible; transform: translateY(0); }
  .main-nav a { font-size: 18px; }
  .menu-toggle.is-open span:first-child { transform: translateY(4px) rotate(45deg); }
  .menu-toggle.is-open span:last-child { transform: translateY(-4px) rotate(-45deg); }

  .hero { min-height: auto; padding: 132px 0 80px; }
  .hero-layout { grid-template-columns: 1fr; gap: 60px; }
  .hero-copy { max-width: 760px; }
  .hero-visual { max-width: 680px; width: 100%; margin: 0 auto; }
  .chip-one { left: 10px; }
  .chip-two { right: 10px; }
  .quick-benefits-grid { grid-template-columns: 1fr 1fr; }
  .quick-benefits-grid > div:nth-child(2) { border-right: 0; }
  .quick-benefits-grid > div:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.08); }

  .split-heading { grid-template-columns: 1fr; gap: 25px; }
  .lite-site-layout, .express-layout, .result-layout, .quote-layout, .about-layout, .faq-layout { grid-template-columns: 1fr; gap: 55px; }
  .lite-site-copy { max-width: 760px; }
  .lite-site-benefits { grid-template-columns: repeat(3,1fr); }
  .lite-site-showcase { max-width: 680px; width: 100%; margin: 0 auto; }
  .quote-options { grid-template-columns: repeat(2,1fr); }
  .desktop-project { grid-template-columns: 1fr; gap: 35px; }
  .desktop-project-visual { max-width: 620px; width: 100%; margin: 0 auto; }
  .about-logo-stage { min-height: 330px; }
  .express-price-card { max-width: 600px; }
  .result-heading, .faq-heading { position: static; }
  .process-track { grid-template-columns: 1fr 1fr; gap: 44px 16px; }
  .process-track::before { display: none; }
  .process-marker { margin: 17px 0 24px; }
  .about-logo-stage { display: grid; max-width: 430px; width: 100%; margin: 0 auto; }
  .closing-inner { grid-template-columns: 1fr; gap: 34px; }
  .closing-actions { flex-direction: row; min-width: 0; }
  .footer-nav { display: flex; justify-content: flex-end; }
  .footer-nav a:not(.footer-instagram) { display: none; }
}

@media (max-width: 680px) {
  .container { width: min(calc(100% - 30px), var(--container)); }
  .section { padding: 72px 0; }
  .header-cta { display: none; }
  .hero { padding-top: 116px; }
  .hero h1 { font-size: clamp(42px,13vw,60px); }
  .hero-lead { font-size: 16px; }
  .hero-actions { flex-direction: column; }
  .hero-actions .btn { width: 100%; }
  .hero-highlight { grid-template-columns: 1fr auto; }
  .hero-highlight-badge { grid-column: 1 / -1; min-height: 32px; justify-self: start; }
  .browser-card { transform: none; }
  .browser-screen { min-height: 390px; }
  .demo-slide { padding: 38px 25px; }
  .demo-slide h3 { font-size: 26px; }
  .floating-chip { display: none; }
  .hero-brand-motion { width: 480px; right: -175px; top: -80px; opacity: .78; }
  .hero-brand-motion { width: 100%; max-width: 100%; right: 0; }
  .hero-glow, .process-glow { width: 100%; max-width: 100%; left: 0; right: auto; transform: none; }
  .quick-benefits-grid { grid-template-columns: 1fr; }
  .quick-benefits-grid > div { min-height: 120px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.08); }
  .quick-benefits-grid > div:last-child { border-bottom: 0; }

  .split-heading h2, .lite-site-copy h2, .express-copy h2, .result-heading h2, .quote-copy h2, .about-copy h2, .faq-heading h2 { font-size: 39px; }
  .site-options { grid-template-columns: 1fr; }
  .site-option-featured { grid-column: auto; }
  .site-option { min-height: 560px; padding: 25px; }
  .solution-bottom { align-items: flex-start; flex-direction: column; }
  .solution-bottom .btn { width: 100%; }
  .lite-site-benefits { grid-template-columns: 1fr; }
  .lite-site-showcase { min-height: 520px; }
  .lite-site-showcase::before { inset: 4% 0; }
  .lite-site-phone { width: 235px; }
  .lite-site-phone-screen { min-height: 445px; padding: 34px 21px 23px; }
  .lite-site-real-preview { --lite-screen-height: 445px; height: var(--lite-screen-height); min-height: 0; padding: 0; }
  .lite-site-orbit-one { width: 330px; height: 330px; }
  .lite-site-orbit-two { width: 260px; height: 260px; }
  .lite-site-float-card-one { left: 8px; top: 115px; }
  .lite-site-float-card-two { right: 5px; bottom: 110px; }
  .lite-site-showcase-link { right: 20px; bottom: 34px; }
  .lite-site-model-label { right: 16px; top: 34px; }
  .express-list, .result-cards { grid-template-columns: 1fr; }
  .express-price-card { padding: 25px; }
  .express-price strong { font-size: 53px; }
  .process-track { grid-template-columns: 1fr; }
  .result-card { min-height: 220px; }
  .result-card h3 { margin-top: 40px; }
  .quote-options, .form-grid { grid-template-columns: 1fr; }
  .desktop-project { padding: 28px; border-radius: 22px; }
  .desktop-project-visual { min-height: 260px; }
  .desktop-window { transform: none; }
  .desktop-code-chip { right: 2px; bottom: 0; }
  .about-logo-stage { min-height: 270px; }
  .about-logo-stage img { width: min(100%, 270px); }
  .about-logo-orbit-one { width: 280px; height: 280px; }
  .about-logo-orbit-two { width: 220px; height: 220px; }
  .about-logo-dot-one { left: calc(50% - 136px); }
  .about-logo-dot-two { right: calc(50% - 108px); }
  .secondary-services { grid-template-columns: 1fr; }
  .secondary-card { min-height: 300px; padding: 27px; }
  .about-values { grid-template-columns: 1fr; }
  .closing { padding-top: 75px; }
  .closing-inner h2 { font-size: 43px; }
  .closing-actions { flex-direction: column; }
  .contact-strip { align-items: flex-start; flex-direction: column; padding: 25px 0; }
  .footer-inner { display: flex; flex-direction: column; align-items: flex-start; gap: 17px; }
  .footer-nav { justify-content: flex-start; }
}

@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; }
}
