@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Manrope:wght@400;500;600;700&display=swap');

:root {
  --ink: #0a0a0c;
  --ink-soft: #151519;
  --paper: #f1efe9;
  --white: #fffdf8;
  --muted: #a5a3ab;
  --line: rgba(255,255,255,.15);
  --purple: #7456ff;
  --lime: #c7ff61;
  --orange: #ff6846;
  --ease: cubic-bezier(.16, 1, .3, 1);
  --pad: clamp(24px, 4vw, 72px);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; max-width: 100%; overflow-x: clip; }
body {
  margin: 0;
  overflow-x: hidden;
  background: var(--ink);
  color: var(--white);
  font-family: "DM Sans", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  text-rendering: optimizeLegibility;
}

body.menu-open { overflow: hidden; }
body.page-is-loading { overflow: hidden; }
::selection { background: var(--lime); color: var(--ink); }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
img, svg { display: block; max-width: 100%; }

/* Page loader — the X draws, docks into the wordmark and opens the page. */
.page-loader {
  position: fixed;
  z-index: 2000;
  inset: 0;
  display: grid;
  place-items: center;
  overflow: hidden;
  isolation: isolate;
  pointer-events: auto;
  visibility: visible;
}
.loader-panel {
  position: absolute;
  z-index: -1;
  inset: -2px;
  background: radial-gradient(circle at 50% 50%, #1c1a25 0, var(--ink) 62%);
  transition: transform .9s var(--ease) .12s;
  will-change: transform;
}
.loader-panel-top { clip-path: polygon(0 0, 100% 0, 50% 50%); }
.loader-panel-right { clip-path: polygon(100% 0, 100% 100%, 50% 50%); }
.loader-panel-bottom { clip-path: polygon(0 100%, 100% 100%, 50% 50%); }
.loader-panel-left { clip-path: polygon(0 0, 50% 50%, 0 100%); }
.loader-lockup {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--white);
  line-height: 1;
}
.loader-x {
  display: block;
  flex: 0 0 auto;
  width: clamp(110px, 14vw, 170px);
  transform: rotate(-7deg);
  animation: loaderXDock .8s var(--ease) 1.02s forwards;
  will-change: width, transform;
}
.loader-x svg { overflow: visible; }
.loader-x path {
  fill: none;
  stroke: var(--white);
  stroke-width: 5;
  stroke-linecap: round;
  stroke-dasharray: 1;
  stroke-dashoffset: 1;
  animation: loaderLineDraw .72s var(--ease) .14s forwards;
}
.loader-x path:last-child {
  stroke: var(--lime);
  animation-delay: .34s;
}
.loader-name {
  display: flex;
  align-items: center;
  max-width: 0;
  margin-left: 0;
  overflow: hidden;
  opacity: 0;
  color: var(--white);
  font-family: "Manrope", sans-serif;
  font-size: clamp(38px, 7vw, 104px);
  font-weight: 600;
  letter-spacing: -.075em;
  animation: loaderNameOpen .72s var(--ease) 1.05s forwards;
}
.loader-name i {
  display: block;
  font-style: normal;
  opacity: 0;
  transform: translateY(.55em);
  animation: loaderLetterIn .5s var(--ease) calc(1.12s + var(--letter) * 45ms) forwards;
}
.loader-note {
  position: absolute;
  left: 50%;
  bottom: clamp(28px, 5vw, 58px);
  margin: 0;
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--muted);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: .16em;
  text-transform: uppercase;
  white-space: nowrap;
  opacity: 0;
  transform: translate(-50%, 8px);
  animation: loaderNoteIn .5s ease .75s forwards;
}
.loader-note span { width: 20px; height: 1px; background: var(--lime); }
.page-loader.is-complete {
  pointer-events: none;
  visibility: hidden;
  transition: visibility 0s linear 1.05s;
}
.page-loader.is-complete .loader-lockup {
  opacity: 0;
  transform: scale(.94);
  transition: opacity .25s ease, transform .35s var(--ease);
}
.page-loader.is-complete .loader-note {
  opacity: 0;
  transform: translate(-50%, -6px);
  transition: opacity .2s ease, transform .3s var(--ease);
}
.page-loader.is-complete .loader-panel-top { transform: translateY(-102%); }
.page-loader.is-complete .loader-panel-right { transform: translateX(102%); }
.page-loader.is-complete .loader-panel-bottom { transform: translateY(102%); }
.page-loader.is-complete .loader-panel-left { transform: translateX(-102%); }

@keyframes loaderLineDraw { to { stroke-dashoffset: 0; } }
@keyframes loaderXDock {
  45% { transform: rotate(0deg) scale(1.06); }
  100% { width: clamp(54px, 7vw, 78px); transform: rotate(0deg) scale(1); }
}
@keyframes loaderNameOpen {
  to { max-width: 36rem; margin-left: clamp(4px, .7vw, 10px); opacity: 1; }
}
@keyframes loaderLetterIn { to { opacity: 1; transform: translateY(0); } }
@keyframes loaderNoteIn { to { opacity: 1; transform: translate(-50%, 0); } }

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

.scroll-progress {
  position: fixed;
  z-index: 1001;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  pointer-events: none;
}
.scroll-progress span { display: block; width: 100%; height: 100%; background: var(--lime); transform: scaleX(0); transform-origin: left; }

.cursor {
  position: fixed;
  z-index: 1100;
  top: 0;
  left: 0;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(255,255,255,.65);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  opacity: 0;
  transition: width .3s var(--ease), height .3s var(--ease), background .3s, border-color .3s, opacity .25s;
  mix-blend-mode: difference;
}
.cursor::after { content: ""; position: absolute; inset: calc(50% - 2px); width: 4px; height: 4px; border-radius: 50%; background: white; }
.cursor.is-active { width: 58px; height: 58px; background: rgba(255,255,255,.12); border-color: white; }
.cursor.is-view { width: 72px; height: 72px; background: white; border: none; mix-blend-mode: normal; }
.cursor.is-view::after { content: "VEURE"; inset: auto; width: auto; height: auto; background: none; color: var(--ink); font-size: 9px; font-weight: 700; letter-spacing: .12em; top: 50%; left: 50%; transform: translate(-50%, -50%); }

