:root {
  --ink: #0d0f14;
  --ink-2: #171a22;
  --paper: #f7f8fa;
  --paper-2: #edf0f5;
  --white: #fff;
  --blue: #2467ff;
  --blue-2: #aac0ff;
  --text: #15171c;
  --muted: #676a72;
  --line: rgba(13, 15, 20, .1);
  --line-light: rgba(255, 255, 255, .16);
  --radius: 34px;
  --max: 1320px;
  --ease: cubic-bezier(.22, 1, .36, 1);
  --header: 78px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 100px; }
body {
  margin: 0;
  overflow-x: hidden;
  background: linear-gradient(180deg,#fafbfc 0,var(--paper) 22%,var(--paper) 100%);
  color: var(--text);
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body.menu-open, body.modal-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button, input, select, textarea { font: inherit; }
button { color: inherit; }
::selection { background: var(--blue); color: white; }

.skip-link { position: fixed; z-index: 5000; left: 20px; top: -100px; padding: 12px 18px; border-radius: 999px; background: var(--ink); color: white; font-weight: 700; }
.skip-link:focus { top: 20px; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.container { width: min(calc(100% - 48px), var(--max)); margin-inline: auto; }
.narrow { width: min(calc(100% - 48px), 900px); margin-inline: auto; }
.section { position: relative; padding: clamp(96px, 10vw, 168px) 0; }
.section--white { background: rgba(255,255,255,.86); }
.section--dark { background: var(--ink); color: white; }
.section--blue { background: var(--blue); color: white; }
.section--soft { background: linear-gradient(145deg,#eef1f7 0,#f6f7fa 52%,#e9eefc 100%); }
.section-head { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(280px, .6fr); gap: 50px; align-items: end; margin-bottom: clamp(50px, 7vw, 96px); }
.section-head > * { min-width: 0; }
.section-head--stack { display: block; max-width: 920px; }
.section-head--stack .lead { margin-top: 28px; }

h1, h2, h3, h4, p { margin-top: 0; }
h1, h2, h3, h4 { margin-bottom: 0; font-weight: 680; line-height: .94; letter-spacing: -.062em; overflow-wrap: break-word; }
h1 { font-size: clamp(4rem, 10vw, 10.5rem); }
h2 { font-size: clamp(3.1rem, 7.2vw, 7.8rem); }
h3 { font-size: clamp(1.8rem, 3vw, 3.2rem); }
h4 { font-size: 1.25rem; letter-spacing: -.035em; }
p { margin-bottom: 0; }
.lead { max-width: 720px; color: var(--muted); font-size: clamp(1.15rem, 1.6vw, 1.45rem); line-height: 1.45; letter-spacing: -.02em; }
.section--dark .lead, .section--blue .lead { color: rgba(255,255,255,.68); }
.kicker { display: flex; align-items: center; gap: 10px; margin-bottom: 24px; color: var(--muted); font-size: .72rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.kicker::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: var(--blue); }
.section--dark .kicker, .section--blue .kicker { color: rgba(255,255,255,.58); }
.section--dark .kicker::before { background: var(--blue-2); }
.section--blue .kicker::before { background: white; }
.micro { color: var(--muted); font-size: .75rem; }
.text-blue { color: var(--blue); }
.text-muted { color: var(--muted); }

.btn { display: inline-flex; min-height: 56px; padding: 0 25px; align-items: center; justify-content: center; gap: 14px; border: 1px solid transparent; border-radius: 999px; background: var(--ink); color: white; font-size: .84rem; font-weight: 700; letter-spacing: -.01em; cursor: pointer; box-shadow: inset 0 1px 0 rgba(255,255,255,.14),0 10px 24px rgba(13,15,20,.1); transition: transform .35s var(--ease), background .25s, color .25s, border-color .25s, box-shadow .35s; }
.btn::after { content: '↗'; font-size: 1rem; }
.btn:hover { transform: translateY(-3px); background: var(--blue); box-shadow: inset 0 1px 0 rgba(255,255,255,.2),0 16px 34px rgba(36,103,255,.22); }
.btn--blue { background: linear-gradient(180deg,#3474ff,var(--blue)); }
.btn--blue:hover { background: linear-gradient(180deg,#286bff,#1553ed); }
.btn--white { background: white; color: var(--ink); }
.btn--white:hover { background: var(--blue-2); color: var(--ink); }
.btn--ghost { border-color: var(--line); background: transparent; color: var(--ink); }
.btn--ghost:hover { border-color: var(--ink); background: var(--ink); color: white; }
.section--dark .btn--ghost, .section--blue .btn--ghost { border-color: var(--line-light); color: white; }
.section--dark .btn--ghost:hover, .section--blue .btn--ghost:hover { border-color: white; background: white; color: var(--ink); }
.btn--small { min-height: 44px; padding-inline: 18px; font-size: .76rem; }
.button-row { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
.text-link { display: inline-flex; align-items: center; gap: 8px; margin-top: 24px; color: var(--blue); font-weight: 700; }
.text-link::after { content: '→'; transition: transform .25s; }
.text-link:hover::after { transform: translateX(5px); }
.page-hero--dark .btn--ghost, .cta-panel .btn--ghost { border-color: rgba(255,255,255,.28); color: white; }
.page-hero--dark .btn--ghost:hover, .cta-panel .btn--ghost:hover { border-color: white; background: white; color: var(--ink); }

.scroll-progress { position: fixed; z-index: 2000; inset: 0 auto auto 0; width: 100%; height: 3px; background: var(--blue); transform: scaleX(0); transform-origin: left; }
.site-header { position: fixed; z-index: 1500; inset: 10px 14px auto; border: 1px solid rgba(255,255,255,.75); border-radius: 24px; background: rgba(250,251,253,.78); box-shadow: 0 10px 35px rgba(24,31,50,.06); backdrop-filter: blur(24px) saturate(165%); transition: border-color .25s, background .25s, box-shadow .25s; }
.site-header.scrolled { border-color: rgba(13,15,20,.08); background: rgba(250,251,253,.92); box-shadow: 0 14px 45px rgba(24,31,50,.1); }
.nav { height: calc(var(--header) - 10px); display: flex; align-items: center; gap: 28px; }
.brand { width: 252px; flex: 0 0 auto; }
.brand img { width: 100%; }
.desktop-nav { display: flex; align-self: stretch; margin-left: auto; }
.nav-item { position: relative; display: flex; align-items: center; }
.nav-link { display: flex; align-items: center; height: 100%; padding: 0 15px; color: #545450; font-size: .8rem; font-weight: 600; transition: color .2s; }
.nav-link:hover, .nav-link.active { color: var(--ink); }
.nav-link.active::after { content: ''; position: absolute; inset: auto 15px 0; height: 2px; background: var(--blue); }
.dropdown { position: absolute; top: calc(100% + 5px); left: -18px; width: 310px; padding: 14px; border: 1px solid rgba(13,15,20,.08); border-radius: 24px; background: rgba(255,255,255,.96); box-shadow: 0 28px 90px rgba(24,31,50,.14); backdrop-filter: blur(22px); opacity: 0; visibility: hidden; transform: translateY(8px); transition: all .25s var(--ease); }
.nav-item:hover .dropdown, .nav-item:focus-within .dropdown { opacity: 1; visibility: visible; transform: none; }
.dropdown a { display: block; padding: 13px 14px; border-radius: 12px; color: var(--muted); font-size: .82rem; font-weight: 600; }
.dropdown a:hover { background: var(--paper); color: var(--ink); }
.menu-toggle { display: none; width: 46px; height: 46px; margin-left: auto; padding: 0; border: 1px solid var(--line); border-radius: 50%; background: white; cursor: pointer; }
.menu-toggle span, .menu-toggle::before, .menu-toggle::after { content: ''; display: block; width: 17px; height: 1.5px; margin: 4.5px auto; background: var(--ink); transition: .3s; }
.menu-toggle[aria-expanded="true"] span { opacity: 0; }
.menu-toggle[aria-expanded="true"]::before { transform: translateY(6px) rotate(45deg); }
.menu-toggle[aria-expanded="true"]::after { transform: translateY(-6px) rotate(-45deg); }
.mobile-menu { position: fixed; z-index: 1400; inset: 0; padding: 108px 24px 110px; overflow-y: auto; background: var(--paper); opacity: 0; visibility: hidden; transform: translateY(-15px); transition: all .35s var(--ease); }
.mobile-menu.open { opacity: 1; visibility: visible; transform: none; }
.mobile-menu .group-title { margin: 25px 0 8px; color: var(--muted); font-size: .7rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.mobile-menu a { display: flex; justify-content: space-between; padding: 14px 0; border-bottom: 1px solid var(--line); font-size: 1.25rem; font-weight: 650; letter-spacing: -.03em; }
.mobile-menu a::after { content: '↗'; color: var(--blue); }

.hero { position: relative; min-height: 100svh; padding: 145px 0 72px; display: flex; align-items: center; overflow: hidden; background: var(--paper); }
.hero::before { display: none; }
.hero::after { content: ''; position: absolute; inset: 0; pointer-events: none; background-image: linear-gradient(rgba(10,10,10,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(10,10,10,.045) 1px, transparent 1px); background-size: 72px 72px; mask-image: linear-gradient(to bottom, black, transparent 75%); }
.hero .container { position: relative; z-index: 2; }
.hero-layout { display: grid; grid-template-columns: minmax(430px,.82fr) minmax(580px,1.18fr); gap: clamp(30px,4vw,70px); align-items: center; }
.hero-copy { position: relative; z-index: 3; max-width: 690px; }
.hero h1 { max-width: 760px; margin-top: 20px; font-size: clamp(4.3rem,6.25vw,7.5rem); }
.hero h1 .line { display: block; }
.hero h1 .line:last-child { color: var(--blue); }
.hero .lead { max-width: 610px; margin-top: 30px; color: #53534f; }
.hero-note { width: fit-content; display: flex; align-items: center; gap: 12px; margin-top: 27px; padding: 11px 15px; border: 1px solid var(--line); border-radius: 999px; background: white; font-size: .72rem; font-weight: 700; }
.hero-note::before { content: ''; width: 8px; height: 8px; border-radius: 50%; background: #27ad5f; box-shadow: 0 0 0 5px rgba(39,173,95,.11); }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.hero-showcase { position: relative; min-height: 620px; perspective: 1400px; }
.hero-sheet { position: absolute; width: 86%; aspect-ratio: 16/10; left: 10%; top: 11%; border: 1px solid #bdc8f4; border-radius: 27px; background: #dbe2ff; transform-origin: bottom left; }
.hero-sheet--one { transform: translate3d(calc(var(--mx,0) * -5px),calc(var(--my,0) * -5px),0) rotate(5deg); }
.hero-sheet--two { background: #111; border-color: #111; transform: translate3d(calc(var(--mx,0) * -9px),calc(var(--my,0) * -7px),0) rotate(-3deg); }
.hero-browser { position: absolute; z-index: 3; width: 95%; aspect-ratio: 16/10; right: 0; top: 12%; overflow: hidden; contain: layout paint; border: 1px solid rgba(10,10,10,.2); border-radius: 27px; background: white; box-shadow: 0 38px 100px rgba(10,18,48,.2); transform: translate3d(calc(var(--mx,0) * 10px),calc(var(--my,0) * 8px),0) rotateY(calc(var(--mx,0) * 1deg)) rotateX(calc(var(--my,0) * -1deg)); transition: transform .16s ease-out; }
.hero-browser-top { height: 36px; padding: 0 13px; display: grid; grid-template-columns: 1fr 1fr 1fr; align-items: center; background: #f0f0ed; color: #777; font-size: .52rem; }
.hero-browser-top > span { display: flex; gap: 6px; }.hero-browser-top i { width: 7px; height: 7px; border-radius: 50%; background: #c6c6c1; }
.hero-browser-top b { justify-self: center; font-weight: 600; }.hero-browser-top em { justify-self: end; color: var(--blue); font-size: .48rem; font-style: normal; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.hero-preview { height: calc(100% - 36px); padding: clamp(22px,2.8vw,38px); overflow: hidden; background: #f5f2e9; color: #111; }
.hero-preview-nav { display: flex; align-items: center; justify-content: space-between; gap: 20px; font-size: clamp(.48rem,.64vw,.66rem); }
.hero-preview-nav b { font-size: clamp(.65rem,.9vw,.9rem); }.hero-preview-nav > span { margin-left: auto; color: #77726b; }.hero-preview-nav i { padding: 8px 11px; border-radius: 999px; background: #111; color: white; font-style: normal; font-weight: 750; }
.hero-preview-main { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(170px,.72fr); gap: 7%; align-items: stretch; margin-top: 7%; }
.hero-preview-copy small { color: var(--blue); font-size: clamp(.44rem,.58vw,.58rem); font-weight: 850; letter-spacing: .09em; }
.hero-preview-copy strong { display: block; margin-top: 11px; font-size: clamp(2rem,3.25vw,3.7rem); line-height: .87; letter-spacing: -.075em; }
.hero-preview-copy p { max-width: 330px; margin-top: 15px; color: #69645d; font-size: clamp(.5rem,.67vw,.67rem); }
.hero-preview-copy > span { display: inline-flex; margin-top: 17px; padding-bottom: 4px; border-bottom: 2px solid var(--blue); color: var(--blue); font-size: clamp(.48rem,.64vw,.64rem); font-weight: 850; }
.hero-preview-proof { position: relative; min-height: 265px; padding: clamp(18px,2vw,27px); overflow: hidden; border-radius: 18px; background: var(--blue); color: white; display: flex; flex-direction: column; justify-content: flex-end; }
.hero-preview-proof::before { content: ''; position: absolute; width: 88%; aspect-ratio: 1; right: -38%; top: -37%; border: 1px solid rgba(255,255,255,.38); border-radius: 50%; box-shadow: 0 0 0 26px rgba(255,255,255,.06),0 0 0 58px rgba(255,255,255,.05); }
.hero-preview-proof small, .hero-preview-proof b, .hero-preview-proof span, .hero-preview-proof i { position: relative; z-index: 2; display: block; }
.hero-preview-proof small { margin-bottom: auto; color: rgba(255,255,255,.65); font-size: .48rem; font-weight: 750; letter-spacing: .06em; }.hero-preview-proof b { font-size: clamp(3rem,4.8vw,5.2rem); line-height: .85; letter-spacing: -.08em; }.hero-preview-proof span { margin-top: 4px; color: rgba(255,255,255,.68); font-size: .55rem; }.hero-preview-proof i { width: fit-content; margin-top: 17px; padding: 7px 9px; border: 1px solid rgba(255,255,255,.25); border-radius: 999px; font-size: .48rem; font-style: normal; }
.hero-preview-bottom { display: flex; align-items: center; gap: 7px; margin-top: 5%; }
.hero-preview-bottom span { padding: 7px 9px; border: 1px solid #d4cfc5; border-radius: 999px; color: #69645d; font-size: clamp(.44rem,.57vw,.56rem); font-weight: 700; }.hero-preview-bottom b { margin-left: auto; color: var(--blue); font-size: clamp(.45rem,.59vw,.58rem); }
.hero-float { position: absolute; z-index: 5; min-width: 210px; padding: 13px 15px; display: flex; align-items: center; gap: 11px; border: 1px solid var(--line); border-radius: 16px; background: white; box-shadow: 0 18px 55px rgba(10,18,48,.16); }
.hero-float > span { width: 34px; height: 34px; flex: 0 0 auto; border-radius: 10px; background: #eef1ff; color: var(--blue); display: grid; place-items: center; font-weight: 850; }.hero-float small, .hero-float b { display: block; }.hero-float small { color: #777; font-size: .54rem; }.hero-float b { margin-top: 3px; font-size: .68rem; }.hero-float > i { margin-left: auto; color: var(--blue); font-style: normal; }
.hero-float--search { z-index: 6; left: -2%; top: 5%; transform: translate3d(calc(var(--mx,0) * -12px),calc(var(--my,0) * -9px),0); }.hero-float--lead { right: -2%; bottom: 4%; transform: translate3d(calc(var(--mx,0) * 13px),calc(var(--my,0) * 10px),0); }.hero-float--lead > span { border-radius: 50%; background: #e8f8ee; color: #1d9d52; }
.hero-showcase-caption { position: absolute; z-index: 2; left: 5%; bottom: 1%; display: flex; align-items: center; gap: 8px; color: #777; font-size: .57rem; font-weight: 750; text-transform: uppercase; letter-spacing: .08em; }.hero-showcase-caption i { width: 24px; height: 1px; background: #aaa; }
.scroll-hint { position: absolute; z-index: 3; right: 32px; bottom: 32px; width: 48px; height: 74px; border: 1px solid var(--line); border-radius: 999px; }
.scroll-hint::after { content: ''; position: absolute; width: 5px; height: 5px; left: 50%; top: 14px; border-radius: 50%; background: var(--blue); transform: translateX(-50%); animation: scrollHint 2s infinite; }
@keyframes scrollHint { 0% { opacity: 0; transform: translate(-50%,0); } 25% { opacity: 1; } 75% { opacity: 1; } 100% { opacity: 0; transform: translate(-50%,30px); } }

.marquee { overflow: hidden; border-block: 1px solid var(--line); background: white; }
.marquee-track { display: flex; width: max-content; animation: marquee 28s linear infinite; }
.marquee span { display: inline-flex; align-items: center; gap: 22px; padding: 18px 22px; color: #5f5f5a; font-size: .78rem; font-weight: 700; letter-spacing: .02em; white-space: nowrap; }
.marquee span::after { content: '●'; color: var(--blue); font-size: .5rem; }
@keyframes marquee { to { transform: translateX(-50%); } }

.stats { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); }
.stat { min-height: 220px; padding: 38px 24px 30px 0; border-right: 1px solid var(--line); display: flex; flex-direction: column; justify-content: space-between; }
.stat:not(:first-child) { padding-left: 30px; }
.stat:last-child { border-right: 0; }
.stat strong { font-size: clamp(3.4rem, 6vw, 6.8rem); line-height: .8; letter-spacing: -.085em; }
.stat strong em { color: var(--blue); font-style: normal; }
.stat span { max-width: 180px; color: var(--muted); font-size: .8rem; font-weight: 600; }

.problem-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.problem-card { min-height: 330px; padding: 32px; border: 1px solid rgba(13,15,20,.08); border-radius: var(--radius); background: rgba(255,255,255,.68); box-shadow: inset 0 1px 0 rgba(255,255,255,.8),0 18px 50px rgba(24,31,50,.045); display: flex; flex-direction: column; overflow: hidden; transition: transform .45s var(--ease), background .3s, box-shadow .4s; }
.problem-card:hover { transform: translateY(-8px); background: white; box-shadow: 0 28px 70px rgba(24,31,50,.1); }
.problem-num { margin-bottom: 52px; color: var(--blue); font-size: .78rem; font-weight: 700; }
.problem-card h3 { max-width: 390px; margin-bottom: 16px; }
.problem-card p { max-width: 370px; color: var(--muted); }

.solution-bento { display: grid; grid-template-columns: 1.15fr .85fr; grid-template-rows: auto auto; gap: 18px; }
.bento { position: relative; min-height: 380px; padding: clamp(32px, 4vw, 56px); border: 1px solid rgba(13,15,20,.07); border-radius: var(--radius); overflow: hidden; background: rgba(255,255,255,.9); box-shadow: 0 24px 70px rgba(24,31,50,.055); }
.bento--main { grid-row: 1 / span 2; min-height: 780px; border-color: transparent; background: linear-gradient(155deg,#4c7fff 0,var(--blue) 48%,#164ad4 100%); color: white; }
.bento--dark { background: var(--ink); color: white; }
.bento p { max-width: 500px; margin-top: 22px; color: var(--muted); font-size: 1.05rem; }
.bento--main p, .bento--dark p { color: rgba(255,255,255,.65); }
.bento--main .kicker, .bento--dark .kicker, .cta-panel .kicker { color: rgba(255,255,255,.64); }
.bento--main .kicker::before, .bento--dark .kicker::before, .cta-panel .kicker::before { background: var(--blue-2); }
.bento--main .text-link, .bento--dark .text-link { color: white; }
.bento-visual { position: absolute; inset: auto -10% -18% 15%; aspect-ratio: 1.15; perspective: 900px; }
.browser-stack { position: absolute; inset: 0; transform-style: preserve-3d; transform: rotateX(60deg) rotateZ(-28deg); }
.browser-plane { position: absolute; inset: 0; border: 1px solid rgba(255,255,255,.5); border-radius: 24px; background: rgba(255,255,255,.12); box-shadow: 0 40px 90px rgba(0,0,0,.28); backdrop-filter: blur(10px); }
.browser-plane:nth-child(1) { transform: translateZ(0); }
.browser-plane:nth-child(2) { transform: translate3d(25px,-25px,55px); background: rgba(255,255,255,.19); }
.browser-plane:nth-child(3) { transform: translate3d(50px,-50px,110px); background: white; }
.browser-plane:nth-child(3)::before { content: ''; position: absolute; inset: 7% 6% auto; height: 7%; border-radius: 999px; background: #e8e8e4; box-shadow: 0 45px 0 #0a0a0a, 0 95px 0 #d8d8d4, 0 145px 0 #d8d8d4, 0 195px 0 #2467ff; }
.seo-serp { margin-top: 50px; padding: 24px; border: 1px solid var(--line); border-radius: 20px; background: #fafafa; }
.serp-url { color: #16833d; font-size: .75rem; }
.serp-title { margin-top: 8px; color: #1a0dab; font-size: 1.25rem; }
.serp-desc { margin-top: 9px; color: #4d5156; font-size: .82rem; line-height: 1.45; }
.position-pill { position: absolute; right: 35px; bottom: 35px; padding: 15px 18px; border-radius: 999px; background: var(--blue); color: white; font-size: .8rem; font-weight: 700; box-shadow: 0 15px 45px rgba(36,103,255,.35); }

/* Startseite: kompakter, ruhiger Leistungsblock ohne Sticky- oder 3D-Zwang */
.solution-system { overflow: clip; border-block: 1px solid rgba(13,15,20,.07); background: #f4f6f9; }
.solution-system__head { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(300px,.55fr); gap: clamp(40px,7vw,110px); align-items: end; }
.solution-system__head h2 { max-width: 930px; font-size: clamp(3.4rem,6.2vw,7rem); }
.solution-system__head h2 span { color: var(--blue); }
.solution-system__head > p { max-width: 470px; padding-bottom: 8px; color: var(--muted); font-size: clamp(1.05rem,1.35vw,1.3rem); line-height: 1.5; letter-spacing: -.02em; }
.solution-path { margin: clamp(50px,6vw,80px) 0 22px; padding: 18px 22px; border: 1px solid rgba(13,15,20,.08); border-radius: 999px; display: grid; grid-template-columns: auto 1fr auto 1fr auto 1fr auto; align-items: center; gap: 18px; background: rgba(255,255,255,.7); }
.solution-path span { display: inline-flex; align-items: center; gap: 10px; color: #51545c; font-size: .73rem; font-weight: 700; white-space: nowrap; }
.solution-path b { color: var(--blue); font-size: .66rem; }
.solution-path i { height: 1px; background: linear-gradient(90deg,rgba(36,103,255,.12),rgba(36,103,255,.6),rgba(36,103,255,.12)); }
.solution-system__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.solution-card { min-width: 0; min-height: 510px; padding: clamp(28px,2.6vw,40px); border: 1px solid rgba(13,15,20,.08); border-radius: 30px; display: flex; flex-direction: column; overflow: hidden; background: rgba(255,255,255,.92); box-shadow: 0 18px 55px rgba(24,31,50,.045); transition: border-color .3s, box-shadow .35s var(--ease), background .3s; }
.solution-card:hover { border-color: rgba(36,103,255,.24); background: white; box-shadow: 0 25px 65px rgba(24,31,50,.09); }
.solution-card--blue { border-color: transparent; background: linear-gradient(155deg,#3774ff 0,#2467ff 56%,#174bd2 100%); color: white; }
.solution-card--blue:hover { border-color: transparent; background: linear-gradient(155deg,#3774ff 0,#2467ff 56%,#174bd2 100%); box-shadow: 0 25px 70px rgba(36,103,255,.24); }
.solution-card--dark { border-color: #17191f; background: #111319; color: white; }
.solution-card--dark:hover { border-color: #252a35; background: #111319; box-shadow: 0 25px 70px rgba(13,15,20,.2); }
.solution-card__top { display: flex; align-items: center; justify-content: space-between; padding-bottom: 22px; border-bottom: 1px solid rgba(13,15,20,.1); }
.solution-card__top span { color: var(--blue); font-size: .7rem; font-weight: 800; }
.solution-card__top em { color: var(--muted); font-size: .65rem; font-style: normal; font-weight: 750; letter-spacing: .1em; text-transform: uppercase; }
.solution-card--blue .solution-card__top, .solution-card--dark .solution-card__top { border-color: rgba(255,255,255,.17); }
.solution-card--blue .solution-card__top span, .solution-card--blue .solution-card__top em, .solution-card--dark .solution-card__top span, .solution-card--dark .solution-card__top em { color: rgba(255,255,255,.65); }
.solution-card__copy { padding: 28px 0 24px; }
.solution-card__copy h3 { font-size: clamp(2rem,2.65vw,3.25rem); }
.solution-card__copy p { max-width: 410px; margin-top: 18px; color: var(--muted); font-size: .96rem; line-height: 1.55; }
.solution-card--blue .solution-card__copy p, .solution-card--dark .solution-card__copy p { color: rgba(255,255,255,.65); }
.solution-window, .solution-proof, .solution-lead { margin-top: auto; }
.solution-window { height: 128px; padding: 18px; border: 1px solid rgba(255,255,255,.28); border-radius: 20px 20px 7px 7px; background: rgba(255,255,255,.12); }
.solution-window > span { display: inline-block; width: 6px; height: 6px; margin-right: 4px; border-radius: 50%; background: rgba(255,255,255,.55); }
.solution-window strong { display: block; margin-top: 20px; font-size: 1.45rem; line-height: .95; letter-spacing: -.055em; }
.solution-proof { height: 128px; padding: 17px 18px; border: 1px solid rgba(13,15,20,.09); border-radius: 20px; background: #f7f8fb; }
.solution-proof small { display: block; color: var(--blue); font-size: .52rem; font-weight: 800; letter-spacing: .1em; }
.solution-proof > strong { display: block; margin: 4px 0 9px; font-size: 2rem; letter-spacing: -.07em; }
.solution-proof div { padding-top: 6px; border-top: 1px solid rgba(13,15,20,.07); display: flex; justify-content: space-between; color: #666a72; font-size: .64rem; }
.solution-proof div + div { margin-top: 5px; }
.solution-proof div b { color: #1b9b52; }
.solution-lead { min-height: 96px; padding: 20px; border: 1px solid rgba(255,255,255,.14); border-radius: 20px; display: grid; grid-template-columns: 1fr auto; gap: 4px 14px; align-items: center; background: #1a1d24; }
.solution-lead span { color: rgba(255,255,255,.5); font-size: .62rem; }
.solution-lead strong { grid-column: 1; font-size: .88rem; }
.solution-lead i { grid-column: 2; grid-row: 1 / span 2; width: 38px; height: 38px; border-radius: 50%; display: grid; place-items: center; background: var(--blue); font-style: normal; }
.solution-card__link { width: 100%; margin-top: 20px; padding: 15px 0 0; border: 0; border-top: 1px solid rgba(13,15,20,.1); display: flex; align-items: center; justify-content: space-between; background: none; color: inherit; font-size: .76rem; font-weight: 750; cursor: pointer; }
.solution-card--blue .solution-card__link, .solution-card--dark .solution-card__link { border-color: rgba(255,255,255,.17); }
.solution-card__link span { color: var(--blue); font-size: 1rem; }
.solution-card--blue .solution-card__link span, .solution-card--dark .solution-card__link span { color: #91b0ff; }

.build-story { padding: 140px 0 110px; overflow: clip; border-block: 1px solid rgba(36,103,255,.1); background: linear-gradient(145deg,#edf1ff 0,#f7f8fc 44%,#e3eaff 100%); color: var(--ink); }
.build-story-intro { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(320px,.65fr); gap: 60px; align-items: end; margin-bottom: 90px; }
.build-story-intro h2 { max-width: 950px; }
.build-story-intro .lead { max-width: 520px; padding-bottom: 8px; }
.build-story-layout { display: grid; grid-template-columns: minmax(560px,1.22fr) minmax(330px,.68fr); gap: clamp(60px,8vw,130px); align-items: start; }
.build-story-stage { position: sticky; top: calc(var(--header) + 28px); height: calc(100svh - var(--header) - 56px); min-height: 590px; display: grid; align-content: center; }
.build-device { width: 100%; aspect-ratio: 16/10; overflow: hidden; contain: layout paint; border: 1px solid rgba(10,10,10,.18); border-radius: 30px; background: #111; box-shadow: 0 35px 90px rgba(28,38,82,.16); }
.build-device-top { height: 42px; padding: 0 16px; display: grid; grid-template-columns: 1fr 1fr 1fr; align-items: center; background: #f4f4f1; color: #777; font-size: .58rem; font-style: normal; }
.build-device-top > span { display: flex; gap: 7px; }
.build-device-top i { width: 8px; height: 8px; border-radius: 50%; background: #c9c9c4; }
.build-device-top b { justify-self: center; font-weight: 600; }
.build-device-top em { justify-self: end; color: var(--blue); font-size: .55rem; font-style: normal; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.build-screen { position: relative; height: calc(100% - 42px); overflow: hidden; }
.build-screen-layer { position: absolute; inset: 0; padding: clamp(25px,4vw,54px); opacity: 0; visibility: hidden; transform: translate3d(0,16px,0) scale(.99); transition: opacity .35s ease, transform .45s var(--ease), visibility .35s; }
.build-screen-layer.active { z-index: 2; opacity: 1; visibility: visible; transform: none; }
.build-mini-nav { position: relative; z-index: 3; display: flex; align-items: center; justify-content: space-between; font-size: clamp(.55rem,.8vw,.78rem); }
.build-mini-nav span { padding: 7px 11px; border: 1px solid currentColor; border-radius: 999px; opacity: .6; }
.build-layer-copy { position: relative; z-index: 3; max-width: 68%; margin-top: clamp(44px,7vw,92px); }
.build-layer-copy small { color: var(--blue); font-size: clamp(.5rem,.65vw,.64rem); font-weight: 850; letter-spacing: .11em; }
.build-layer-copy strong { display: block; margin-top: 13px; font-size: clamp(2.4rem,4.5vw,5rem); line-height: .87; letter-spacing: -.075em; }
.build-layer-copy p { max-width: 440px; margin-top: 20px; color: #666; font-size: clamp(.62rem,.86vw,.84rem); }
.build-screen-layer--attention { background: #f6f4ed; color: #111; }
.build-orbit { position: absolute; width: 48%; aspect-ratio: 1; right: -8%; top: 18%; border: 1px solid rgba(36,103,255,.3); border-radius: 50%; }
.build-orbit::before, .build-orbit::after { content: ''; position: absolute; border: 1px solid rgba(36,103,255,.24); border-radius: 50%; }
.build-orbit::before { inset: 15%; }.build-orbit::after { inset: 32%; }
.build-orbit span { position: absolute; inset: 43%; border-radius: 50%; background: var(--blue); box-shadow: 0 0 0 18px rgba(36,103,255,.12); }
.build-orbit i { position: absolute; width: 8px; height: 8px; left: 3%; top: 48%; border-radius: 50%; background: var(--blue); }
.build-screen-layer--clarity { background: var(--blue); color: white; }
.build-screen-layer--clarity .build-layer-copy small, .build-screen-layer--clarity .build-layer-copy p { color: rgba(255,255,255,.68); }
.build-service-list { position: absolute; z-index: 3; width: 31%; right: 5%; bottom: 9%; border-top: 1px solid rgba(255,255,255,.4); }
.build-service-list span { padding: 13px 2px; border-bottom: 1px solid rgba(255,255,255,.28); display: flex; justify-content: space-between; font-size: clamp(.52rem,.75vw,.72rem); font-weight: 700; }
.build-screen-layer--trust { background: #111; color: white; }
.build-screen-layer--trust .build-layer-copy small { color: #9fb1ff; }
.build-screen-layer--trust .build-layer-copy p { color: rgba(255,255,255,.58); }
.build-proof { position: absolute; z-index: 3; width: 31%; right: 5%; top: 22%; padding: clamp(18px,2.3vw,30px); border: 1px solid rgba(255,255,255,.18); border-radius: 20px; background: #1c1c1c; }
.build-proof b { display: block; color: #9fb1ff; font-size: clamp(2.4rem,4vw,4.2rem); letter-spacing: -.07em; }
.build-proof span { color: rgba(255,255,255,.58); font-size: .66rem; }
.build-proof i { display: block; margin-top: 38px; color: rgba(255,255,255,.78); font-size: clamp(.56rem,.75vw,.72rem); font-style: normal; line-height: 1.45; }
.build-screen-layer--action { background: #f4f6ff; color: #111; }
.build-action-button { display: inline-flex; margin-top: 24px; padding: 11px 15px; border-radius: 999px; background: var(--blue); color: white; font-size: clamp(.54rem,.75vw,.72rem); font-weight: 800; }
.build-notification { position: absolute; z-index: 3; right: 5%; bottom: 10%; width: 32%; padding: 16px; display: flex; gap: 12px; align-items: center; border: 1px solid #cbd4ff; border-radius: 16px; background: white; box-shadow: 0 18px 45px rgba(36,103,255,.14); }
.build-notification > i { width: 32px; height: 32px; flex: 0 0 auto; border-radius: 50%; background: var(--blue); color: white; display: grid; place-items: center; font-style: normal; }
.build-notification small, .build-notification b { display: block; }.build-notification small { color: #777; font-size: .55rem; }.build-notification b { margin-top: 3px; font-size: clamp(.58rem,.78vw,.75rem); }
.build-stage-progress { justify-self: center; display: flex; gap: 8px; margin-top: 20px; }
.build-stage-progress span { width: 8px; height: 8px; border-radius: 999px; background: rgba(10,10,10,.17); transition: width .3s var(--ease), background .3s; }
.build-stage-progress span.active { width: 36px; background: var(--blue); }
.build-story-step { min-height: 74svh; padding: 50px 0; border-top: 1px solid rgba(10,10,10,.16); display: grid; grid-template-columns: 50px 1fr; gap: 20px; align-content: center; opacity: .28; transition: opacity .3s ease; }
.build-story-step:first-child { border-top: 0; }
.build-story-step.active { opacity: 1; }
.build-story-step > span { color: var(--blue); font-size: .75rem; font-weight: 850; }
.build-story-step small { color: var(--blue); font-size: .66rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.build-story-step h3 { margin-top: 12px; font-size: clamp(2.8rem,4.1vw,4.7rem); }
.build-story-step p { margin-top: 18px; color: #555; font-size: 1rem; }
.build-story-step .btn { margin-top: 28px; }

.comparison-wrap { max-width: 1180px; margin-inline: auto; }
.comparison { --split: 52%; position: relative; aspect-ratio: 16/9; min-height: 520px; overflow: hidden; border: 1px solid var(--line); border-radius: 36px; background: #ddd; box-shadow: 0 30px 100px rgba(10,10,10,.12); touch-action: pan-y; }
.compare-layer { position: absolute; inset: 0; }
.compare-before { z-index: 2; clip-path: inset(0 calc(100% - var(--split)) 0 0); }
.compare-tag { position: absolute; z-index: 6; top: 22px; padding: 9px 13px; border-radius: 999px; background: rgba(10,10,10,.82); color: white; font-size: .7rem; font-weight: 700; backdrop-filter: blur(10px); }
.compare-tag--before { left: 22px; }
.compare-tag--after { right: 22px; background: var(--blue); }
.compare-handle { position: absolute; z-index: 7; left: var(--split); top: 0; bottom: 0; width: 2px; background: white; transform: translateX(-1px); box-shadow: 0 0 0 1px rgba(0,0,0,.2); pointer-events: none; }
.compare-handle::after { content: '↔'; position: absolute; top: 50%; left: 50%; width: 58px; height: 58px; display: grid; place-items: center; border-radius: 50%; background: white; color: var(--ink); box-shadow: 0 10px 35px rgba(0,0,0,.24); transform: translate(-50%,-50%); font-weight: 700; }
.compare-range { position: absolute; z-index: 8; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: ew-resize; }
.comparison:has(.compare-range:focus-visible) .compare-handle::after { outline: 3px solid var(--blue); outline-offset: 4px; }
.site-mock { height: 100%; padding: 28px; overflow: hidden; }
.site-mock--old { background: #d9d9d9; color: #303030; font-family: Georgia, serif; }
.site-mock--new { background: var(--mock-bg, #f6f6f2); color: var(--mock-ink, #0a0a0a); }
.mock-browser { height: 100%; border-radius: 17px; overflow: hidden; background: white; box-shadow: 0 20px 60px rgba(0,0,0,.13); }
.mock-top { height: 38px; display: flex; align-items: center; gap: 7px; padding: 0 14px; background: #efefed; }
.mock-top i { width: 8px; height: 8px; border-radius: 50%; background: #c6c6c2; }
.old-page { padding: 24px; }
.old-nav { height: 24px; margin-bottom: 24px; background: #b9b9b9; }
.old-hero { display: grid; grid-template-columns: 1fr .8fr; gap: 18px; }
.old-copy { display: grid; gap: 10px; align-content: center; }
.old-copy b { display: block; font-size: clamp(1.4rem, 3vw, 3rem); line-height: 1.05; font-weight: normal; }
.old-line { height: 9px; background: #c3c3c3; }
.old-line:nth-child(3) { width: 73%; }
.old-button { width: 100px; height: 28px; margin-top: 12px; background: #777; }
.old-photo { min-height: 250px; background: repeating-linear-gradient(45deg,#aaa,#aaa 12px,#bdbdbd 12px,#bdbdbd 24px); }
.old-columns { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-top: 24px; }
.old-columns span { height: 80px; border: 1px solid #bbb; }
.new-page { position: relative; height: calc(100% - 38px); padding: clamp(24px,5vw,64px); overflow: hidden; background: var(--mock-bg, #f7f7f3); }
.new-nav { display: flex; align-items: center; justify-content: space-between; margin-bottom: clamp(35px,6vw,80px); font-size: clamp(.55rem,1vw,.9rem); font-weight: 700; }
.new-logo { font-size: clamp(.8rem,1.4vw,1.25rem); letter-spacing: -.04em; }
.new-nav span:last-child { padding: 7px 12px; border-radius: 999px; background: var(--mock-accent, var(--blue)); color: white; }
.new-copy { position: relative; z-index: 2; width: 67%; }
.new-copy small { color: var(--mock-accent, var(--blue)); font-weight: 700; }
.new-copy b { display: block; margin-top: 14px; font-size: clamp(2rem,5vw,5rem); line-height: .9; letter-spacing: -.07em; }
.new-copy p { max-width: 440px; margin-top: 20px; color: #666; font-size: clamp(.65rem,1.2vw,1rem); }
.new-cta { display: inline-flex; margin-top: 22px; padding: 10px 16px; border-radius: 999px; background: var(--mock-ink,#0a0a0a); color: white; font-size: clamp(.55rem,1vw,.8rem); font-weight: 700; }
.new-orb { position: absolute; width: 54%; aspect-ratio: 1; right: -11%; top: 12%; border-radius: 50%; background: radial-gradient(circle at 35% 30%, color-mix(in srgb, var(--mock-accent,var(--blue)) 35%, white), var(--mock-accent,var(--blue)) 40%, var(--mock-ink,#0a0a0a) 72%); box-shadow: -30px 40px 100px rgba(0,0,0,.2); }
.site-mock--new .new-page { height: calc(100% - 38px); }
.site-mock--new small, .site-mock--new i { font-style: normal; }

.demo-handwerk { padding: clamp(22px,3.4vw,48px); background: #111; color: #fff; }
.demo-hw-nav, .demo-tb-nav, .demo-pr-nav, .demo-vs-nav, .demo-by-nav, .demo-au-nav, .demo-st-nav { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.demo-hw-nav b { font-size: clamp(.85rem,1.5vw,1.35rem); letter-spacing: -.04em; }
.demo-hw-nav span { padding: 8px 13px; border: 1px solid rgba(255,255,255,.26); border-radius: 999px; font-size: clamp(.5rem,.8vw,.72rem); }
.demo-hw-main { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(210px,.95fr); gap: 5%; align-items: stretch; margin-top: 5%; }
.demo-hw-main > div:first-child { padding-top: 5%; }
.demo-hw-main small { color: #ffb000; font-size: clamp(.48rem,.72vw,.68rem); font-weight: 800; letter-spacing: .1em; }
.demo-hw-main strong { display: block; max-width: 560px; margin-top: 11px; font-size: clamp(2.4rem,4.6vw,5rem); line-height: .86; letter-spacing: -.075em; }
.demo-hw-main p { max-width: 430px; margin-top: 18px; color: rgba(255,255,255,.58); font-size: clamp(.54rem,.9vw,.82rem); }
.demo-hw-cta { display: inline-flex; margin-top: 20px; padding: 10px 15px; background: #ffb000; color: #111; font-size: clamp(.5rem,.8vw,.72rem); font-weight: 800; }
.demo-hw-scene { position: relative; min-height: 270px; padding: 18px; overflow: hidden; background: #ffb000; color: #111; display: flex; flex-direction: column; justify-content: flex-end; }
.demo-hw-scene::before { content: ''; position: absolute; width: 82%; height: 74%; top: 8%; right: -20%; border: 2px solid #111; transform: skew(-18deg) rotate(-8deg); box-shadow: -35px 30px 0 rgba(17,17,17,.13); }
.demo-hw-scene i { position: absolute; left: 16%; top: 11%; width: 9px; height: 62%; background: #111; transform: rotate(35deg); box-shadow: 58px 32px 0 #111, 116px 64px 0 #111; }
.demo-hw-scene b, .demo-hw-scene span { position: relative; z-index: 2; }
.demo-hw-scene b { font-size: clamp(2rem,3.6vw,4rem); line-height: .85; letter-spacing: -.07em; }
.demo-hw-scene span { font-size: clamp(.5rem,.75vw,.7rem); font-weight: 800; }
.demo-hw-tags { display: flex; gap: 7px; margin-top: 3%; }
.demo-hw-tags span { padding: 7px 11px; border: 1px solid rgba(255,255,255,.18); color: rgba(255,255,255,.65); font-size: clamp(.46rem,.66vw,.62rem); }

.demo-trockenbau { padding: clamp(22px,3.4vw,46px); background-color: #f3efe5; color: #25221f; background-image: linear-gradient(rgba(48,43,37,.07) 1px, transparent 1px), linear-gradient(90deg,rgba(48,43,37,.07) 1px, transparent 1px); background-size: 34px 34px; }
.demo-tb-nav b { font-size: clamp(.66rem,1.1vw,1rem); line-height: .88; }
.demo-tb-nav span { margin-left: auto; color: #787269; font-size: clamp(.46rem,.66vw,.62rem); letter-spacing: .08em; }
.demo-tb-nav i { padding: 8px 12px; background: #d84a2c; color: white; font-size: clamp(.46rem,.7vw,.65rem); font-weight: 800; }
.demo-tb-layout { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(220px,.9fr); gap: 6%; align-items: center; margin-top: 6%; }
.demo-tb-layout small { color: #d84a2c; font-size: clamp(.46rem,.7vw,.66rem); font-weight: 800; letter-spacing: .08em; }
.demo-tb-layout strong { display: block; margin-top: 12px; font-size: clamp(2.35rem,4.5vw,4.8rem); line-height: .87; letter-spacing: -.07em; }
.demo-tb-layout p { max-width: 410px; margin-top: 18px; color: #6a635b; font-size: clamp(.52rem,.85vw,.8rem); }
.demo-tb-cta { display: inline-flex; margin-top: 20px; padding-bottom: 5px; border-bottom: 2px solid #d84a2c; font-size: clamp(.5rem,.77vw,.72rem); font-weight: 800; }
.demo-tb-plan { position: relative; min-height: 300px; border: 2px solid #302b25; }
.demo-tb-plan::before, .demo-tb-plan::after { content: ''; position: absolute; background: #302b25; }
.demo-tb-plan::before { left: 42%; top: 0; bottom: 34%; width: 2px; }
.demo-tb-plan::after { left: 42%; right: 0; bottom: 34%; height: 2px; }
.plan-room { position: absolute; color: #d84a2c; font-size: .6rem; font-weight: 800; }
.plan-room--one { left: 8%; top: 9%; }
.plan-room--two { left: 48%; top: 9%; }
.plan-room--three { right: 8%; bottom: 22%; }
.demo-tb-plan b { position: absolute; left: 8%; bottom: 7%; font-size: clamp(1.2rem,2.4vw,2.5rem); line-height: .87; letter-spacing: -.05em; }

.demo-praxis { padding: clamp(22px,3.4vw,48px); background: #e9f5f1; color: #173b38; }
.demo-pr-nav b { font-size: clamp(.72rem,1.2vw,1.08rem); line-height: .86; color: #0e716a; }
.demo-pr-nav span { margin-left: auto; font-size: clamp(.46rem,.7vw,.66rem); color: #486d69; }
.demo-pr-nav i { padding: 8px 13px; border-radius: 999px; background: #0e716a; color: white; font-size: clamp(.46rem,.7vw,.65rem); font-weight: 700; }
.demo-pr-main { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(210px,.72fr); gap: 7%; align-items: center; margin-top: 5%; }
.demo-pr-main small { color: #0e716a; font-size: clamp(.46rem,.68vw,.64rem); font-weight: 800; letter-spacing: .08em; }
.demo-pr-main strong { display: block; margin-top: 12px; font-size: clamp(2.25rem,4.4vw,4.7rem); line-height: .9; letter-spacing: -.07em; }
.demo-pr-main p { max-width: 420px; margin-top: 18px; color: #55736f; font-size: clamp(.52rem,.84vw,.8rem); }
.demo-pr-actions { display: flex; align-items: center; gap: 16px; margin-top: 21px; font-size: clamp(.5rem,.76vw,.7rem); font-weight: 750; }
.demo-pr-actions span { padding: 10px 14px; border-radius: 999px; background: #0e716a; color: white; }
.demo-pr-actions i { color: #0e716a; }
.demo-pr-portrait { position: relative; min-height: 275px; padding: 16px; border-radius: 120px 120px 18px 18px; overflow: hidden; background: #b9d8d1; display: flex; flex-direction: column; justify-content: flex-end; }
.demo-pr-portrait > span { position: absolute; align-self: center; top: 22%; width: 100px; aspect-ratio: 1; border-radius: 50% 50% 44% 44%; background: linear-gradient(150deg,#f4d6c6 48%,#355a55 49%); box-shadow: 0 72px 0 27px #f7f7f3; }
.demo-pr-portrait div { position: relative; z-index: 2; padding: 12px; border-radius: 12px; background: rgba(255,255,255,.86); }
.demo-pr-portrait b, .demo-pr-portrait small { display: block; }
.demo-pr-portrait b { font-size: clamp(.62rem,.92vw,.86rem); }
.demo-pr-portrait small { margin-top: 3px; color: #5c7773; font-size: clamp(.45rem,.65vw,.6rem); }
.demo-pr-note { display: flex; align-items: center; gap: 14px; margin-top: 3%; padding: 11px 14px; border-top: 1px solid rgba(14,113,106,.18); color: #55736f; font-size: clamp(.45rem,.66vw,.62rem); }
.demo-pr-note b { color: #0e716a; }
.demo-pr-note i { margin-left: auto; }

.demo-versicherung { padding: clamp(22px,3.4vw,48px); background: #11172b; color: white; }
.demo-vs-nav b { color: #b8ff58; font-size: clamp(.72rem,1.2vw,1.08rem); line-height: .86; }
.demo-vs-nav span { margin-left: auto; color: rgba(255,255,255,.48); font-size: clamp(.46rem,.68vw,.64rem); }
.demo-vs-nav i { padding: 8px 13px; border-radius: 999px; background: #725dff; color: white; font-size: clamp(.46rem,.68vw,.64rem); font-weight: 700; }
.demo-vs-grid { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(190px,.62fr); gap: 7%; align-items: center; margin-top: 6%; }
.demo-vs-grid small { color: #b8ff58; font-size: clamp(.46rem,.68vw,.64rem); font-weight: 800; letter-spacing: .08em; }
.demo-vs-grid strong { display: block; max-width: 580px; margin-top: 12px; font-size: clamp(2.2rem,4.3vw,4.6rem); line-height: .87; letter-spacing: -.07em; }
.demo-vs-grid p { max-width: 430px; margin-top: 18px; color: rgba(255,255,255,.54); font-size: clamp(.52rem,.84vw,.8rem); }
.demo-vs-pills { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 22px; }
.demo-vs-pills span { padding: 8px 11px; border: 1px solid rgba(184,255,88,.32); border-radius: 999px; color: #d4ff9b; font-size: clamp(.46rem,.66vw,.62rem); }
.demo-vs-advisor { min-height: 285px; padding: 14px; border-radius: 18px; background: #725dff; display: flex; flex-direction: column; }
.advisor-photo { min-height: 138px; margin-bottom: 13px; border-radius: 11px; background: radial-gradient(circle at 50% 25%,#e6bda9 0 17%,transparent 18%), linear-gradient(150deg,transparent 48%,rgba(17,23,43,.8) 49%),#b3a8ff; }
.demo-vs-advisor small { color: rgba(255,255,255,.58); font-size: clamp(.45rem,.63vw,.58rem); }
.demo-vs-advisor b { margin-top: 3px; font-size: clamp(.75rem,1.1vw,1rem); }
.demo-vs-advisor span { color: rgba(255,255,255,.58); font-size: clamp(.46rem,.64vw,.6rem); }
.demo-vs-advisor i { margin-top: auto; padding: 8px 10px; border-radius: 999px; background: #b8ff58; color: #11172b; font-size: clamp(.46rem,.64vw,.6rem); font-weight: 800; text-align: center; }

.demo-beauty { padding: clamp(22px,3.4vw,48px); background: #f5ebe6; color: #4a202d; }
.demo-by-nav b { font-family: Georgia,serif; font-size: clamp(.8rem,1.35vw,1.2rem); font-weight: 400; line-height: .82; }
.demo-by-nav span { margin-left: auto; color: #865767; font-size: clamp(.45rem,.66vw,.62rem); }
.demo-by-nav i { padding-bottom: 4px; border-bottom: 1px solid #4a202d; font-size: clamp(.46rem,.68vw,.64rem); }
.demo-by-main { display: grid; grid-template-columns: minmax(220px,.85fr) minmax(0,1.15fr); gap: 7%; align-items: center; margin-top: 5%; }
.demo-by-art { position: relative; min-height: 310px; border-radius: 52% 48% 38% 62% / 46% 39% 61% 54%; overflow: hidden; background: radial-gradient(circle at 60% 32%,#f1c7b5 0 8%,transparent 8.5%), radial-gradient(ellipse at 60% 50%,#d59b88 0 21%,transparent 21.5%), linear-gradient(135deg,#c35575,#6f263b); }
.demo-by-art::after { content: ''; position: absolute; inset: 14% 20%; border: 1px solid rgba(255,255,255,.45); border-radius: 50%; }
.demo-by-art i { position: absolute; left: 18px; bottom: 15px; color: white; font-size: clamp(.48rem,.7vw,.65rem); letter-spacing: .1em; }
.demo-by-main > div:last-child small { color: #b64c6b; font-size: clamp(.46rem,.68vw,.64rem); font-weight: 700; letter-spacing: .1em; }
.demo-by-main strong { display: block; margin-top: 12px; font-family: Georgia,serif; font-size: clamp(2.05rem,4vw,4.25rem); font-weight: 400; line-height: .92; letter-spacing: -.055em; }
.demo-by-main p { max-width: 410px; margin-top: 18px; color: #865f6c; font-size: clamp(.52rem,.84vw,.8rem); }
.demo-by-cta { display: inline-flex; margin-top: 20px; padding: 10px 14px; border: 1px solid #7e3b50; border-radius: 999px; font-size: clamp(.5rem,.74vw,.68rem); }
.demo-by-footer { display: flex; justify-content: flex-end; gap: 17px; margin-top: 3%; color: #9a7180; font-size: clamp(.45rem,.62vw,.58rem); }

.demo-auto { padding: clamp(22px,3.4vw,46px); background: #151515; color: white; }
.demo-au-nav b { font-size: clamp(.78rem,1.4vw,1.22rem); font-style: italic; letter-spacing: -.05em; }
.demo-au-nav span { margin-left: auto; color: rgba(255,255,255,.48); font-size: clamp(.45rem,.66vw,.62rem); }
.demo-au-nav i { padding: 8px 12px; border-radius: 999px; background: #ff5a26; color: white; font-size: clamp(.46rem,.68vw,.64rem); font-weight: 800; }
.demo-au-copy { position: relative; z-index: 3; width: 59%; margin-top: 6%; }
.demo-au-copy small { color: #ff6b3d; font-size: clamp(.46rem,.68vw,.64rem); font-weight: 800; letter-spacing: .09em; }
.demo-au-copy strong { display: block; margin-top: 11px; font-size: clamp(2.3rem,4.5vw,4.8rem); line-height: .86; letter-spacing: -.075em; }
.demo-au-copy p { max-width: 410px; margin-top: 17px; color: rgba(255,255,255,.5); font-size: clamp(.52rem,.82vw,.78rem); }
.demo-au-specs { display: flex; gap: 16px; margin-top: 21px; }
.demo-au-specs span { color: rgba(255,255,255,.45); font-size: clamp(.45rem,.62vw,.58rem); }
.demo-au-specs b { display: block; color: white; font-size: clamp(.7rem,1.05vw,.95rem); }
.demo-au-car { position: absolute; z-index: 2; width: 48%; height: 42%; right: 2%; bottom: 15%; }
.car-body { position: absolute; inset: 22% 5% 18%; border-radius: 52% 48% 18% 16% / 55% 55% 30% 30%; background: linear-gradient(155deg,#ff895f,#ff4e18 48%,#8d260a); filter: drop-shadow(0 25px 30px rgba(0,0,0,.5)); }
.car-body::before { content: ''; position: absolute; left: 24%; right: 20%; top: -28%; height: 55%; border-radius: 80% 75% 0 0; background: #ff7145; clip-path: polygon(20% 0,75% 0,100% 100%,0 100%); }
.car-body::after { content: ''; position: absolute; left: 32%; right: 28%; top: -21%; height: 42%; background: #34383b; clip-path: polygon(15% 0,80% 0,100% 100%,0 100%); }
.demo-au-car i { position: absolute; z-index: 3; width: 18%; aspect-ratio: 1; bottom: 5%; border: 8px solid #090909; border-radius: 50%; background: #777; }
.demo-au-car i:nth-of-type(1) { left: 16%; }
.demo-au-car i:nth-of-type(2) { right: 12%; }
.demo-au-book { position: absolute; z-index: 4; right: 5%; bottom: 5%; width: 31%; padding: 10px 12px; border: 1px solid rgba(255,255,255,.18); border-radius: 12px; background: rgba(24,24,24,.78); backdrop-filter: blur(12px); }
.demo-au-book span, .demo-au-book b, .demo-au-book i { display: block; }
.demo-au-book span { color: rgba(255,255,255,.42); font-size: clamp(.43rem,.6vw,.56rem); }
.demo-au-book b { margin: 2px 0 7px; font-size: clamp(.58rem,.86vw,.8rem); }
.demo-au-book i { color: #ff7043; font-size: clamp(.45rem,.62vw,.58rem); }

.demo-studio { padding: clamp(22px,3.4vw,48px); background: #f5f5f2; color: #111; }
.demo-st-nav b { font-size: clamp(.78rem,1.4vw,1.2rem); letter-spacing: -.05em; }
.demo-st-nav span { margin-left: auto; color: #777; font-size: clamp(.45rem,.66vw,.62rem); }
.demo-st-nav i { padding: 8px 13px; border-radius: 999px; background: #2467ff; color: white; font-size: clamp(.46rem,.68vw,.64rem); font-weight: 800; }
.demo-st-main { display: grid; grid-template-columns: minmax(0,1.12fr) minmax(210px,.75fr); gap: 6%; align-items: center; margin-top: 5%; }
.demo-st-main small { color: #2467ff; font-size: clamp(.46rem,.68vw,.64rem); font-weight: 800; letter-spacing: .1em; }
.demo-st-main strong { display: block; margin-top: 12px; font-size: clamp(2.3rem,4.5vw,4.8rem); line-height: .87; letter-spacing: -.075em; }
.demo-st-main p { max-width: 420px; margin-top: 18px; color: #696966; font-size: clamp(.52rem,.84vw,.8rem); }
.demo-st-cta { display: inline-flex; margin-top: 21px; padding: 10px 14px; border-radius: 999px; background: #111; color: white; font-size: clamp(.48rem,.72vw,.68rem); font-weight: 800; }
.demo-st-orb { position: relative; aspect-ratio: 1; border-radius: 50%; overflow: hidden; background: radial-gradient(circle at 34% 31%,#b9c7ff,#2467ff 40%,#090909 72%); color: white; box-shadow: -25px 35px 70px rgba(0,0,0,.2); }
.demo-st-orb span, .demo-st-orb b { position: absolute; }
.demo-st-orb span { left: 13%; bottom: 17%; font-size: clamp(.48rem,.68vw,.64rem); font-weight: 800; }
.demo-st-orb b { right: 13%; top: 13%; font-size: clamp(1.2rem,2.2vw,2.2rem); letter-spacing: -.06em; }
.demo-st-proof { display: grid; grid-template-columns: auto 1fr auto 1fr; gap: 9px; align-items: baseline; margin-top: 3%; color: #777; font-size: clamp(.45rem,.62vw,.58rem); }
.demo-st-proof b { color: #2467ff; font-size: clamp(.72rem,1.05vw,.95rem); }

.comparison-caption { display: grid; grid-template-columns: 1fr 1fr; gap: 26px; margin-top: 26px; }
.comparison-caption div { padding-left: 18px; border-left: 2px solid var(--line); }
.comparison-caption div:last-child { border-color: var(--blue); }
.comparison-caption b { display: block; margin-bottom: 6px; }
.comparison-caption p { color: var(--muted); font-size: .9rem; }
.comparison-actions, .inline-cta { display: flex; align-items: center; gap: 14px; margin-top: 28px; padding: 20px 22px; border: 1px solid var(--line); border-radius: 22px; background: rgba(255,255,255,.7); }
.comparison-actions > div, .inline-cta > div { margin-right: auto; }
.comparison-actions strong, .comparison-actions span, .inline-cta strong, .inline-cta span { display: block; }
.comparison-actions strong, .inline-cta strong { font-size: 1rem; letter-spacing: -.02em; }
.comparison-actions span, .inline-cta span { margin-top: 3px; color: var(--muted); font-size: .78rem; }
.comparison-actions .btn { flex: 0 0 auto; min-height: 48px; padding-inline: 18px; }
.inline-cta { margin-top: 34px; padding: 26px; background: white; }
.inline-cta--dark { border-color: var(--ink); background: var(--ink); color: white; }
.inline-cta--dark span { color: rgba(255,255,255,.58); }

.process-experience { --process-p: 0; position: relative; height: 370vh; overflow: clip; background: var(--paper); }
.process-experience-sticky { position: sticky; top: 0; height: 100svh; min-height: 700px; padding: calc(var(--header) + 28px) 0 36px; overflow: hidden; display: flex; align-items: center; }
.process-experience-sticky::before { content: ''; position: absolute; width: min(55vw,760px); aspect-ratio: 1; left: -25vw; bottom: -36vw; border-radius: 50%; background: radial-gradient(circle at 58% 42%,rgba(142,167,255,.48),rgba(36,103,255,.12) 45%,transparent 70%); transform: scale(calc(.8 + var(--process-p) * .24)); }
.process-experience .container { position: relative; z-index: 2; }
.process-experience-layout { display: grid; grid-template-columns: minmax(340px,.78fr) minmax(500px,1.22fr); gap: clamp(50px,7vw,110px); align-items: center; }
.process-experience-copy { max-width: 560px; }
.process-experience-copy h2 { font-size: clamp(3.7rem,5.5vw,6.4rem); }
.process-experience-copy > p { max-width: 500px; margin-top: 26px; color: var(--muted); font-size: clamp(1rem,1.35vw,1.2rem); }
.process-readout { display: flex; align-items: baseline; gap: 8px; margin-top: 38px; }
.process-readout strong { color: var(--blue); font-size: clamp(3.8rem,5.4vw,6.2rem); line-height: .8; letter-spacing: -.08em; }
.process-readout span { color: var(--muted); font-size: .78rem; font-weight: 700; }
.process-progress { width: min(100%,470px); height: 3px; margin-top: 24px; overflow: hidden; background: rgba(10,10,10,.12); }
.process-progress i { display: block; width: 100%; height: 100%; background: var(--blue); transform: scaleX(calc(.25 + var(--process-p) * .75)); transform-origin: left; }
.process-step-nav { display: grid; grid-template-columns: repeat(4,1fr); gap: 9px; width: min(100%,470px); margin-top: 15px; }
.process-step-nav span { color: #a0a09b; font-size: .58rem; font-weight: 700; transition: color .25s; }
.process-step-nav span.active { color: var(--ink); }
.process-story { position: relative; height: min(62vh,570px); min-height: 480px; perspective: 1300px; }
.process-story-card { position: absolute; inset: 0; padding: clamp(34px,4vw,58px); overflow: hidden; border: 1px solid var(--line); border-radius: 38px; background: white; display: flex; flex-direction: column; opacity: 0; visibility: hidden; pointer-events: none; transform: translate3d(0,70px,0) rotateX(5deg) scale(.95); transform-origin: center bottom; transition: opacity .48s var(--ease), transform .65s var(--ease), visibility .48s; box-shadow: 0 40px 110px rgba(10,10,10,.12); }
.process-story-card::before { content: ''; position: absolute; width: 70%; aspect-ratio: 1; right: -25%; top: -45%; border-radius: 50%; background: radial-gradient(circle at 36% 38%,#d6deff,var(--blue) 38%,transparent 69%); opacity: .65; }
.process-story-card::after { content: ''; position: absolute; inset: 0; pointer-events: none; background-image: linear-gradient(rgba(10,10,10,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(10,10,10,.035) 1px,transparent 1px); background-size: 54px 54px; mask-image: linear-gradient(to bottom,black,transparent 72%); }
.process-story-card.active { z-index: 4; opacity: 1; visibility: visible; pointer-events: auto; transform: none; }
.process-story-card.past { z-index: 2; opacity: 0; visibility: hidden; transform: translate3d(0,-70px,0) rotateX(-4deg) scale(.95); }
.process-story-card:nth-child(2) { background: #111; color: white; }
.process-story-card:nth-child(2)::before { background: radial-gradient(circle at 36% 38%,#b8c5ff,var(--blue) 36%,transparent 69%); opacity: .48; }
.process-story-card:nth-child(2)::after, .process-story-card:nth-child(3)::after { background-image: linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px); }
.process-story-card:nth-child(3) { border-color: transparent; background: var(--blue); color: white; }
.process-story-card:nth-child(3)::before { background: radial-gradient(circle at 36% 38%,white,var(--blue-2) 28%,transparent 68%); opacity: .42; }
.process-story-card:nth-child(4) { background: #e5eaff; }
.story-num { position: relative; z-index: 2; color: var(--blue); font-size: clamp(4.5rem,7vw,8rem); font-weight: 700; line-height: .74; letter-spacing: -.09em; }
.process-story-card:nth-child(2) .story-num, .process-story-card:nth-child(3) .story-num { color: white; }
.process-story-card > div { position: relative; z-index: 2; max-width: 650px; margin-top: auto; }
.process-story-card small { display: block; margin-bottom: 14px; color: var(--blue); font-size: .68rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.process-story-card:nth-child(2) small, .process-story-card:nth-child(3) small { color: rgba(255,255,255,.66); }
.process-story-card h3 { font-size: clamp(3.4rem,5.8vw,6.5rem); }
.process-story-card p { max-width: 590px; margin-top: 20px; color: var(--muted); font-size: clamp(.96rem,1.25vw,1.12rem); }
.process-story-card:nth-child(2) p, .process-story-card:nth-child(3) p { color: rgba(255,255,255,.67); }
.story-cta { display: inline-flex; align-items: center; gap: 14px; margin-top: 26px; padding: 0 0 6px; border: 0; border-bottom: 1px solid currentColor; background: none; color: inherit; font-size: .78rem; font-weight: 800; cursor: pointer; }
.story-cta span { color: var(--blue); }
.process-story-card:nth-child(3) .story-cta span { color: white; }

.process-grid { display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid var(--line); }
.process-step { min-height: 290px; padding: 28px 30px 28px 0; border-right: 1px solid var(--line); display: flex; flex-direction: column; }
.process-step:not(:first-child) { padding-left: 30px; }
.process-step:last-child { border-right: 0; }
.process-step .num { margin-bottom: 76px; color: var(--blue); font-size: .76rem; font-weight: 700; }
.process-step h3 { margin-bottom: 18px; font-size: 2rem; }
.process-step p { color: var(--muted); font-size: .92rem; }

.industry-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.industry-card { position: relative; min-height: 330px; padding: 30px; border: 1px solid rgba(13,15,20,.07); border-radius: var(--radius); overflow: hidden; background: rgba(255,255,255,.92); color: var(--ink); box-shadow: 0 18px 52px rgba(24,31,50,.055); display: flex; flex-direction: column; transition: transform .45s var(--ease), box-shadow .45s; }
.industry-card:hover { transform: translateY(-8px); box-shadow: 0 30px 70px rgba(0,0,0,.1); }
.industry-card .index { color: var(--muted); font-size: .72rem; font-weight: 700; }
.industry-card h3 { margin: 82px 0 16px; font-size: clamp(2rem,3.4vw,3.5rem); }
.industry-card p { max-width: 380px; color: var(--muted); }
.industry-card::after { content: '↗'; position: absolute; top: 26px; right: 26px; width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 50%; transition: background .25s, color .25s; }
.industry-card:hover::after { background: var(--blue); color: white; }
.industry-card--blue { border-color: transparent; background: linear-gradient(150deg,#4d80ff,var(--blue) 56%,#174fdc); color: white; }
.industry-card--blue p, .industry-card--blue .index { color: rgba(255,255,255,.65); }
.industry-card--dark { background: var(--ink); color: white; }
.industry-card--dark p, .industry-card--dark .index { color: rgba(255,255,255,.62); }
.industry-card--blue::after, .industry-card--dark::after { border-color: var(--line-light); }

.pricing-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; align-items: stretch; }
.price-card { position: relative; padding: 36px; border: 1px solid rgba(13,15,20,.08); border-radius: var(--radius); background: rgba(255,255,255,.92); box-shadow: 0 22px 65px rgba(24,31,50,.055); display: flex; flex-direction: column; }
.price-card.featured { border-color: rgba(255,255,255,.08); background: linear-gradient(150deg,#20242e,var(--ink) 70%); color: white; transform: translateY(-18px); box-shadow: 0 38px 100px rgba(13,15,20,.2); }
.price-badge { position: absolute; right: 26px; top: 26px; padding: 8px 12px; border-radius: 999px; background: var(--blue); color: white; font-size: .68rem; font-weight: 700; }
.price-name { color: var(--muted); font-size: .78rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.featured .price-name { color: rgba(255,255,255,.55); }
.price { margin-top: 42px; font-size: clamp(3.3rem,5vw,5.7rem); font-weight: 700; line-height: .86; letter-spacing: -.08em; }
.price small { font-size: .85rem; letter-spacing: -.02em; }
.price-desc { min-height: 75px; margin-top: 24px; color: var(--muted); }
.featured .price-desc { color: rgba(255,255,255,.62); }
.price-list { display: grid; gap: 0; margin: 32px 0; padding: 0; list-style: none; }
.price-list li { padding: 13px 0 13px 27px; border-bottom: 1px solid var(--line); position: relative; font-size: .88rem; }
.featured .price-list li { border-color: var(--line-light); }
.price-list li::before { content: '✓'; position: absolute; left: 0; color: var(--blue); font-weight: 800; }
.installments { margin: -12px 0 28px; padding: 16px; border-radius: 15px; background: #f1f3fa; }
.installments > span { display: block; margin-bottom: 9px; color: var(--muted); font-size: .67rem; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; }
.installments div { display: grid; grid-template-columns: repeat(3,1fr); gap: 7px; }
.installments b { padding: 8px 6px; border-radius: 9px; background: white; color: var(--ink); font-size: .68rem; text-align: center; white-space: nowrap; }
.featured .installments { background: rgba(255,255,255,.09); }
.featured .installments > span { color: rgba(255,255,255,.55); }
.price-card .btn { margin-top: auto; }
.featured .btn { background: white; color: var(--ink); }

.faq { border-top: 1px solid var(--line); }
.faq-item { border-bottom: 1px solid var(--line); }
.faq-button { width: 100%; padding: 27px 0; border: 0; background: transparent; display: flex; align-items: center; justify-content: space-between; gap: 24px; text-align: left; font-size: clamp(1.15rem,2vw,1.55rem); font-weight: 650; letter-spacing: -.035em; cursor: pointer; }
.faq-button::after { content: '+'; flex: 0 0 auto; color: var(--blue); font-size: 1.6rem; font-weight: 400; transition: transform .3s; }
.faq-button[aria-expanded="true"]::after { transform: rotate(45deg); }
.faq-answer { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .4s var(--ease); }
.faq-answer > div { overflow: hidden; }
.faq-button[aria-expanded="true"] + .faq-answer { grid-template-rows: 1fr; }
.faq-answer p { max-width: 760px; padding: 0 0 28px; color: var(--muted); }

.page-hero { position: relative; min-height: 720px; padding: 190px 0 100px; display: flex; align-items: flex-end; overflow: hidden; background: linear-gradient(145deg,#f9fafc,var(--paper)); }
.page-hero::after { content: ''; position: absolute; width: min(43vw,650px); aspect-ratio: 1.18; right: -4vw; top: 13vh; border: 1px solid rgba(255,255,255,.28); border-radius: 54px; background-color: var(--blue); background-image: linear-gradient(rgba(255,255,255,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.1) 1px,transparent 1px),linear-gradient(145deg,#5b88ff,var(--blue) 65%,#174edb); background-size: 54px 54px,54px 54px,auto; box-shadow: -34px 34px 0 rgba(149,173,255,.28),-68px 68px 0 rgba(36,103,255,.08); transform: rotate(-7deg); }
.page-hero .container { position: relative; z-index: 2; }
.breadcrumbs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 30px; color: var(--muted); font-size: .73rem; font-weight: 600; }
.breadcrumbs span { color: var(--blue); }
.page-hero h1 { max-width: 1050px; font-size: clamp(4rem,8.5vw,9rem); }
.page-hero .lead { margin-top: 32px; }
.page-hero--dark { background: linear-gradient(145deg,#171a22,var(--ink) 65%,#08090c); color: white; }
.page-hero--dark .breadcrumbs, .page-hero--dark .lead { color: rgba(255,255,255,.62); }
.page-hero--dark::after { opacity: .88; }

.split { display: grid; grid-template-columns: minmax(0,1fr) minmax(320px,.85fr); gap: clamp(50px,9vw,140px); align-items: start; }
.split > * { min-width: 0; }
.sticky { position: sticky; top: 120px; }
.detail-list { border-top: 1px solid var(--line); }
.detail-item { padding: 28px 0; border-bottom: 1px solid var(--line); display: grid; grid-template-columns: 70px 1fr; gap: 20px; }
.detail-item .num { color: var(--blue); font-size: .76rem; font-weight: 700; }
.detail-item h3 { margin-bottom: 12px; font-size: 1.8rem; }
.detail-item p { color: var(--muted); }

.case-strip { display: grid; grid-template-columns: repeat(3,1fr); border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; }
.case-metric { min-height: 210px; padding: 30px; border-right: 1px solid var(--line); display: flex; flex-direction: column; justify-content: space-between; }
.case-metric:last-child { border-right: 0; }
.case-metric strong { color: var(--blue); font-size: clamp(2.7rem,5vw,5.2rem); line-height: .9; letter-spacing: -.075em; }
.case-metric span { color: var(--muted); font-size: .78rem; font-weight: 600; }
.proof-note { margin-top: 18px; color: var(--muted); font-size: .73rem; }

.cta-panel { position: relative; min-height: 610px; padding: clamp(40px,7vw,90px); border: 1px solid rgba(255,255,255,.09); border-radius: 46px; overflow: hidden; background: linear-gradient(145deg,#1b1f29,var(--ink) 66%); box-shadow: 0 40px 110px rgba(13,15,20,.2); color: white; display: flex; flex-direction: column; justify-content: flex-end; }
.cta-panel::before { content: ''; position: absolute; width: 620px; aspect-ratio: 1.3; right: -110px; top: -180px; border: 1px solid rgba(255,255,255,.13); border-radius: 58px; background: linear-gradient(145deg,#668eff,var(--blue) 55%,#174edb); box-shadow: -34px 34px 0 rgba(170,192,255,.12); transform: rotate(-12deg); }
.cta-panel > * { position: relative; z-index: 2; }
.cta-panel h2 { max-width: 950px; }
.cta-panel p { max-width: 650px; margin-top: 28px; color: rgba(255,255,255,.64); font-size: 1.15rem; }

.funnel-modal { position: fixed; z-index: 4000; inset: 0; display: grid; place-items: center; padding: 20px; background: rgba(0,0,0,.72); backdrop-filter: blur(14px); opacity: 0; visibility: hidden; transition: .3s; }
.funnel-modal.open { opacity: 1; visibility: visible; }
.funnel-shell { position: relative; width: min(100%, 820px); min-height: 640px; max-height: calc(100vh - 40px); overflow: auto; border: 1px solid rgba(255,255,255,.5); border-radius: 38px; background: var(--paper); box-shadow: 0 45px 140px rgba(0,0,0,.38); }
.funnel-top { position: sticky; z-index: 3; top: 0; display: flex; align-items: center; gap: 18px; padding: 24px 28px; border-bottom: 1px solid var(--line); background: rgba(247,248,250,.95); backdrop-filter: blur(12px); }
.funnel-progress { flex: 1; height: 4px; overflow: hidden; border-radius: 999px; background: #ddd; }
.funnel-progress span { display: block; width: 25%; height: 100%; border-radius: inherit; background: var(--blue); transition: width .4s var(--ease); }
.funnel-count { color: var(--muted); font-size: .72rem; font-weight: 700; }
.funnel-close { width: 40px; height: 40px; padding: 0; border: 1px solid var(--line); border-radius: 50%; background: white; cursor: pointer; }
.funnel-form { padding: clamp(34px,6vw,70px); }
.funnel-step { display: none; }
.funnel-step.active { display: block; animation: stepIn .4s var(--ease); }
@keyframes stepIn { from { opacity: 0; transform: translateY(15px); } }
.funnel-step h2 { max-width: 620px; font-size: clamp(2.5rem,5vw,4.8rem); }
.funnel-step > p { margin-top: 18px; color: var(--muted); }
.selection-hint { display: flex; align-items: center; gap: 9px; margin-top: 15px; color: var(--blue); font-size: .72rem; font-weight: 700; }
.selection-hint::before { content: '↳'; }
.choice-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 12px; margin-top: 36px; }
.choice { position: relative; }
.choice input { position: absolute; opacity: 0; }
.choice label { min-height: 96px; padding: 20px; border: 1px solid var(--line); border-radius: 18px; background: white; display: flex; align-items: center; justify-content: space-between; gap: 20px; font-weight: 650; cursor: pointer; transition: border-color .2s, background .2s, transform .2s; }
.choice label::after { content: '○'; color: var(--muted); font-size: 1.2rem; }
.choice input:checked + label { border-color: var(--blue); background: #edf1ff; transform: translateY(-2px); }
.choice input:checked + label::after { content: '●'; color: var(--blue); }
.funnel-nav { display: flex; justify-content: space-between; gap: 12px; margin-top: 40px; }
.funnel-back { visibility: hidden; }
.funnel-back.visible { visibility: visible; }
.funnel-next.choice-hidden { display: none; }
.funnel-step.leaving { display: block; animation: stepOut .18s ease both; }
@keyframes stepOut { to { opacity: 0; transform: translateY(-9px); } }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 35px; }
.field { display: grid; gap: 8px; }
.field--full { grid-column: 1 / -1; }
.field label { color: var(--muted); font-size: .75rem; font-weight: 650; }
.field input, .field select, .field textarea { width: 100%; min-height: 58px; padding: 0 16px; border: 1px solid var(--line); border-radius: 14px; outline: none; background: white; color: var(--ink); }
.field textarea { min-height: 115px; padding-block: 15px; resize: vertical; }
.field input:focus, .field select:focus, .field textarea:focus { border-color: var(--blue); box-shadow: 0 0 0 4px rgba(36,103,255,.1); }
.checkbox { position: relative; grid-column: 1/-1; display: flex; gap: 12px; align-items: flex-start; color: var(--muted); font-size: .77rem; }
.checkbox input { width: 18px; height: 18px; min-height: 0; flex: 0 0 auto; accent-color: var(--blue); }
.form-status { display: none; margin-top: 18px; padding: 14px 16px; border-radius: 12px; font-size: .82rem; }
.form-status.error { display: block; background: #ffe9e5; color: #8e2415; }
.form-status.success { display: block; background: #e3f6e9; color: #176534; }

.cookie-banner { position: fixed; z-index: 3500; left: 20px; right: 20px; bottom: 20px; max-width: 620px; margin-left: auto; padding: 26px; border: 1px solid var(--line-light); border-radius: 24px; background: rgba(10,10,10,.96); color: white; box-shadow: 0 30px 90px rgba(0,0,0,.3); backdrop-filter: blur(18px); transform: translateY(calc(100% + 40px)); opacity: 0; visibility: hidden; transition: all .45s var(--ease); }
.cookie-banner.show { transform: none; opacity: 1; visibility: visible; }
.cookie-banner h3 { font-size: 1.7rem; }
.cookie-banner p { margin-top: 12px; color: rgba(255,255,255,.62); font-size: .84rem; }
.cookie-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 20px; }
.cookie-actions .btn { min-height: 45px; padding-inline: 17px; font-size: .72rem; }
.cookie-banner .btn--ghost { border-color: rgba(255,255,255,.28); color: white; }
.cookie-banner .btn--ghost:hover { border-color: white; background: white; color: var(--ink); }
.cookie-settings { position: fixed; z-index: 4100; inset: 0; display: grid; place-items: center; padding: 20px; background: rgba(0,0,0,.66); opacity: 0; visibility: hidden; transition: .3s; }
.cookie-settings.open { opacity: 1; visibility: visible; }
.cookie-card { width: min(100%,600px); padding: 34px; border-radius: 28px; background: white; }
.cookie-card > p { margin-top: 12px; color: var(--muted); }
.consent-row { display: grid; grid-template-columns: 1fr auto; gap: 20px; padding: 20px 0; border-bottom: 1px solid var(--line); }
.consent-row:first-of-type { margin-top: 22px; border-top: 1px solid var(--line); }
.consent-row p { margin-top: 5px; color: var(--muted); font-size: .78rem; }
.switch { width: 50px; height: 29px; position: relative; }
.switch input { position: absolute; opacity: 0; }
.switch span { position: absolute; inset: 0; border-radius: 999px; background: #ccc; cursor: pointer; transition: .2s; }
.switch span::after { content: ''; position: absolute; width: 23px; height: 23px; left: 3px; top: 3px; border-radius: 50%; background: white; box-shadow: 0 2px 8px rgba(0,0,0,.2); transition: .2s; }
.switch input:checked + span { background: var(--blue); }
.switch input:checked + span::after { transform: translateX(21px); }
.switch input:disabled + span { background: var(--blue); opacity: .55; cursor: not-allowed; }

.legal { padding-top: 150px; }
.legal h1 { margin-bottom: 70px; font-size: clamp(3.8rem,8vw,7.5rem); }
.legal h2 { margin: 55px 0 18px; font-size: 2rem; letter-spacing: -.045em; }
.legal h3 { margin: 35px 0 12px; font-size: 1.3rem; letter-spacing: -.03em; }
.legal p, .legal li { color: #53534f; }
.legal p + p { margin-top: 15px; }
.legal a { color: var(--blue); text-decoration: underline; text-underline-offset: 3px; }
.legal-note { margin-bottom: 40px; padding: 18px 20px; border-left: 3px solid var(--blue); background: #edf1ff; color: #24336b; font-size: .85rem; }

.site-footer { padding: 100px 0 120px; border-radius: 50px 50px 0 0; background: linear-gradient(150deg,#191c24,var(--ink) 58%,#07080b); color: white; }
.footer-top { display: grid; grid-template-columns: 1.7fr repeat(3,1fr); gap: 60px; }
.footer-brand img { width: 280px; }
.footer-brand p { max-width: 380px; margin-top: 25px; color: rgba(255,255,255,.55); }
.footer-col h3 { margin-bottom: 20px; color: rgba(255,255,255,.38); font-size: .68rem; letter-spacing: .1em; text-transform: uppercase; }
.footer-col a, .footer-col span { display: block; margin: 11px 0; color: rgba(255,255,255,.67); font-size: .84rem; }
.footer-col a:hover { color: white; }
.footer-bottom { display: flex; justify-content: space-between; gap: 30px; margin-top: 80px; padding-top: 25px; border-top: 1px solid var(--line-light); color: rgba(255,255,255,.38); font-size: .72rem; }
.mobile-cta { display: none; }

.reveal { opacity: 0; transform: translateY(34px); transition: opacity .8s var(--ease), transform .8s var(--ease); }
.reveal.visible { opacity: 1; transform: none; }
.reveal-delay { transition-delay: .13s; }

@media (hover: hover) and (pointer: fine) and (min-width: 761px) {
  .interactive-card.interactive-card, .reveal.visible.interactive-card { --card-rx: 0deg; --card-ry: 0deg; --card-lift: 0px; transform: perspective(1100px) translate3d(0,calc(var(--card-base,0px) + var(--card-lift)),0) rotateX(var(--card-rx)) rotateY(var(--card-ry)); transform-style: preserve-3d; will-change: transform; transition: transform .18s ease-out, box-shadow .35s var(--ease), background .3s; }
  .interactive-card.interactive-card:hover, .reveal.visible.interactive-card:hover { --card-lift: -7px; box-shadow: 0 28px 70px rgba(10,10,10,.13); }
}

@media (hover: hover) and (pointer: fine) and (min-width: 1081px) {
  .price-card.featured.interactive-card { --card-base: -18px; }
}

@media (max-width: 1080px) {
  .desktop-nav, .nav > .btn { display: none; }
  .menu-toggle { display: block; }
  .hero-layout { grid-template-columns: minmax(350px,.82fr) minmax(440px,1.18fr); gap: 22px; }
  .hero h1 { font-size: clamp(3.8rem,6.6vw,5.4rem); }
  .hero-showcase { min-height: 540px; }
  .hero-preview-proof { min-height: 220px; }
  .section-head { grid-template-columns: 1fr; align-items: start; }
  .hero-sub { grid-template-columns: 1fr; }
  .hero-note { justify-self: start; }
  .solution-system__head { grid-template-columns: 1fr; gap: 28px; align-items: start; }
  .solution-system__head > p { max-width: 650px; }
  .solution-system__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .solution-card--dark { grid-column: 1 / -1; min-height: 410px; }
  .solution-card--dark .solution-lead { width: min(100%,520px); }
  .solution-bento { grid-template-columns: 1fr; }
  .bento--main { grid-row: auto; min-height: 660px; }
  .build-story-layout { grid-template-columns: minmax(0,1.12fr) minmax(260px,.72fr); gap: 42px; }
  .build-story-stage { min-height: 520px; }
  .build-layer-copy { max-width: 66%; }
  .industry-grid { grid-template-columns: repeat(2,1fr); }
  .pricing-grid { grid-template-columns: 1fr; }
  .price-card.featured { transform: none; }
  .process-experience-layout { grid-template-columns: minmax(0,.82fr) minmax(0,1.18fr); gap: 34px; }
  .process-experience-copy h2 { font-size: clamp(3rem,6vw,4.6rem); }
  .process-story { min-height: 450px; }
  .process-story-card { padding: 34px; }
  .footer-top { grid-template-columns: 1.4fr 1fr 1fr; }
  .footer-brand { grid-column: 1/-1; }
}

@media (max-width: 760px) {
  :root { --header: 70px; --radius: 23px; }
  .container, .narrow { width: min(calc(100% - 32px), var(--max)); }
  .section { padding: 82px 0; }
  h1 { font-size: clamp(3.7rem, 18vw, 6.2rem); }
  h2 { font-size: clamp(3rem, 14vw, 5rem); }
  .site-header { inset: 8px 8px auto; border-radius: 20px; }
  .brand { width: 224px; }
  .hero { min-height: auto; padding: 125px 0 84px; align-items: stretch; }
  .hero::after { background-size: 50px 50px; }
  .hero-layout { grid-template-columns: 1fr; gap: 34px; }
  .hero h1 { margin-top: 17px; font-size: clamp(3.55rem,15.8vw,5rem); }
  .hero .lead { margin-top: 24px; font-size: 1rem; }
  .hero-actions .btn { flex: 1 1 100%; }
  .hero-note { margin-top: 22px; }
  .hero-showcase { min-height: 440px; }
  .hero-sheet { width: 88%; left: 7%; top: 11%; border-radius: 19px; }
  .hero-sheet--one { transform: rotate(4deg); }.hero-sheet--two { transform: rotate(-3deg); }
  .hero-browser { width: 100%; top: 12%; aspect-ratio: 1.12; border-radius: 20px; transform: none; transition: none; }
  .hero-browser-top { height: 30px; padding: 0 9px; grid-template-columns: auto 1fr; }.hero-browser-top b { justify-self: end; }.hero-browser-top em { display: none; }
  .hero-preview { height: calc(100% - 30px); padding: 17px; }
  .hero-preview-nav { font-size: .46rem; }.hero-preview-nav > span { display: none; }.hero-preview-nav i { padding: 6px 8px; }
  .hero-preview-main { grid-template-columns: minmax(0,1.14fr) minmax(105px,.72fr); gap: 4%; margin-top: 8%; }
  .hero-preview-copy small { font-size: .38rem; }.hero-preview-copy strong { margin-top: 7px; font-size: clamp(1.75rem,8vw,2.35rem); }.hero-preview-copy p { margin-top: 9px; font-size: .43rem; }.hero-preview-copy > span { margin-top: 10px; font-size: .42rem; }
  .hero-preview-proof { min-height: 185px; padding: 12px; border-radius: 13px; }.hero-preview-proof small { font-size: .36rem; }.hero-preview-proof b { font-size: 2.6rem; }.hero-preview-proof span, .hero-preview-proof i { font-size: .38rem; }.hero-preview-proof i { margin-top: 10px; padding: 5px 6px; }
  .hero-preview-bottom { margin-top: 4%; }.hero-preview-bottom span { padding: 5px 6px; font-size: .36rem; }.hero-preview-bottom b { display: none; }
  .hero-float { min-width: 0; padding: 9px 10px; gap: 7px; border-radius: 12px; transform: none; }.hero-float > span { width: 26px; height: 26px; border-radius: 8px; font-size: .65rem; }.hero-float small { font-size: .42rem; }.hero-float b { font-size: .52rem; }
  .hero-float--search { left: -2%; top: 1%; }.hero-float--lead { right: -2%; bottom: 0; }
  .hero-showcase-caption { display: none; }
  .scroll-hint { display: none; }
  .stats { grid-template-columns: 1fr 1fr; }
  .stat { min-height: 180px; padding: 25px 18px 22px 0; border-bottom: 1px solid var(--line); }
  .stat:nth-child(2) { border-right: 0; }
  .stat:nth-child(even) { padding-left: 22px; }
  .stat:nth-last-child(-n+2) { border-bottom: 0; }
  .problem-grid, .industry-grid { grid-template-columns: 1fr; }
  .problem-card { min-height: 0; padding: 26px; }
  .problem-card:hover, .industry-card:hover { transform: none; box-shadow: none; }
  .industry-card:hover::after { background: transparent; color: inherit; }
  .problem-num { margin-bottom: 38px; }
  .solution-system__head h2 { font-size: clamp(3rem,13vw,4.8rem); }
  .solution-path { margin: 42px 0 16px; padding: 15px; border-radius: 22px; grid-template-columns: 1fr 1fr; gap: 10px; }
  .solution-path i { display: none; }
  .solution-path span { padding: 8px 10px; border-radius: 12px; background: white; white-space: normal; }
  .solution-system__grid { grid-template-columns: 1fr; gap: 12px; }
  .solution-card, .solution-card--dark { grid-column: auto; min-height: 440px; padding: 25px; border-radius: 24px; }
  .solution-card:hover, .solution-card--blue:hover, .solution-card--dark:hover { box-shadow: none; }
  .solution-card__copy { padding: 24px 0 20px; }
  .solution-card__copy h3 { font-size: clamp(2.2rem,10.8vw,3.2rem); }
  .solution-window, .solution-proof { height: 118px; }
  .solution-card--dark .solution-lead { width: 100%; }
  .bento { min-height: 360px; padding: 28px; }
  .bento--main { min-height: 560px; }
  .build-story { padding: 82px 0; }
  .build-story-intro { grid-template-columns: 1fr; gap: 24px; margin-bottom: 58px; }
  .build-story-layout { grid-template-columns: 1fr; gap: 34px; }
  .build-story-stage { position: sticky; z-index: 4; top: calc(var(--header) + 10px); height: auto; min-height: 0; padding-bottom: 18px; background: #eef2ff; }
  .build-device { aspect-ratio: 1.35; border-radius: 20px; box-shadow: 0 20px 55px rgba(28,38,82,.13); }
  .build-device-top { height: 32px; grid-template-columns: auto 1fr auto; padding: 0 10px; }
  .build-device-top b { display: none; }
  .build-device-top em { font-size: .46rem; }
  .build-screen { height: calc(100% - 32px); }
  .build-screen-layer { padding: 18px; transition: none; }
  .build-mini-nav { font-size: .5rem; }
  .build-layer-copy { max-width: 69%; margin-top: 28px; }
  .build-layer-copy small { font-size: .42rem; }
  .build-layer-copy strong { margin-top: 8px; font-size: clamp(1.55rem,8.1vw,2.35rem); }
  .build-layer-copy p { margin-top: 10px; font-size: .48rem; line-height: 1.35; }
  .build-orbit { width: 50%; right: -15%; top: 21%; }
  .build-service-list { width: 30%; right: 4%; bottom: 8%; }
  .build-service-list span { padding: 8px 0; font-size: .45rem; }
  .build-proof { width: 29%; right: 4%; top: 22%; padding: 10px; border-radius: 12px; }
  .build-proof b { font-size: 1.7rem; }.build-proof span { font-size: .4rem; }.build-proof i { margin-top: 18px; font-size: .4rem; }
  .build-action-button { margin-top: 11px; padding: 7px 9px; font-size: .43rem; }
  .build-notification { width: 31%; right: 4%; bottom: 8%; padding: 8px; gap: 6px; border-radius: 10px; }
  .build-notification > i { width: 20px; height: 20px; font-size: .55rem; }.build-notification small { font-size: .36rem; }.build-notification b { font-size: .4rem; }
  .build-stage-progress { margin-top: 10px; }.build-stage-progress span { height: 6px; width: 6px; }.build-stage-progress span.active { width: 26px; }
  .build-story-step { min-height: 54svh; padding: 44px 0; grid-template-columns: 38px 1fr; gap: 12px; opacity: 1; transition: none; }
  .build-story-step h3 { font-size: clamp(2.45rem,12vw,3.65rem); }
  .build-story-step p { font-size: .94rem; }
  .comparison { width: 100%; aspect-ratio: auto; min-height: 610px; border-radius: 24px; }
  .site-mock { padding: 14px; }
  .old-hero { grid-template-columns: 1fr; }
  .old-photo { min-height: 180px; }
  .new-page { padding: 26px 22px; }
  .new-copy { width: 88%; }
  .new-copy b { font-size: clamp(2.25rem,11vw,4rem); }
  .new-orb { width: 80%; right: -33%; top: 18%; opacity: .78; }
  .demo-hw-main, .demo-tb-layout, .demo-pr-main, .demo-vs-grid, .demo-by-main, .demo-st-main { grid-template-columns: 1fr; gap: 18px; }
  .demo-hw-main strong, .demo-tb-layout strong, .demo-pr-main strong, .demo-vs-grid strong, .demo-by-main strong, .demo-au-copy strong, .demo-st-main strong { font-size: clamp(2rem,10vw,3.4rem); }
  .demo-hw-scene, .demo-tb-plan, .demo-pr-portrait, .demo-vs-advisor, .demo-by-art, .demo-st-orb { min-height: 190px; }
  .demo-hw-tags, .demo-pr-note, .demo-by-footer, .demo-st-proof { display: none; }
  .demo-pr-portrait { position: relative; border-radius: 80px 80px 14px 14px; }
  .demo-vs-advisor { max-height: 210px; }
  .advisor-photo { min-height: 90px; }
  .demo-by-main { grid-template-columns: .82fr 1.18fr; }
  .demo-by-art { min-height: 270px; }
  .demo-au-copy { width: 100%; }
  .demo-au-car { width: 70%; height: 29%; right: -6%; bottom: 13%; opacity: .85; }
  .demo-au-book { right: 5%; bottom: 4%; width: 52%; }
  .demo-au-specs { max-width: 52%; flex-wrap: wrap; }
  .demo-st-main { grid-template-columns: 1fr .72fr; }
  .comparison-actions, .inline-cta { align-items: stretch; flex-direction: column; padding: 18px; }
  .comparison-actions > div, .inline-cta > div { margin-right: 0; }
  .comparison-actions .btn, .inline-cta .btn { width: 100%; }
  .comparison-caption { grid-template-columns: 1fr; }
  .process-experience { height: auto; padding: 82px 0; overflow: hidden; }
  .process-experience-sticky { position: static; height: auto; min-height: 0; padding: 0; overflow: visible; display: block; }
  .process-experience-sticky::before { width: 140vw; left: -78vw; bottom: -60vw; }
  .process-experience-layout { grid-template-columns: 1fr; gap: 42px; }
  .process-experience-copy h2 { font-size: clamp(3rem,14vw,5rem); }
  .process-experience-copy > p { margin-top: 20px; font-size: 1rem; }
  .process-readout, .process-progress, .process-step-nav { display: none; }
  .process-story { height: auto; min-height: 0; display: grid; gap: 14px; perspective: none; }
  .process-story-card, .process-story-card.active, .process-story-card.past { position: relative; inset: auto; min-height: 340px; padding: 26px; border-radius: 24px; opacity: 1; visibility: visible; pointer-events: auto; transform: none; transition: none; }
  .process-story-card::before { width: 95%; right: -48%; top: -35%; }
  .story-num { font-size: 4.2rem; }
  .process-story-card h3 { font-size: clamp(2.8rem,13vw,4.2rem); }
  .process-story-card p { margin-top: 15px; font-size: .92rem; }
  .story-cta { margin-top: 20px; }
  .process-grid { grid-template-columns: 1fr; }
  .process-step, .process-step:not(:first-child) { min-height: 0; padding: 30px 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .process-step:last-child { border-bottom: 0; }
  .process-step .num { margin-bottom: 42px; }
  .industry-card { min-height: 280px; padding: 26px; }
  .industry-card h3 { margin: 64px 0 13px; }
  .page-hero { min-height: 650px; padding: 150px 0 80px; }
  .page-hero::after { width: 100vw; right: -62vw; top: 120px; border-radius: 34px; box-shadow: -20px 20px 0 rgba(149,173,255,.2); }
  .split { grid-template-columns: 1fr; }
  .sticky { position: static; }
  .case-strip { grid-template-columns: 1fr; }
  .case-metric { min-height: 170px; border-right: 0; border-bottom: 1px solid var(--line); }
  .case-metric:last-child { border-bottom: 0; }
  .cta-panel { min-height: 580px; padding: 30px 24px; border-radius: 28px; }
  .cta-panel::before { width: 520px; right: -290px; top: -240px; }
  .choice-grid, .form-grid { grid-template-columns: 1fr; }
  .field--full, .checkbox { grid-column: auto; }
  .funnel-modal { padding: 0; }
  .funnel-shell { width: 100%; min-height: 100%; max-height: 100vh; border-radius: 0; }
  .funnel-top { padding: 16px 18px; }
  .funnel-form { padding: 34px 20px 100px; }
  .choice label { min-height: 76px; }
  .installments div { grid-template-columns: 1fr; }
  .cookie-banner { left: 10px; right: 10px; bottom: 70px; padding: 21px; }
  .cookie-actions .btn { flex: 1 1 100%; }
  .cookie-card { padding: 26px 20px; }
  .footer-top { grid-template-columns: 1fr 1fr; gap: 42px 26px; }
  .footer-brand { grid-column: 1/-1; }
  .footer-bottom { flex-direction: column; }
  .site-footer { padding-bottom: 150px; }
  .mobile-cta { position: fixed; z-index: 1200; inset: auto 0 0; display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid rgba(255,255,255,.13); background: rgba(10,10,10,.96); color: white; backdrop-filter: blur(15px); }
  .mobile-cta a, .mobile-cta button { min-height: 62px; border: 0; background: transparent; color: white; display: grid; place-items: center; font-size: .76rem; font-weight: 700; }
  .mobile-cta button { background: var(--blue); }
}

@media (max-width: 430px) {
  .stats { grid-template-columns: 1fr; }
  .stat, .stat:not(:first-child), .stat:nth-child(even) { min-height: 145px; padding: 25px 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .stat:nth-last-child(-n+2) { border-bottom: 1px solid var(--line); }
  .stat:last-child { border-bottom: 0; }
  .footer-top { grid-template-columns: 1fr; }
  .footer-brand { grid-column: auto; }
}

@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; }
  .build-screen-layer, .build-stage-progress span, .build-story-step { transition: none; }
  .process-experience { height: auto; padding: 110px 0; }
  .process-experience-sticky { position: static; height: auto; min-height: 0; padding: 0; overflow: visible; display: block; }
  .process-experience-layout { grid-template-columns: 1fr; }
  .process-readout, .process-progress, .process-step-nav { display: none; }
  .process-story { height: auto; display: grid; grid-template-columns: repeat(2,1fr); gap: 16px; }
  .process-story-card, .process-story-card.active, .process-story-card.past { position: relative; inset: auto; min-height: 420px; opacity: 1; visibility: visible; pointer-events: auto; transform: none; }
}

@media (max-width: 760px) and (prefers-reduced-motion: reduce) {
  .process-experience { padding: 82px 0; }
  .process-story { grid-template-columns: 1fr; }
  .process-story-card, .process-story-card.active, .process-story-card.past { min-height: 340px; }
}