.site-header {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  right: 0;
  height: 88px;
  padding: 0 var(--pad);
  display: flex;
  align-items: center;
  justify-content: space-between;
  transition: height .4s var(--ease), background .4s, border-color .4s, backdrop-filter .4s;
}
.site-header.scrolled { height: 70px; background: rgba(10,10,12,.78); backdrop-filter: blur(20px); border-bottom: 1px solid rgba(255,255,255,.09); }
.logo { display: inline-flex; align-items: center; gap: 11px; font-family: "Manrope", sans-serif; font-size: 19px; font-weight: 700; letter-spacing: -.04em; }
.logo-mark { width: 30px; height: 30px; fill: none; stroke: currentColor; stroke-width: 1.5; overflow: visible; transition: transform .7s var(--ease); }
.logo:hover .logo-mark { transform: rotate(90deg); }
.desktop-nav { position: absolute; left: 50%; transform: translateX(-50%); display: flex; gap: 36px; }
.desktop-nav a { position: relative; color: #d6d5db; font-size: 13px; }
.desktop-nav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -7px; height: 1px; background: var(--lime); transition: right .35s var(--ease); }
.desktop-nav a:hover::after { right: 0; }

.button {
  --btn-bg: var(--white);
  --btn-color: var(--ink);
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 28px;
  min-height: 58px;
  padding: 0 24px;
  border: 0;
  border-radius: 100px;
  background: var(--btn-bg);
  color: var(--btn-color);
  cursor: pointer;
  overflow: hidden;
  font-weight: 600;
  transition: transform .4s var(--ease), background .3s, color .3s, border-color .3s;
}
.button::before { content: ""; position: absolute; inset: 100% 0 auto; height: 100%; border-radius: 50%; background: var(--lime); transition: inset .5s var(--ease), height .5s var(--ease), border-radius .5s; }
.button:hover::before { inset: 0; height: 100%; border-radius: 100px; }
.button span, .button i { position: relative; z-index: 1; font-style: normal; }
.button i { transition: transform .35s var(--ease); }
.button:hover i { transform: translate(3px,-3px); }
.button-small { min-height: 43px; padding: 0 18px; gap: 14px; font-size: 13px; }
.button-primary { --btn-bg: var(--lime); }
.button-primary::before { background: var(--white); }
.button-dark { --btn-bg: var(--ink); --btn-color: var(--white); width: 100%; }
.button-dark::before { background: var(--purple); }
.button-outline { --btn-bg: transparent; --btn-color: var(--ink); border: 1px solid rgba(10,10,12,.3); width: 100%; }
.button-outline::before { background: var(--ink); }
.button-outline:hover { color: var(--white); border-color: var(--ink); }

.menu-toggle { display: none; width: 44px; height: 44px; border: 0; border-radius: 50%; background: white; position: relative; cursor: pointer; }
.menu-toggle span { position: absolute; left: 13px; width: 18px; height: 1.5px; background: var(--ink); transition: transform .35s var(--ease), top .35s var(--ease); }
.menu-toggle span:first-child { top: 18px; }.menu-toggle span:last-child { top: 25px; }
.menu-toggle[aria-expanded="true"] span:first-child { top: 22px; transform: rotate(45deg); }.menu-toggle[aria-expanded="true"] span:last-child { top: 22px; transform: rotate(-45deg); }
.mobile-menu { display: none; }

.hero {
  position: relative;
  min-height: 100svh;
  padding: clamp(130px, 18vh, 190px) var(--pad) 54px;
  overflow: hidden;
  display: flex;
  align-items: center;
  border-bottom: 1px solid var(--line);
  isolation: isolate;
}
.hero::before {
  content: "";
  position: absolute;
  z-index: -2;
  inset: 0;
  background:
    radial-gradient(circle at 75% 34%, rgba(116,86,255,.15), transparent 35%),
    radial-gradient(circle at 28% 90%, rgba(255,104,70,.08), transparent 31%),
    linear-gradient(135deg, #09090b, #111116 50%, #09090b);
}
.hero::after { content: ""; position: absolute; z-index: -1; inset: 0; 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: 8vw 8vw; mask-image: linear-gradient(to bottom, rgba(0,0,0,.5), transparent 85%); }
.hero-copy { position: relative; z-index: 3; width: 100%; }
.eyebrow { display: inline-flex; align-items: center; gap: 10px; margin: 0 0 22px 6px; color: #cccbd1; text-transform: uppercase; font-size: 11px; font-weight: 600; letter-spacing: .16em; }
.status-dot { position: relative; width: 8px; height: 8px; border-radius: 50%; background: var(--lime); box-shadow: 0 0 16px var(--lime); }
.status-dot::after { content: ""; position: absolute; inset: -5px; border: 1px solid var(--lime); border-radius: inherit; animation: pulse 2s ease-out infinite; }
@keyframes pulse { 0% { transform: scale(.6); opacity: 1; } 100% { transform: scale(1.8); opacity: 0; } }

.hero-title { margin: 0; width: max-content; max-width: 100%; font-family: "Manrope", Arial, sans-serif; font-size: clamp(54px, 8.3vw, 132px); font-weight: 500; line-height: .87; letter-spacing: -.075em; }
.title-line { display: block; overflow: hidden; padding-right: .08em; }
.title-line > span { display: block; transform: translateY(120%); animation: titleIn 1.1s var(--ease) forwards; }
.title-line:nth-child(2) > span { animation-delay: .12s; }.title-line:nth-child(3) > span { animation-delay: .24s; }
@keyframes titleIn { to { transform: translateY(0); } }
.title-accent { color: var(--purple); font-style: italic; font-family: Georgia, serif; font-weight: 400; letter-spacing: -.065em; padding-bottom: .07em; }
.title-accent > span::after { content: "✦"; display: inline-block; margin-left: .17em; color: var(--lime); font-family: sans-serif; font-size: .24em; vertical-align: top; animation: spin 10s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }

.hero-bottom { width: min(660px, 53%); margin: 42px 0 0 auto; display: flex; gap: 52px; align-items: flex-end; }
.hero-bottom p { margin: 0; max-width: 350px; color: #b9b7c0; font-size: clamp(15px, 1.2vw, 19px); }
.hero-actions { flex: 0 0 auto; display: flex; flex-direction: column; gap: 18px; align-items: flex-start; }
.text-link { display: inline-flex; gap: 12px; align-items: center; border-bottom: 1px solid currentColor; padding-bottom: 5px; font-size: 13px; }
.text-link i { font-style: normal; transition: transform .3s var(--ease); }.text-link:hover i { transform: translateY(4px); }
.hero-visual { position: absolute; z-index: 1; right: -4vw; top: 5%; width: min(62vw, 900px); height: 88%; pointer-events: none; }
#hero-canvas { width: 100%; height: 100%; }
.orbit { position: absolute; top: 50%; left: 55%; border: 1px solid rgba(255,255,255,.13); border-radius: 50%; transform: translate(-50%,-50%) rotate(-18deg); }
.orbit::after { content: ""; position: absolute; width: 9px; height: 9px; border-radius: 50%; background: var(--lime); box-shadow: 0 0 18px var(--lime); animation: orbitDot 8s linear infinite; }
.orbit-one { width: 67%; aspect-ratio: 1/.58; }.orbit-two { width: 52%; aspect-ratio: 1/.58; transform: translate(-50%,-50%) rotate(32deg); }
.orbit-two::after { background: var(--orange); box-shadow: 0 0 18px var(--orange); animation-duration: 11s; animation-direction: reverse; }
@keyframes orbitDot { 0% { top: 48%; left: -5px; } 25% { top: -5px; left: 50%; } 50% { top: 48%; left: calc(100% - 5px); } 75% { top: calc(100% - 5px); left: 50%; } 100% { top: 48%; left: -5px; } }
.visual-tag { position: absolute; padding: 9px 14px; background: rgba(10,10,12,.72); border: 1px solid rgba(255,255,255,.18); backdrop-filter: blur(12px); border-radius: 100px; color: #d9d7df; font-size: 10px; text-transform: uppercase; letter-spacing: .1em; animation: float 5s ease-in-out infinite; }
.visual-tag span { display: inline-block; width: 6px; height: 6px; margin-right: 7px; border-radius: 50%; background: var(--lime); }
.visual-tag b { color: var(--lime); margin-left: 7px; }.tag-one { top: 29%; right: 2%; }.tag-two { bottom: 20%; left: 36%; animation-delay: -2s; }
@keyframes float { 50% { transform: translateY(-12px); } }
.hero-index { position: absolute; left: var(--pad); bottom: 34px; color: #74727c; font-size: 10px; letter-spacing: .16em; }
.scroll-hint { position: absolute; right: 190px; bottom: 32px; display: flex; align-items: center; gap: 10px; color: #777680; font-size: 10px; text-transform: uppercase; letter-spacing: .13em; writing-mode: horizontal-tb; }
.scroll-hint span { width: 34px; height: 1px; background: #57565d; position: relative; overflow: hidden; }.scroll-hint span::after { content: ""; position: absolute; inset: 0; background: white; animation: scrollLine 2s ease-in-out infinite; transform: translateX(-100%); }
@keyframes scrollLine { 50%,100% { transform: translateX(100%); } }

.ticker { height: 86px; overflow: hidden; background: var(--lime); color: var(--ink); display: flex; align-items: center; transform: rotate(-1deg) scale(1.01); transform-origin: center; }
.ticker-track { display: flex; align-items: center; width: max-content; animation: marquee 22s linear infinite; white-space: nowrap; font-family: "Manrope", sans-serif; font-size: clamp(20px, 2.1vw, 34px); font-weight: 600; text-transform: uppercase; letter-spacing: -.04em; }
.ticker-track span { padding: 0 28px; }.ticker-track i { font-style: normal; font-size: .7em; }
@keyframes marquee { to { transform: translateX(-50%); } }

.section-pad { padding: clamp(100px, 12vw, 190px) var(--pad); }
.section-label { display: flex; gap: 16px; color: #aaa8b1; font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: .16em; }
.section-label span { color: var(--lime); }
.section-label-dark { color: #5c5a61; }.section-label-dark span { color: var(--purple); }
.reveal { opacity: 0; transform: translateY(36px); transition: opacity .9s var(--ease), transform .9s var(--ease); }
.reveal.in-view { opacity: 1; transform: translateY(0); }

.intro { background: var(--ink); }
.intro-content { display: grid; grid-template-columns: 1.45fr .55fr; gap: clamp(40px, 8vw, 140px); align-items: end; margin-top: 70px; }
.display-copy { margin: 0; max-width: 1020px; font-family: "Manrope", sans-serif; font-size: clamp(38px, 5.4vw, 83px); line-height: 1.02; letter-spacing: -.055em; }
.display-copy em, .section-heading h2 em, .projects-heading h2 em, .process h2 em, .pricing h2 em, .faq h2 em { color: var(--purple); font-family: Georgia, serif; font-weight: 400; }
.statement { position: relative; min-height: 330px; padding: 30px; background: var(--purple); color: white; border-radius: 4px; transform-style: preserve-3d; box-shadow: 0 28px 80px rgba(0,0,0,.3); overflow: hidden; }
.statement::after { content: ""; position: absolute; width: 200px; height: 200px; right: -80px; bottom: -80px; border: 50px solid var(--lime); border-radius: 50%; opacity: .9; }
.statement-kicker { font-size: 10px; text-transform: uppercase; letter-spacing: .13em; }
.statement strong { display: block; margin-top: 70px; font-family: "Manrope", sans-serif; font-size: clamp(28px, 3vw, 45px); line-height: 1.05; letter-spacing: -.05em; transform: translateZ(35px); }
.statement svg { position: absolute; width: 115px; height: 115px; top: 32px; right: 25px; animation: spin 20s linear infinite; }
.statement svg text { fill: white; font-size: 9px; letter-spacing: 1.8px; }

.services { background: var(--paper); color: var(--ink); }
.section-heading { display: grid; grid-template-columns: .6fr 1.4fr .7fr; gap: 50px; align-items: end; }
.section-heading h2, .projects-heading h2, .process h2, .pricing h2, .faq h2 { margin: 0; font-family: "Manrope", sans-serif; font-size: clamp(44px, 5.7vw, 88px); font-weight: 500; line-height: .96; letter-spacing: -.065em; }
.section-heading p, .projects-heading > p, .pricing-heading > p { margin: 0; color: #626067; }
.service-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 88px; perspective: 1000px; }
.service-card { position: relative; min-height: 560px; padding: 28px; border: 1px solid rgba(10,10,12,.17); background: rgba(255,255,255,.2); overflow: hidden; transform-style: preserve-3d; transition: background .4s, color .4s, border-color .4s, opacity .9s var(--ease), transform .2s ease-out; }
.service-card::before { content: ""; position: absolute; width: 300px; height: 300px; left: var(--glow-x, -200px); top: var(--glow-y, -200px); border-radius: 50%; background: radial-gradient(circle, rgba(116,86,255,.28), transparent 65%); transform: translate(-50%,-50%); pointer-events: none; opacity: 0; transition: opacity .3s; }
.service-card:hover::before { opacity: 1; }
.service-card:hover { background: var(--ink-soft); color: var(--white); border-color: var(--ink); }
.service-featured { background: var(--purple); color: white; border-color: var(--purple); transform: translateY(-22px); }
.service-featured.reveal { transform: translateY(14px); }.service-featured.reveal.in-view { transform: translateY(-22px); }
.service-featured:hover { background: #6245ed; border-color: #6245ed; }
.service-number { display: block; font-size: 11px; color: #77747c; }.service-featured .service-number { color: rgba(255,255,255,.7); }
.mini-badge { position: absolute; top: 25px; right: 24px; padding: 7px 11px; border: 1px solid rgba(255,255,255,.4); border-radius: 100px; font-size: 9px; text-transform: uppercase; letter-spacing: .12em; }
.service-card h3 { margin: 32px 0 12px; font-family: "Manrope", sans-serif; font-size: clamp(28px, 2.3vw, 40px); font-weight: 600; letter-spacing: -.05em; }
.service-card > p { max-width: 360px; color: #747178; }.service-card:hover > p, .service-featured > p { color: #c5c2ca; }
.service-card ul { position: absolute; left: 28px; right: 28px; bottom: 28px; list-style: none; padding: 0; margin: 0; border-top: 1px solid currentColor; border-color: rgba(128,125,132,.4); }
.service-card li { padding: 11px 0; border-bottom: 1px solid rgba(128,125,132,.25); font-size: 12px; }
.service-icon { height: 155px; margin-top: 38px; position: relative; transform: translateZ(28px); }
.icon-window { border: 1px solid currentColor; border-radius: 4px; }
.icon-window::before { content: ""; position: absolute; left: 0; right: 0; top: 20px; border-top: 1px solid currentColor; }.icon-window i { position: absolute; top: 7px; width: 5px; height: 5px; border-radius: 50%; border: 1px solid currentColor; }.icon-window i:nth-child(1) { left: 8px; }.icon-window i:nth-child(2) { left: 18px; }.icon-window i:nth-child(3) { left: 28px; }
.icon-window::after { content: "XSTUDIO"; position: absolute; left: 50%; top: 52%; transform: translate(-50%,-50%); font-family: "Manrope",sans-serif; font-size: 29px; font-weight: 700; letter-spacing: -.06em; }
.icon-shop { border: 1px solid currentColor; border-radius: 50% 50% 4px 4px; width: 75%; margin-left: auto; margin-right: auto; }
.icon-shop::after { content: ""; position: absolute; width: 65px; height: 65px; left: 50%; top: 50%; border: 1px solid currentColor; border-radius: 50%; transform: translate(-50%,-50%); }.icon-shop i { position: absolute; background: currentColor; }.icon-shop i:nth-child(1) { width: 50%; height: 1px; top: 50%; left: 25%; }.icon-shop i:nth-child(2) { height: 50%; width: 1px; left: 50%; top: 25%; }.icon-shop i:nth-child(3) { width: 8px; height: 8px; border-radius: 50%; top: -4px; left: calc(50% - 4px); }
.icon-brand i:first-child { position: absolute; left: 50%; top: 48%; transform: translate(-50%,-50%); font-family: "Manrope",sans-serif; font-size: 110px; line-height: 1; font-weight: 400; }.icon-brand i:last-child { position: absolute; inset: 5px 21%; border: 1px solid currentColor; border-radius: 50%; transform: rotate(25deg); animation: spin 12s linear infinite; }.icon-brand::before,.icon-brand::after { content: ""; position: absolute; border: 1px solid currentColor; border-radius: 50%; }.icon-brand::before { inset: 36px 10%; }.icon-brand::after { inset: 36px 10%; transform: rotate(90deg); }

.projects { background: var(--ink); }
.projects-heading { display: grid; grid-template-columns: 1.7fr .5fr; gap: 70px; align-items: end; }
.projects-heading .section-label { margin-bottom: 40px; }
.project-grid { margin-top: 90px; display: grid; grid-template-columns: 1fr 1fr; gap: 95px 24px; }
.project-large { grid-column: 1 / -1; }
.project { cursor: pointer; }
.project-frame { position: relative; height: min(38vw, 590px); overflow: hidden; border-radius: 3px; transform-style: preserve-3d; transition: transform .7s var(--ease); }
.project:not(.project-large) .project-frame { height: min(42vw, 580px); }
.project-frame::after { content: ""; position: absolute; inset: 0; border: 1px solid rgba(255,255,255,.16); pointer-events: none; }
.project:hover .project-frame { transform: scale(.985); }
.project-frame > * { transition: transform .8s var(--ease); }.project:hover .project-frame > :not(.project-glow) { transform: scale(1.025); }
.browser-top { position: absolute; z-index: 4; top: 20px; left: 20px; right: 20px; height: 35px; padding: 0 14px; display: flex; align-items: center; gap: 6px; background: rgba(10,10,12,.6); backdrop-filter: blur(12px); border: 1px solid rgba(255,255,255,.12); border-radius: 8px 8px 0 0; }
.browser-top span { width: 5px; height: 5px; border: 1px solid rgba(255,255,255,.5); border-radius: 50%; }.browser-top b { position: absolute; left: 50%; transform: translateX(-50%); font-size: 7px; font-weight: 400; color: rgba(255,255,255,.6); }
.browser-light { background: rgba(255,255,255,.55); border-color: rgba(10,10,12,.12); }.browser-light span { border-color: rgba(10,10,12,.5); }.browser-light b { color: rgba(10,10,12,.6); }
.project-glow { position: absolute; width: 400px; height: 400px; border-radius: 50%; background: radial-gradient(circle,rgba(255,255,255,.22),transparent 64%); left: var(--x, -500px); top: var(--y, -500px); transform: translate(-50%,-50%); opacity: 0; transition: opacity .4s; pointer-events: none; }.project:hover .project-glow { opacity: 1; }
.project-meta { display: flex; align-items: center; justify-content: space-between; padding-top: 20px; }
.project-meta span { color: #77757e; font-size: 10px; text-transform: uppercase; letter-spacing: .12em; }.project-meta h3 { margin: 7px 0 0; font-family: "Manrope",sans-serif; font-size: clamp(23px, 2.3vw, 34px); font-weight: 500; letter-spacing: -.04em; }
.project-meta > i { display: grid; place-items: center; width: 48px; height: 48px; border: 1px solid #46454b; border-radius: 50%; color: var(--lime); font-style: normal; transition: background .35s,color .35s,transform .35s; }.project:hover .project-meta > i { background: var(--lime); color: var(--ink); transform: rotate(45deg); }

.frame-nova { background: #c9b2a6; color: #16120f; padding: 82px 5% 35px; }
.nova-layout { height: 100%; position: relative; border-top: 1px solid rgba(22,18,15,.4); }
.nova-top { display: flex; justify-content: space-between; padding-top: 14px; text-transform: uppercase; font-size: clamp(7px, .7vw, 11px); letter-spacing: .12em; }.nova-top strong { font-size: 1.3em; }
.nova-layout p { position: absolute; z-index: 2; left: 4%; top: 11%; margin: 0; font-family: "Manrope",sans-serif; font-size: clamp(38px, 7vw, 104px); line-height: .85; font-weight: 600; letter-spacing: -.08em; }.nova-layout p em { font-family: Georgia,serif; font-weight: 400; color: #fff8ee; }
.nova-building { position: absolute; right: 0; bottom: 0; width: 52%; height: 73%; background: linear-gradient(155deg,#dccbc0,#93786b); clip-path: polygon(7% 18%,100% 0,100% 100%,0 100%); box-shadow: -20px -20px 60px rgba(255,255,255,.15); overflow: hidden; }.nova-building::before { content: ""; position: absolute; inset: 10% 12% 0; background: repeating-linear-gradient(90deg, transparent 0 20%, rgba(46,34,29,.34) 20% 21%), repeating-linear-gradient(0deg, transparent 0 26%, rgba(46,34,29,.34) 26% 27%); }.nova-building i { position: absolute; background: #40312a; width: 16%; height: 31%; bottom: 9%; }.nova-building i:nth-child(1){left:9%}.nova-building i:nth-child(2){left:31%}.nova-building i:nth-child(3){left:53%}.nova-building i:nth-child(4){left:75%}
.nova-layout small { position:absolute; bottom: 4%; left: 2%; font-size: 8px; text-transform: uppercase; letter-spacing: .13em; }

.frame-puls { background: var(--lime); color: var(--ink); padding: 77px 25px 25px; }
.puls-layout { position: relative; height: 100%; border: 1px solid rgba(10,10,12,.45); overflow: hidden; background-image: linear-gradient(rgba(10,10,12,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(10,10,12,.1) 1px,transparent 1px); background-size: 44px 44px; }
.puls-nav { display:flex; justify-content:space-between; padding:17px; font-size:8px; letter-spacing:.12em }.puls-nav strong { font-size:18px; letter-spacing:-.07em; }
.puls-word { position:absolute; z-index:2; left:-2%; top:28%; font-family:"Manrope",sans-serif; font-size:clamp(64px,11vw,150px); line-height:.7; font-weight:700; letter-spacing:-.11em }
.puls-ring { position:absolute; z-index:1; width:min(30vw,390px); aspect-ratio:1; border:1px solid var(--ink); border-radius:50%; right:-8%; top:10%; box-shadow:inset 0 0 0 34px var(--purple),inset 0 0 0 35px var(--ink); background:var(--orange); }.puls-ring::after { content:""; position:absolute; inset:28%; border:1px solid var(--ink); border-radius:50%; background:var(--lime) }.puls-ring span { position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);font-size:45px }
.puls-bottom { position:absolute; left:17px;right:17px;bottom:17px;display:flex;justify-content:space-between;align-items:end;font-size:7px;text-transform:uppercase;letter-spacing:.12em }.puls-bottom b { padding:9px 12px;background:var(--ink);color:var(--lime);font-weight:500 }

.frame-mora { background:#45191b;color:#f2ded0;padding:77px 25px 25px }
.mora-layout { position:relative;height:100%;border:1px solid rgba(242,222,208,.3);overflow:hidden }
.mora-nav { display:flex;justify-content:space-between;padding:17px;font-size:11px;letter-spacing:.15em }.mora-nav i { width:25px;height:25px;border:1px solid;border-radius:50%;font-size:0;position:relative }.mora-nav i::before,.mora-nav i::after {content:"";position:absolute;left:6px;right:6px;height:1px;background:currentColor}.mora-nav i::before{top:9px}.mora-nav i::after{top:14px}
.mora-layout p { position:absolute;z-index:2;left:8%;bottom:13%;font-family:"Manrope",sans-serif;font-size:clamp(42px,8vw,108px);line-height:.78;font-weight:500;letter-spacing:-.09em;margin:0}.mora-layout p em{color:#f3a36f;font-family:Georgia,serif;font-weight:400}
.mora-plate {position:absolute;width:min(30vw,370px);aspect-ratio:1;right:-8%;top:10%;border-radius:50%;background:radial-gradient(circle,#e8d5bd 0 27%,#aa8463 28% 29%,#2c100f 30% 33%,#d8b38f 34% 57%,#8c5b40 58% 60%,#e2c4a5 61%);box-shadow:0 24px 50px rgba(0,0,0,.35)}
.mora-plate span {position:absolute;width:25%;height:44%;border-radius:70% 20% 60% 30%;background:#753720;left:37%;top:29%;transform:rotate(35deg);box-shadow:12px 2px 0 #173c2c,-8px 7px 0 #e05b37}.mora-plate i,.mora-plate b {position:absolute;width:8px;height:8px;background:#f7c547;border-radius:50%}.mora-plate i{left:30%;top:48%}.mora-plate b{right:30%;top:39%}
.mora-layout small {position:absolute;right:18px;bottom:17px;text-transform:uppercase;font-size:7px;letter-spacing:.16em}

.numbers { display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:0 var(--pad) }
.number-item { display:flex;align-items:end;gap:20px;padding:70px 35px;border-right:1px solid var(--line) }.number-item:first-child{padding-left:0}.number-item:last-child{border:0}
.number-item strong {font-family:"Manrope",sans-serif;font-size:clamp(64px,7vw,115px);font-weight:500;line-height:.75;letter-spacing:-.08em;color:var(--lime)}.number-item p{margin:0;color:#77757e;font-size:11px;text-transform:uppercase;letter-spacing:.1em}

.process { display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(60px,10vw,180px);align-items:start }
.process-sticky { position:sticky;top:130px }.process-sticky .section-label{margin-bottom:45px}.process-sticky>p{color:#88868f;max-width:400px;margin:30px 0}.process-steps{border-top:1px solid var(--line)}
.process-step {position:relative;padding:48px 70px 48px 0;border-bottom:1px solid var(--line)}.process-step>span{color:var(--lime);font-size:10px;text-transform:uppercase;letter-spacing:.14em}.process-step h3{font-family:"Manrope",sans-serif;font-size:clamp(34px,3.8vw,57px);font-weight:500;line-height:.97;letter-spacing:-.06em;margin:28px 0 20px}.process-step p{max-width:450px;color:#88868f}.process-step>i{position:absolute;right:4px;top:48px;font-size:28px;color:#56545c;font-style:normal;transition:transform .5s var(--ease),color .3s}.process-step:hover>i{transform:rotate(-45deg);color:var(--lime)}

.pricing { background:var(--paper);color:var(--ink) }
.pricing-heading { display:grid;grid-template-columns:.6fr 1.4fr .7fr;gap:50px;align-items:end }
.showcase,.pricing{padding-top:clamp(90px,9vw,135px);padding-bottom:clamp(90px,9vw,135px)}
.services .service-list{margin-top:65px}.services .service-card{min-height:465px}
.showcase{background:var(--paper);color:var(--ink)}.showcase-heading{display:grid;grid-template-columns:.6fr 1.4fr .7fr;gap:50px;align-items:end}.showcase-heading h2{margin:0;font-family:"Manrope",sans-serif;font-size:clamp(44px,5.7vw,88px);font-weight:500;line-height:.96;letter-spacing:-.065em}.showcase-heading h2 em{color:var(--purple);font-family:Georgia,serif;font-weight:400}.showcase-heading>p{margin:0;color:#626067}.sample-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:65px}.sample-card{display:block;color:var(--ink)}.sample-image{position:relative;overflow:hidden;aspect-ratio:16/10;background:#ddd}.sample-image::after{content:"";position:absolute;inset:0;border:1px solid rgba(10,10,12,.16);pointer-events:none}.sample-image img{width:100%;height:100%;object-fit:cover;transition:transform .75s var(--ease),filter .5s}.sample-image span{position:absolute;right:16px;bottom:16px;padding:9px 13px;border-radius:100px;background:var(--ink);color:white;font-size:9px;text-transform:uppercase;letter-spacing:.1em;opacity:0;transform:translateY(8px);transition:opacity .4s,transform .4s var(--ease)}.sample-card:hover .sample-image img{transform:scale(1.035)}.sample-card:hover .sample-image span{opacity:1;transform:translateY(0)}.sample-meta{display:flex;align-items:start;justify-content:space-between;padding:18px 2px 0}.sample-meta small{color:#77747c;font-size:9px;text-transform:uppercase;letter-spacing:.12em}.sample-meta h3{margin:6px 0 0;font-family:"Manrope",sans-serif;font-size:clamp(21px,1.8vw,29px);font-weight:600;letter-spacing:-.045em}.sample-meta b{font-size:10px;color:var(--purple);font-weight:500}
.pricing-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:65px;align-items:stretch}
.price-card {position:relative;border:1px solid rgba(10,10,12,.2);padding:28px;min-height:590px;display:flex;flex-direction:column;transition:transform .4s var(--ease),box-shadow .4s}.price-card:hover{transform:translateY(-10px);box-shadow:0 30px 80px rgba(30,20,70,.12)}
.price-featured {background:var(--lime);border-color:var(--ink);box-shadow:8px 8px 0 var(--purple)}.popular-tag{position:absolute;right:18px;top:-14px;background:var(--purple);color:white;padding:7px 13px;border-radius:100px;font-size:9px;text-transform:uppercase;letter-spacing:.12em}
.price-top {display:flex;justify-content:space-between;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#646168}.price-top i{font-style:normal}.price-card h3{font-family:"Manrope",sans-serif;font-size:37px;letter-spacing:-.05em;margin:50px 0 15px}.price{font-family:"Manrope",sans-serif;font-size:clamp(65px,6vw,96px);line-height:1;letter-spacing:-.08em;margin:0;position:relative;width:max-content}.price sup{font-size:.38em;vertical-align:top;margin-left:5px}.price small{position:absolute;left:100%;bottom:13px;margin-left:12px;font-family:"DM Sans",sans-serif;font-size:9px;text-transform:uppercase;letter-spacing:.13em;color:#6e6b72}.price-card>p:not(.price){color:#66636a;font-size:14px;min-height:64px}.price-card ul{list-style:none;padding:20px 0 30px;margin:20px 0 auto;border-top:1px solid rgba(10,10,12,.25)}.price-card li{position:relative;padding:10px 0 10px 22px;font-size:12px;border-bottom:1px solid rgba(10,10,12,.12)}.price-card li::before{content:"↗";position:absolute;left:0;color:var(--purple)}.pricing-note{text-align:center;color:#77747c;font-size:10px;text-transform:uppercase;letter-spacing:.1em;margin:35px 0 0}

.faq {display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(60px,10vw,180px)}.faq-title{position:sticky;top:130px;align-self:start}.faq-title .section-label{margin-bottom:45px}.faq-list{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}.faq summary{position:relative;cursor:pointer;list-style:none;padding:30px 55px 30px 0;font-family:"Manrope",sans-serif;font-size:clamp(19px,1.7vw,26px);font-weight:500;letter-spacing:-.03em}.faq summary::-webkit-details-marker{display:none}.faq summary span{position:absolute;right:0;top:26px;display:grid;place-items:center;width:34px;height:34px;border:1px solid #47464d;border-radius:50%;font-family:"DM Sans",sans-serif;font-size:17px;color:var(--lime);transition:transform .4s var(--ease),background .3s}.faq details[open] summary span{transform:rotate(45deg);background:var(--lime);color:var(--ink);border-color:var(--lime)}.faq details p{max-width:600px;color:#918f98;margin:-5px 50px 30px 0;font-size:14px}

.contact {position:relative;overflow:hidden;padding:clamp(100px,12vw,180px) var(--pad);display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(60px,10vw,170px);background:var(--purple);color:white}.contact::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:80px 80px;mask-image:radial-gradient(circle at 0 100%,black,transparent 60%)}.contact>div,.contact>form{position:relative;z-index:2}.contact .section-label{color:rgba(255,255,255,.7)}.contact .section-label span{color:var(--lime)}
.contact-intro h2{font-family:"Manrope",sans-serif;font-size:clamp(54px,6.4vw,98px);font-weight:500;line-height:.88;letter-spacing:-.075em;margin:50px 0 35px}.contact-intro h2 em{font-family:Georgia,serif;font-weight:400;color:var(--lime)}.contact-intro>p{color:rgba(255,255,255,.72);max-width:470px}.contact-intro>a{display:inline-flex;gap:20px;margin-top:40px;padding-bottom:5px;border-bottom:1px solid;font-size:17px}.contact-intro>a i{font-style:normal;color:var(--lime)}
.contact-form{background:var(--white);color:var(--ink);padding:clamp(25px,4vw,55px);box-shadow:20px 20px 0 rgba(10,10,12,.2)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.contact-form>label,.contact-form .form-row label,.contact-form legend{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.contact-form input[type="text"],.contact-form input[type="email"],.contact-form textarea{display:block;width:100%;border:0;border-bottom:1px solid #b7b4b0;background:transparent;color:var(--ink);padding:14px 0 12px;border-radius:0;outline:none;text-transform:none;font-size:17px;letter-spacing:normal;transition:border-color .3s}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--purple)}.contact-form textarea{resize:vertical;min-height:105px}.contact-form fieldset{border:0;padding:0;margin:42px 0}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.choice-grid label input{position:absolute;opacity:0}.choice-grid label span{display:block;border:1px solid #c9c6c1;padding:13px 15px;cursor:pointer;font-size:12px;text-transform:none;letter-spacing:0;font-weight:400;transition:background .25s,color .25s,border-color .25s}.choice-grid label input:checked+span{background:var(--ink);color:white;border-color:var(--ink)}
.budget-output{float:right;color:var(--purple);font-size:13px;letter-spacing:0;text-transform:none}.range{display:block;width:100%;height:4px;margin:25px 0 12px;appearance:none;background:linear-gradient(to right,var(--purple) 0 var(--range-fill,33%),#cfccc8 var(--range-fill,33%));border-radius:10px}.range::-webkit-slider-thumb{appearance:none;width:20px;height:20px;background:var(--purple);border:5px solid white;box-shadow:0 0 0 1px var(--purple);border-radius:50%;cursor:pointer}.range::-moz-range-thumb{width:12px;height:12px;background:var(--purple);border:4px solid white;box-shadow:0 0 0 1px var(--purple);border-radius:50%;cursor:pointer}.range-labels{display:flex;justify-content:space-between;color:#918e8a;text-transform:none;letter-spacing:0;font-size:8px;font-weight:400}.range-labels i{font-style:normal}.contact-form>label:nth-of-type(2){display:block;margin-top:40px}.form-submit{display:flex;align-items:center;gap:25px;margin-top:35px}.form-submit p{font-size:9px;color:#85827f;text-transform:uppercase;letter-spacing:.08em}.form-message{display:none;margin-top:22px;padding:13px 15px;background:#e8f5ca;color:#35411f;font-size:12px}.form-message.show{display:block}.contact-orb{position:absolute!important;z-index:1!important;width:380px;height:380px;left:-150px;bottom:-170px;border:1px solid rgba(255,255,255,.2);border-radius:50%;animation:spin 18s linear infinite}.contact-orb i{position:absolute;inset:18%;border:1px solid rgba(199,255,97,.8);border-radius:50%;transform:rotateX(65deg)}.contact-orb i:nth-child(2){transform:rotateY(65deg)}.contact-orb i:nth-child(3){inset:42%;background:var(--lime);box-shadow:0 0 50px var(--lime)}

footer{padding:70px var(--pad) 30px;background:var(--ink)}.footer-top{display:grid;grid-template-columns:1fr 1fr 1fr;padding-bottom:70px;align-items:start}.footer-top>p{margin:0;color:#77757e;font-size:13px}.footer-links{justify-self:end;display:flex;flex-direction:column;gap:8px;font-size:13px}.footer-links a:hover{color:var(--lime)}.footer-bottom{display:flex;justify-content:space-between;padding-top:22px;border-top:1px solid var(--line);color:#64626a;font-size:9px;text-transform:uppercase;letter-spacing:.1em}.footer-bottom a:hover{color:white}

.whatsapp-float{position:fixed;z-index:85;right:24px;bottom:24px;display:flex;align-items:center;gap:10px;min-height:52px;padding:0 18px;border:0;border-radius:100px;background:#25d366;color:#07170d;box-shadow:0 15px 45px rgba(0,0,0,.32);font-size:12px;font-weight:700;cursor:pointer;transition:transform .35s var(--ease),box-shadow .35s}.whatsapp-float:hover{transform:translateY(-4px);box-shadow:0 20px 55px rgba(0,0,0,.42)}.whatsapp-float svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

@media (max-width: 1050px) {
  .desktop-nav{display:none}.site-header>.button{display:none}.menu-toggle{display:block}.mobile-menu{display:flex;position:fixed;z-index:90;inset:0;background:var(--purple);padding:130px var(--pad) 45px;flex-direction:column;justify-content:space-between;transform:translateY(-105%);transition:transform .7s var(--ease)}.mobile-menu.is-open{transform:translateY(0)}.mobile-menu nav{display:flex;flex-direction:column}.mobile-menu nav a{font-family:"Manrope",sans-serif;font-size:clamp(45px,10vw,85px);line-height:1.15;letter-spacing:-.06em;border-bottom:1px solid rgba(255,255,255,.2)}.mobile-menu nav span{font-family:"DM Sans",sans-serif;font-size:10px;letter-spacing:.12em;color:var(--lime);vertical-align:top}.mobile-menu p{font-size:11px;text-transform:uppercase;letter-spacing:.13em;color:rgba(255,255,255,.65)}
  .hero-title{font-size:clamp(58px,10.5vw,105px)}.hero-visual{right:-15vw;width:78vw;opacity:.85}.hero-bottom{width:65%;}.intro-content{grid-template-columns:1fr}.statement{width:430px;max-width:100%;margin-left:auto}.section-heading,.pricing-heading{grid-template-columns:1fr 1.5fr}.section-heading>p,.pricing-heading>p{grid-column:2}.service-list{grid-template-columns:1fr}.service-card{min-height:440px}.service-featured.reveal.in-view{transform:translateY(0)}.service-icon{width:44%;float:right;margin-top:0}.service-card h3{margin-top:55px}.service-card>p{max-width:46%}.service-card ul{left:52%;}.projects-heading{grid-template-columns:1fr}.projects-heading>p{max-width:440px;margin-left:auto}.project-grid{gap-top:60px}.process,.faq{gap:60px}.pricing-grid{grid-template-columns:1fr}.price-card{min-height:0}.price-card ul{margin-bottom:25px}.contact{grid-template-columns:1fr}.contact-intro{max-width:750px}.contact-form{max-width:800px;width:100%;margin-left:auto}
  .showcase-heading{grid-template-columns:1fr 1.5fr}.showcase-heading>p{grid-column:2}.sample-grid{grid-template-columns:1fr 1fr}.sample-card:last-child{grid-column:1/-1}.sample-card:last-child .sample-image{aspect-ratio:2/1}
}

@media (max-width: 700px) {
  :root{--pad:20px}.site-header{height:72px}.hero{padding-top:125px;align-items:flex-start;min-height:790px}.hero-copy{position:static}.hero-title{font-size:clamp(48px,15vw,72px);line-height:.91}.title-accent>span::after{display:none}.hero-visual{width:125vw;height:52%;top:27%;right:-40vw;opacity:.88}.visual-tag{display:none}.hero-bottom{position:absolute;bottom:72px;left:var(--pad);width:calc(100% - 40px);display:block}.hero-bottom p{max-width:430px}.hero-actions{margin-top:25px;flex-direction:row;align-items:center}.hero-actions .button{min-height:52px;padding:0 18px;font-size:13px}.hero-index,.scroll-hint{display:none}.ticker{height:68px}.ticker-track span{padding:0 18px}
  .section-pad{padding-top:85px;padding-bottom:85px}.intro-content{margin-top:45px}.display-copy{font-size:clamp(35px,11vw,55px)}.statement{min-height:270px}.statement strong{margin-top:60px}.section-heading,.pricing-heading,.showcase-heading{grid-template-columns:1fr;gap:25px}.section-heading>p,.pricing-heading>p,.showcase-heading>p{grid-column:auto}.section-heading h2,.projects-heading h2,.process h2,.pricing h2,.faq h2,.showcase-heading h2{font-size:clamp(42px,13vw,66px)}.sample-grid{grid-template-columns:1fr;margin-top:45px;gap:38px}.sample-card:last-child{grid-column:auto}.sample-card:last-child .sample-image{aspect-ratio:16/10}.sample-image span{opacity:1;transform:none}.service-list{margin-top:60px}.services .service-card{min-height:440px}.service-icon{width:100%;height:145px;float:none;margin-top:35px}.service-card h3{margin-top:30px}.service-card>p{max-width:100%}.service-card ul{left:28px}.service-featured{box-shadow:none}
  .projects-heading{gap:35px}.projects-heading .section-label{margin-bottom:30px}.projects-heading>p{margin:0}.project-grid{grid-template-columns:1fr;margin-top:60px;gap:60px}.project-large{grid-column:auto}.project-frame,.project:not(.project-large) .project-frame{height:118vw;max-height:570px}.browser-top{top:12px;left:12px;right:12px}.frame-nova{padding:65px 18px 18px}.nova-layout p{font-size:17vw;top:14%}.nova-building{width:80%;height:58%}.frame-puls,.frame-mora{padding:65px 14px 14px}.puls-word{font-size:23vw}.puls-ring,.mora-plate{width:76vw}.mora-layout p{font-size:18vw;bottom:18%}
  .numbers{grid-template-columns:1fr}.number-item,.number-item:first-child{border-right:0;border-bottom:1px solid var(--line);padding:45px 0}.number-item:last-child{border:0}.number-item strong{font-size:85px}.process,.faq{grid-template-columns:1fr}.process-sticky,.faq-title{position:static}.process-steps{margin-top:20px}.process-step{padding:36px 50px 36px 0}.pricing-grid{margin-top:60px}.price-card{padding:22px}.price-featured{box-shadow:6px 6px 0 var(--purple)}.faq-list{margin-top:20px}
  .contact{padding-top:95px;padding-bottom:95px}.contact-intro h2{font-size:clamp(52px,15vw,75px)}.contact-form{padding:25px 18px;box-shadow:8px 8px 0 rgba(10,10,12,.2)}.form-row{grid-template-columns:1fr}.choice-grid{grid-template-columns:1fr}.range-labels{display:none}.form-submit{align-items:flex-start;flex-direction:column}.form-submit .button{width:100%}.whatsapp-float{right:14px;bottom:14px;min-height:48px;padding:0 15px}.footer-top{grid-template-columns:1fr;gap:35px}.footer-links{justify-self:start}.footer-bottom{flex-direction:column;gap:10px}.footer-bottom span:nth-child(2){display:none}
}

@media (hover: none), (pointer: coarse) { .cursor{display:none} }
@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}.title-line>span{transform:none}.ticker-track{animation:none}.cursor{display:none}
}
