/* Ebook feature before the footer. */
.home-ebook{padding:88px 5%;background:var(--bg);color:var(--dark)}
.home-ebook-inner{max-width:1120px;margin:auto;display:grid;grid-template-columns:400px 1fr;gap:72px;align-items:center}
.home-ebook-image{display:block;border-radius:16px;overflow:hidden}.home-ebook-image img{display:block;width:100%;height:auto}
.home-ebook-copy .sec-label{color:var(--p);margin-bottom:18px}.home-ebook-copy h2{font-size:clamp(32px,3.6vw,48px);font-weight:800;line-height:1.12;letter-spacing:-.045em}.home-ebook-copy h2 span{font-weight:400}.home-ebook-copy>p:not(.sec-label){font-size:16px;line-height:1.8;color:var(--muted);margin-top:22px;max-width:470px}
.home-ebook-button{display:inline-flex;align-items:center;justify-content:center;gap:24px;margin-top:26px;background:var(--p);color:#fff;text-decoration:none;font-size:14px;font-weight:750;padding:17px 23px;border-radius:8px;min-height:52px}.home-ebook-button:hover{background:#5131cf}.home-ebook-copy small{display:block;margin-top:16px;font-size:12px;line-height:1.6;color:var(--muted)}
@media(max-width:900px){.home-ebook-inner{grid-template-columns:minmax(240px,340px) 1fr;gap:36px}}
@media(max-width:768px){.home-ebook{padding:58px 20px}.home-ebook-inner{grid-template-columns:1fr;gap:30px}.home-ebook-image{width:min(100%,280px);margin:auto}.home-ebook-copy h2{font-size:34px}.home-ebook-copy>p:not(.sec-label){font-size:15px}.home-ebook-button{width:100%}}
/* Portfolio direction: plum, violet and ice; large type and real project previews. */
.hero-footer{width:100%}
.about-avatar::before,.about-avatar::after{display:none}
.about-meta-val--status{color:#54458a}.proc-tag{color:#625179;background:#eeeaf5;border-color:#ddd6e8}
:root{--dark:#160d2d;--p:#6544ed;--lav:#c4b4ff;--cyan:#a5e8ed;--bg:#f4f3f8;--muted:#625c70}
html{cursor:auto;scroll-padding-top:110px}body::before{display:none}
a,button,summary{ -webkit-tap-highlight-color:transparent }a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--p);outline-offset:5px}
.skip-link{position:fixed;top:12px;left:-10000px;z-index:1000;padding:14px;background:white;color:var(--dark)}.skip-link:focus{left:12px}
nav{max-width:1280px}.nav-link,.nav-cta{font-family:'Manrope',sans-serif;font-size:13px;letter-spacing:0;text-transform:none}.nav-cta{background:var(--p);border-color:transparent}.logo-c{animation:none;background:var(--lav)}
.hero{height:auto;min-height:780px;padding:170px 5% 0;background:radial-gradient(ellipse at 85% 25%,#342052 0,transparent 52%),var(--dark);display:block}
.hero-lines{opacity:.55;background-size:96px 96px}.hero-inner{max-width:1280px;margin:auto;padding:0;display:grid;grid-template-columns:1.08fr 1fr;gap:52px;align-items:center}
.hero-pre{font-size:11px;letter-spacing:.12em;margin-bottom:32px;color:var(--cyan)}
.hero-h1{font-size:clamp(58px,6.6vw,96px);line-height:1.02;letter-spacing:-.065em;margin-bottom:28px}.hero-h1 .line2{color:var(--lav);white-space:nowrap}.hero-last{display:block;color:white}
.hero-desc{font-size:16px;line-height:1.8;color:#c6bfd4;max-width:455px}.hero-desc strong{color:#fff}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:32px;flex-wrap:wrap}.btn-hero{font-family:'Manrope',sans-serif;font-weight:650;font-size:14px;letter-spacing:0;border-radius:8px;padding:17px 23px;gap:20px}.hero-secondary{font-size:14px;color:#fff;text-decoration:none;border-bottom:1px solid #807391;padding:10px 0;display:flex;gap:14px}.hero-signature{font-size:12px;color:#a79ab9;margin-top:28px}
.hero-work{position:relative;min-height:490px;display:block;text-decoration:none;color:white;isolation:isolate}.work-orbit{position:absolute;inset:8% -4% 2%;border:1px solid #65507f;border-radius:50%;transform:rotate(-20deg);z-index:-1}.work-orbit::after{content:'';position:absolute;inset:30px;border:1px solid #514164;border-radius:50%}
.work-window{position:absolute;width:94%;overflow:hidden;border:1px solid #776285;border-radius:10px;background:#261b36;box-shadow:0 24px 70px #08041180;transition:transform .4s}.work-window-back{top:35px;left:10%;transform:rotate(7deg)}.work-window-front{top:185px;left:-2%;transform:rotate(-6deg)}.hero-work:hover .work-window-front{transform:rotate(-3deg) translateY(-6px)}.hero-work:hover .work-window-back{transform:rotate(4deg)}.work-window img{display:block;width:100%;height:auto}.window-bar{height:30px;display:flex;gap:5px;align-items:center;padding:0 12px}.window-bar span{width:5px;height:5px;background:#998ba9;border-radius:50%}.window-bar b{font:9px 'JetBrains Mono',monospace;margin:auto;color:#d6cbe4;font-weight:400;padding-right:20px}
.work-stamp{position:absolute;right:-5px;bottom:35px;display:flex;align-items:center;gap:24px;background:var(--lav);color:var(--dark);padding:18px 22px;border-radius:8px;font-size:14px;font-weight:750;line-height:1.4;transform:rotate(4deg);box-shadow:0 10px 30px #10091a55}.work-stamp i{font-size:36px;font-style:normal;font-weight:400}.work-caption{position:absolute;bottom:0;left:8%;font:10px 'JetBrains Mono',monospace;letter-spacing:.05em;color:#c2b2d6}
.hero-footer{position:relative;max-width:1280px;margin:72px auto 0;border-top:1px solid #ffffff20;padding:24px 0;display:flex;justify-content:space-between;font-size:12px;color:#bcb0cd}.hero-footer a{color:#e5dcf0;text-decoration:none;display:flex;gap:20px}
.projects{padding:104px 5%;background:var(--bg)}.projects-inner{max-width:1200px;margin:0 auto}.portfolio-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:54px}.portfolio-heading .sec-label{margin-bottom:24px;color:var(--p)}.portfolio-heading h2{font-size:clamp(42px,5vw,66px);font-weight:400;line-height:1.05;letter-spacing:-.05em;color:var(--dark)}.portfolio-heading h2 em{font-style:normal;font-weight:800}.portfolio-heading>p{max-width:300px;font-size:15px;color:var(--muted);line-height:1.8}
.portfolio-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.portfolio-card{min-width:0;background:#fff;border:1px solid #dedbe6;border-radius:16px;overflow:hidden}.portfolio-featured{grid-column:1/-1;display:grid;grid-template-columns:1.4fr 1fr}.portfolio-image{display:block;padding:26px;background:#e5e1ed;text-decoration:none;overflow:hidden}.portfolio-featured .portfolio-image{display:flex;flex-direction:column;justify-content:center;padding:40px;background:#ded7e8}.portfolio-image img{width:100%;height:auto;display:block;border-radius:0 0 6px 6px;box-shadow:0 12px 22px #22113715;transition:transform .35s}.portfolio-image:hover img{transform:translateY(-3px)}.portfolio-browser{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#f7f5fa;border:1px solid #d1cbdc;border-bottom:0;padding:11px 12px;border-radius:6px 6px 0 0;font:9px 'JetBrains Mono',monospace;color:#655a77}.portfolio-browser span:first-child{font-size:7px;letter-spacing:3px;color:#988aa9}.portfolio-copy{padding:32px}.portfolio-category{font:10px 'JetBrains Mono',monospace;color:var(--p);line-height:1.7;letter-spacing:.02em;margin-bottom:15px}.portfolio-copy h3{font-size:30px;letter-spacing:-.04em;color:var(--dark);line-height:1.15;margin-bottom:12px}.portfolio-thesis{font-size:16px;font-weight:650;line-height:1.5;color:#342846;margin-bottom:12px}.portfolio-description{font-size:14px;color:var(--muted);line-height:1.8}.portfolio-details{border-top:1px solid #e9e5ee;margin-top:24px;padding-top:16px}.portfolio-details summary{display:flex;justify-content:space-between;gap:16px;font-size:13px;font-weight:650;cursor:pointer;list-style:none}.portfolio-details summary::-webkit-details-marker{display:none}.portfolio-details summary span{color:var(--p);font-size:18px}.portfolio-details[open] summary span{transform:rotate(45deg)}.portfolio-details>p{margin-top:14px;font-size:13px;line-height:1.85;color:var(--muted)}.portfolio-link{display:inline-flex;align-items:center;gap:35px;font-size:13px;font-weight:700;color:var(--dark);text-decoration:none;border-bottom:1px solid var(--p);padding:8px 0;margin-top:20px}.portfolio-link:hover{color:var(--p)}
.pricing{padding:100px 5%}.pricing-title{font-size:clamp(40px,5vw,64px)}.service-visual{height:180px}.service-copy{min-height:330px}.service-copy>p:not(.service-type){font-size:14px}.service-tags span{font-size:10px}.service-copy>a{font-size:12px;font-family:'Manrope',sans-serif;letter-spacing:0;text-transform:none}.pricing-note{font-family:'Manrope',sans-serif;font-size:14px;letter-spacing:0;text-transform:none}.services-label{margin-bottom:0}
.about{padding:104px 5%}.about-inner{max-width:1120px}.about-layout{gap:80px}.about-title{letter-spacing:-.05em}.about-p{font-size:16px;line-height:1.85}.about-avatar{width:min(100%,340px)}.about-avatar img{border-radius:18px}.about-avatar{border-radius:18px}.about-avatar-accent{display:none}.about-meta-label{font-size:10px}.about-meta-val{font-size:11px}.about-quote p{font-style:normal}.about-cta{font-family:'Manrope',sans-serif;letter-spacing:0;text-transform:none}
.process{padding:90px 5%;background:var(--bg)}.proc-steps{gap:18px}.proc-title{letter-spacing:-.04em}.proc-step{box-shadow:none;border:1px solid #e5e0ec}.proc-tag{font-size:10px}.final{padding:104px 5%}.final-h2{letter-spacing:-.06em}.final-sub{color:#d0c7dd;font-size:16px}.form-label{font-family:'Manrope',sans-serif;font-size:12px;text-transform:none;letter-spacing:0;color:#ddd4e8}.contact-card-note{color:#c4b8d3}.form-input,.form-textarea{font-size:14px}.form-submit{font-family:'Manrope',sans-serif;font-size:14px;letter-spacing:0;text-transform:none}.ft-tagline{font-family:'Manrope',sans-serif;letter-spacing:0;color:#b5a8c8}.ft-copy{color:#b5a8c8}.wa-float-label{display:none}.wa-float-icon{width:56px;height:56px}.wa-float{left:auto;right:24px;bottom:24px}.wa-float-icon::before{inset:5px}
.hero-work{min-height:530px}
@media(min-width:1500px){.hero{padding-top:190px;min-height:880px}.hero-footer{margin-top:95px}}
@media(max-width:1050px){.hero-inner{gap:30px}.hero-h1{font-size:64px}.hero-work{min-height:430px}.work-window-front{top:160px}.work-stamp{bottom:45px;right:0}.hero-actions{gap:16px}.portfolio-featured{grid-template-columns:1.2fr 1fr}.portfolio-featured .portfolio-image{padding:25px}.portfolio-copy{padding:26px}.about-layout{gap:42px}}
@media(max-width:1000px){.hero-inner{grid-template-columns:1fr;gap:38px}.hero-work{width:min(100%,540px);margin:0 auto;min-height:490px}.hero-h1{font-size:clamp(58px,8vw,80px)}}
@media(max-width:768px){.hero{min-height:0;padding:124px 20px 0}.hero-inner{grid-template-columns:1fr;gap:38px}.hero-h1{font-size:clamp(52px,9vw,76px)}.hero-pre{font-size:10px;margin-bottom:25px}.hero-desc{max-width:520px;font-size:15px}.hero-work{width:min(100%,540px);margin:0 auto;min-height:440px}.work-window-back{left:6%;top:20px;width:90%}.work-window-front{top:160px;left:0;width:90%}.work-stamp{right:0;bottom:40px}.hero-footer{margin-top:38px;gap:20px;font-size:11px}.hero-footer>span{max-width:180px;line-height:1.6}.portfolio-heading{display:block;margin-bottom:32px}.portfolio-heading>p{margin-top:22px;max-width:480px}.projects,.about,.pricing,.process,.final{padding:76px 20px}.portfolio-grid{grid-template-columns:1fr;gap:24px}.portfolio-featured{grid-column:auto;display:block}.portfolio-featured .portfolio-image{padding:26px}.portfolio-copy{padding:26px}.portfolio-heading h2{font-size:48px}.portfolio-copy h3{font-size:28px}.service-copy{min-height:290px}.service-visual{height:170px}.pricing-header{gap:20px}.about-layout{gap:36px}.about-visual{align-items:flex-start}.about-avatar{width:min(100%,320px)}.about-meta{width:100%}.about-title{font-size:44px}.final-h2{font-size:54px}.wa-float{right:14px;bottom:14px}.hero .btn-hero{width:auto}}
@media(max-width:480px){.hero{padding:112px 20px 0}.hero-h1{font-size:clamp(44px,12vw,58px)}.hero-actions{gap:12px 20px}.hero .btn-hero{font-size:13px;padding:15px 18px}.hero-secondary{font-size:13px}.hero-work{min-height:330px}.work-window-front{top:125px}.work-window-back{top:15px}.window-bar{height:24px}.work-stamp{font-size:12px;padding:13px 16px;bottom:30px;gap:18px}.work-stamp i{font-size:28px}.work-caption{font-size:9px;left:0}.hero-footer{margin-top:30px}.hero-footer>a{font-size:0;align-items:center}.hero-footer>a span{font-size:22px}.portfolio-heading h2{font-size:44px}.portfolio-category{font-size:10px}.portfolio-image,.portfolio-featured .portfolio-image{padding:18px}.portfolio-copy{padding:24px}.pricing-title{font-size:42px}.about-p{font-size:15px}.sec-label{font-size:10px;letter-spacing:.09em;line-height:1.7}.ft-top,.ft-bot{align-items:flex-start}.hero-signature{margin-top:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.work-window-front,.work-window-back{transform:none}.hero-work:hover .work-window-front,.hero-work:hover .work-window-back{transform:none}}

/* Service previews: violet campaign, editorial site, mint workspace. */
.pricing {
  background: #160d2d;
  padding: 110px 5%;
}
.pricing::before { opacity: .25; background-size: 90px 90px; }
.pricing-inner { max-width: 1200px; }
.pricing-header { grid-template-columns: minmax(0, 1fr) 285px; gap: 26px 48px; margin-bottom: 54px; }
.services-label { color: #c4b4ff; }
.pricing-title { font-size: clamp(38px, 4.4vw, 62px); line-height: 1.06; letter-spacing: -.045em; }
.pricing-title em { color: #c4b4ff; }
.pricing-note { color: #c4bbd3; font-size: 14px; line-height: 1.8; }
.service-gallery { gap: 22px; border: 0; align-items: stretch; }
.service-card {
  --service-accent: #c4b4ff;
  border: 1px solid #ffffff1f;
  border-radius: 20px;
  background: #211637;
  overflow: hidden;
  transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease;
}
.service-card--site { --service-accent: #b8def0; }
.service-card--system { --service-accent: #a6edcf; }
.service-card:hover, .service-card:focus-within {
  background: #211637;
  transform: translateY(-7px);
  border-color: color-mix(in srgb, var(--service-accent) 60%, transparent);
  box-shadow: 0 22px 48px #08031060;
}
.service-visual {
  height: 340px;
  min-height: 0;
  display: block;
  border: 0;
  perspective: 950px;
  background: radial-gradient(ellipse at 50% 40%, #7959bd50, transparent 75%), #291c43;
}
.service-visual::before { display: none; }
.service-card--site .service-visual { background: radial-gradient(ellipse at 55% 40%, #4a83a34d, transparent 75%), #20223c; }
.service-card--system .service-visual { background: radial-gradient(ellipse at 55% 45%, #489c8050, transparent 75%), #182e32; }
.service-demo {
  position: absolute;
  width: 86%;
  left: 7%;
  top: 36px;
  overflow: hidden;
  border: 1px solid #ffffff45;
  border-radius: 9px;
  box-shadow: 0 18px 34px #08031065;
  transform: rotate(-5deg) rotateY(7deg);
  transition: transform .5s cubic-bezier(.22, .8, .22, 1), box-shadow .5s;
}
.service-card:hover .service-demo, .service-card:focus-within .service-demo { transform: rotate(-1deg) rotateY(0) translateY(-5px); box-shadow: 0 24px 38px #08031080; }
.demo-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 10px; height: 26px; padding: 0 10px; background: #f8f6ff; color: #7a7187; font: 8px 'JetBrains Mono', monospace; }
.demo-dots { color: #b3a9c2; letter-spacing: 2px; font-size: 6px; }
.landing-canvas { position: relative; padding: 15px 17px 12px; min-height: 199px; background: #c9b8fa; color: #291748; overflow: hidden; }
.landing-brand { font-size: 11px; font-weight: 800; letter-spacing: -.04em; }
.landing-brand>span { padding-left: 2px; font-size: 7px; vertical-align: top; }
.landing-eyebrow { font-size: 6px; letter-spacing: .01em; margin: 16px 0 6px; position: relative; z-index: 1; }
.landing-headline { display: block; position: relative; z-index: 1; font-size: clamp(23px, 2.2vw, 31px); line-height: .99; letter-spacing: -.05em; font-weight: 800; }
.landing-headline em { font-style: normal; color: #6940ce; }
.landing-button { position: relative; z-index: 1; display: inline-flex; align-items: center; gap: 18px; margin-top: 13px; padding: 8px 11px; background: #2d194d; color: #fff; font-size: 7px; font-weight: 650; border-radius: 4px; }
.landing-bottom { display: block; font-size: 6px; margin-top: 17px; color: #574371; }
.landing-sculpture { position: absolute; width: 128px; height: 165px; top: 28px; right: -8px; transform: rotate(25deg); transition: transform .6s; }
.landing-sculpture i { position: absolute; inset: 0; display: block; border: 19px solid #7950d3; border-radius: 50%; transform: rotateY(45deg); box-shadow: inset 4px 0 8px #d8c9ff80, 7px 8px 0 #543294, 10px 13px 18px #6b3aa14d; }
.landing-sculpture i:nth-child(2) { inset: 29px 18px -15px; border-color: #ad8ef1; border-width: 15px; }
.landing-sculpture i:nth-child(3) { inset: 63px 39px -26px; border-color: #f0e8ff; border-width: 11px; }
.service-card:hover .landing-sculpture { transform: rotate(10deg) translateX(-5px); }
.demo-float { position: absolute; display: flex; align-items: center; gap: 10px; right: 16px; bottom: 36px; padding: 12px 15px; border: 1px solid #ffffff70; border-radius: 9px; background: #fcfaff; color: #34204f; box-shadow: 0 12px 24px #0b041a40; font-size: 9px; line-height: 1.5; transform: rotate(4deg); transition: transform .4s; }
.demo-float strong { font-size: 11px; font-weight: 800; }
.demo-float-icon { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: #e5d9ff; color: #6544ed; font-size: 16px; }
.service-card:hover .demo-float, .service-card:focus-within .demo-float { transform: rotate(0) translateY(-6px); }
.demo-caption { position: absolute; bottom: 13px; left: 22px; right: 15px; font: 8px 'JetBrains Mono', monospace; color: #cac0dc; letter-spacing: .01em; line-height: 1.5; }
.demo-site { top: 47px; width: 89%; left: 5%; transform: rotate(-6deg); background: #fff; }
.site-canvas img { width: 100%; height: auto; display: block; }
.site-pages { display: flex; gap: 10px; align-items: center; padding: 12px 14px; background: #f4f7f8; border-top: 1px solid #dee8ec; }
.site-pages span { color: #45647b; font-size: 7px; padding: 4px 7px; border: 1px solid #d8e4ea; border-radius: 3px; background: #fff; }
.site-phone { position: absolute; top: 85px; right: 13px; width: 90px; height: 178px; border: 4px solid #182438; border-radius: 17px; padding: 16px 7px 7px; background: #f8faf9; color: #12475e; box-shadow: 0 12px 25px #070f2460; transform: rotate(8deg); transition: transform .5s; }
.phone-speaker { position: absolute; width: 28px; height: 5px; top: 4px; left: calc(50% - 14px); border-radius: 3px; background: #182438; }
.site-phone>span { font-size: 6px; font-weight: 800; }
.site-phone>strong { display: block; font: 700 10px/1.15 Georgia, serif; margin-top: 16px; text-align: center; }
.phone-landscape { height: 37px; margin-top: 9px; background: url('APAPREV-960.webp') center 95% / 250% auto; border-radius: 3px; }
.site-phone>i { display: block; background: #d4e2e4; height: 3px; margin-top: 7px; border-radius: 2px; }
.site-phone>i+i { width: 72%; margin-top: 4px; }
.site-phone>b { display: block; font-size: 4px; font-weight: 600; margin-top: 9px; padding: 5px 2px; border-radius: 3px; background: #174c63; color: #fff; text-align: center; }
.service-card:hover .site-phone, .service-card:focus-within .site-phone { transform: rotate(3deg) translateY(-8px); }
.demo-system { left: 6%; width: 88%; top: 33px; transform: rotate(-5deg); background: #f6f9f7; border-color: #9bbeb7; }
.demo-system .demo-toolbar { background: #e9f0eb; color: #657970; }
.system-canvas { display: grid; grid-template-columns: 35px 1fr; min-height: 212px; color: #213a34; }
.system-sidebar { display: flex; flex-direction: column; align-items: center; gap: 12px; padding: 10px 0; background: #203c36; }
.system-logo { color: #f4faf7; font-size: 18px; font-weight: 800; letter-spacing: -.07em; }
.system-logo span { color: #a6edcf; }
.system-sidebar>i { font-size: 12px; font-style: normal; color: #b5ccc3; width: 22px; height: 20px; display: grid; place-items: center; border-radius: 4px; }
.system-sidebar .sidebar-active { background: #a6edcf; color: #203c36; }
.system-main { padding: 12px 10px 9px; min-width: 0; }
.system-heading { display: flex; align-items: center; justify-content: space-between; }.system-heading strong { font-size: 10px; }
.system-avatar { font-size: 5px; font-weight: 700; background: #d9e9e0; border-radius: 50%; padding: 5px; }
.system-greeting { display: block; color: #82938a; font-size: 6px; margin: 3px 0 11px; }
.system-metrics { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
.system-metrics>div { padding: 8px; border: 1px solid #dfe7e1; border-radius: 5px; background: #fff; }
.system-metrics>div>span { display: block; font-size: 6px; color: #718379; }
.system-metrics strong { display: block; font-size: 19px; line-height: 1.1; letter-spacing: -.04em; margin-top: 3px; }
.system-metrics small { font-size: 5px; font-weight: 400; letter-spacing: 0; display: block; color: #6c8175; margin-top: 3px; }
.system-chart { padding: 9px 9px 5px; margin-top: 7px; background: #fff; border: 1px solid #dfe7e1; border-radius: 5px; }
.system-chart>div:first-child { display: flex; justify-content: space-between; font-size: 6px; }
.chart-bars { height: 42px; display: flex; align-items: flex-end; gap: 7px; padding-top: 6px; border-bottom: 1px solid #e5eee8; background: repeating-linear-gradient(to top, transparent 0 12px, #eff3f0 12px 13px); }
.chart-bars i { display: block; flex: 1; height: var(--bar); border-radius: 2px 2px 0 0; background: #b4d3c3; transform-origin: bottom; transition: background .4s; }
.chart-bars i:nth-child(4), .chart-bars i:nth-child(6) { background: #35735b; }
.chart-days { display: block; color: #8a9b91; font-size: 5px; word-spacing: 10px; text-align: center; margin-top: 3px; }
.system-task { display: flex; align-items: center; gap: 5px; font-size: 5px; margin-top: 9px; }.task-check { color: #286746; font-size: 7px; }.system-task b { margin-left: auto; background: #def0e5; color: #3e7c58; border-radius: 3px; padding: 3px 4px; font-size: 4px; }
.system-float { background: #d6f5e6; color: #204c3b; }.system-float .demo-float-icon { background: #b0dfc6; color: #286c4c; }
.service-card:hover .chart-bars i, .service-card:focus-within .chart-bars i { animation: service-bar .65s cubic-bezier(.22,.8,.22,1) var(--delay) both; }
@keyframes service-bar { from { transform: scaleY(.35); } to { transform: scaleY(1); } }
.service-copy { min-height: 335px; padding: 29px 26px 26px; }
.service-type { font-size: 11px; letter-spacing: .03em; color: var(--service-accent); margin-bottom: 19px; }
.service-copy h3 { font-size: clamp(26px, 2.5vw, 33px); margin-bottom: 16px; }
.service-copy>p:not(.service-type) { font-size: 14px; line-height: 1.8; color: #d4cddd; max-width: none; }
.service-copy>p.service-fit { font-size: 12px; color: #b7a9c8; margin-top: 16px; margin-bottom: 26px; }
.service-copy>a { min-height: 47px; padding: 13px 14px; border: 1px solid #ffffff25; border-radius: 8px; background: #ffffff06; text-transform: none; letter-spacing: 0; font-size: 12px; font-weight: 650; gap: 12px; transition: background .25s, color .25s; }
.service-copy>a span { color: var(--service-accent); }
.service-copy>a:hover { background: var(--service-accent); color: #211637; border-color: transparent; }.service-copy>a:hover span { color: #211637; }
@media(max-width:1050px) and (min-width:901px) {
  .service-gallery { gap: 15px; }.service-copy { padding: 25px 21px; }.service-visual { height: 330px; }.service-demo { width: 89%; left: 5%; }.landing-headline { font-size: 26px; }.landing-sculpture { right: -30px; }.demo-float { right: 10px; }.site-phone { right: 9px; width: 82px; }
}
@media(max-width:900px) {
  .service-gallery { grid-template-columns: 1fr; gap: 24px; }.service-card { grid-template-columns: 47% 1fr; }.service-visual { height: 100%; min-height: 360px; }.service-copy { min-height: 335px; }.service-demo { top: 45px; }.demo-site { top: 70px; }.site-phone { top: 103px; }.landing-headline { font-size: 32px; }.landing-sculpture { right: 0; }.demo-caption { bottom: 20px; }.demo-float { bottom: 46px; }
}
@media(max-width:640px) {
  .pricing { padding: 76px 20px; }.pricing-header { grid-template-columns: 1fr; gap: 20px; margin-bottom: 34px; }.services-label { margin: 0; }.pricing-title { font-size: clamp(36px, 8vw, 48px); }.pricing-note { max-width: 380px; }.service-card { display: block; }.service-visual { height: 340px; min-height: 0; }.service-demo { top: 33px; width: 86%; left: 7%; max-width: 390px; }.demo-site { top: 48px; }.site-phone { top: 89px; right: 18px; }.demo-float { bottom: 38px; right: 18px; }.demo-caption { bottom: 13px; }.service-copy { min-height: 0; padding: 28px 26px; }.service-copy h3 { font-size: 31px; }.service-copy>a { margin-top: 0; min-height: 50px; font-size: 13px; }.service-copy>p.service-fit { margin-bottom: 24px; }.landing-headline { font-size: 31px; }
}
@media(max-width:380px) { .service-visual { height: 330px; }.service-copy { padding: 26px 22px; }.landing-headline { font-size: 28px; }.landing-sculpture { right: -22px; }.demo-toolbar { font-size: 7px; }.site-phone { width: 80px; right: 12px; }.site-pages { gap: 5px; }.site-pages span { padding: 4px 5px; }.demo-float { right: 12px; }.service-copy h3 { font-size: 28px; } }
@media(prefers-reduced-motion:reduce) { .service-card:hover,.service-card:focus-within { transform: none; }.service-card:hover .service-demo,.service-card:focus-within .service-demo { transform: rotate(-5deg); }.service-card:hover .site-phone,.service-card:focus-within .site-phone { transform: rotate(8deg); }.service-card:hover .landing-sculpture { transform: rotate(25deg); }.service-card:hover .demo-float,.service-card:focus-within .demo-float { transform: rotate(4deg); }.service-card:hover .chart-bars i,.service-card:focus-within .chart-bars i { animation: none; } }

/* A connected sequence: conversation, agreement, creation, delivery. */
.process { padding: 108px 5%; background: #f4f3f8; }
.process-inner { max-width: 1200px; }
.process-header { align-items: flex-end; flex-wrap: nowrap; gap: 50px; margin-bottom: 52px; }
.process-header .sec-label { color: #6544ed; margin-bottom: 25px; }
.proc-title { font-size: clamp(40px, 4.7vw, 64px); line-height: 1.05; letter-spacing: -.05em; font-weight: 400; }
.proc-title em { color: #6544ed; font-weight: 800; font-style: normal; }
.proc-intro { font: 14px/1.9 'Manrope', sans-serif; color: #625c70; max-width: 310px; }
.project-journey { position: relative; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; margin: 0; padding: 0; list-style: none; }
.project-journey::before { content: ''; position: absolute; top: 21px; left: 22px; right: calc((100% - 72px) / 4 - 22px); height: 2px; background: linear-gradient(90deg, #6544ed, #c4b4ff 70%, #b6cfc1); }
.journey-step { position: relative; min-width: 0; }
.journey-marker { position: relative; z-index: 1; display: grid; place-items: center; width: 44px; height: 44px; margin-bottom: 23px; border: 5px solid #f4f3f8; border-radius: 50%; background: #6544ed; color: #fff; font: 10px 'JetBrains Mono', monospace; box-shadow: 0 0 0 1px #d9d2eb; }
.journey-delivery .journey-marker { background: #315e49; box-shadow: 0 0 0 1px #cfdfd5; }
.journey-preview { position: relative; display: grid; place-items: center; height: 220px; border: 1px solid #e1dbe9; border-radius: 14px; background: #eae4f4; overflow: hidden; }
.journey-proposal .journey-preview { background: #e8e4ef; }.journey-creation .journey-preview { background: #e1daf3; }.journey-delivery .journey-preview { background: #e1eee7; border-color: #d4e2da; }
.journey-chat,.journey-paper,.journey-design,.journey-live { transition: transform .4s ease, box-shadow .4s ease; }
.journey-step:hover .journey-chat { transform: translateY(-4px); }.journey-step:hover .journey-paper { transform: rotate(0) translateY(-4px); }.journey-step:hover .journey-design { transform: rotate(0) translateY(-4px); }.journey-step:hover .journey-live { transform: rotate(0) translateY(-4px); }
.journey-chat { width: 87%; max-width: 230px; padding: 13px; border: 1px solid #dfd5ef; border-radius: 10px; background: #fff; box-shadow: 0 10px 22px #3c225517; }
.chat-header { display: flex; align-items: center; gap: 7px; border-bottom: 1px solid #eee9f5; padding-bottom: 9px; margin-bottom: 10px; }
.chat-avatar { width: 25px; height: 25px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: #6544ed; font-size: 7px; font-weight: 700; }
.chat-header strong { font-size: 8px; display: block; color: #281b3d; }.chat-header small { font-size: 6px; display: block; color: #8a7c9c; margin-top: 2px; }.chat-header>i { margin-left: auto; color: #9a8caf; font-style: normal; font-size: 12px; }
.chat-message { font-size: 9px; line-height: 1.5; padding: 8px 10px; max-width: 88%; border-radius: 8px; }.chat-message>span { display: block; font-size: 6px; opacity: .7; margin-top: 3px; }.chat-client { background: #f1edf8; color: #514365; margin-left: auto; border-bottom-right-radius: 2px; }.chat-angelli { margin-top: 7px; background: #6544ed; color: #fff; border-bottom-left-radius: 2px; }
.chat-compose { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 11px; padding: 5px 5px 5px 8px; border: 1px solid #e9e1f2; border-radius: 5px; font-size: 7px; color: #9c90aa; }.chat-compose b { display: grid; place-items: center; width: 17px; height: 17px; border-radius: 4px; background: #ede7fa; color: #6544ed; font-size: 11px; }
.journey-paper { width: 73%; max-width: 190px; padding: 15px 16px 12px; transform: rotate(-5deg); background: #fff; border: 1px solid #d9d1e5; border-radius: 5px; box-shadow: 7px 8px 0 #d6cee34d, 0 12px 20px #3c22551a; }
.paper-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 15px; }.paper-top>span:first-child { font-size: 15px; font-weight: 800; letter-spacing: -.06em; color: #6544ed; }.paper-top>span+span { font-size: 5px; color: #8a7d9b; }
.journey-paper>strong { display: block; font-size: 13px; line-height: 1.1; letter-spacing: -.04em; color: #281b3d; }.paper-rule { height: 1px; background: #e9e1f0; margin: 12px 0 10px; }.paper-row { display: flex; align-items: center; gap: 7px; margin-top: 8px; font-size: 7px; color: #62546f; }.paper-row i { display: grid; place-items: center; width: 13px; height: 13px; background: #efe8fa; color: #6544ed; border-radius: 3px; font-style: normal; font-size: 8px; }.paper-signature { display: flex; justify-content: space-between; margin-top: 14px; border-top: 1px solid #e9e1f0; padding-top: 7px; font-size: 6px; color: #8a7d9b; }.paper-signature>span { color: #6544ed; }
.journey-design { position: absolute; width: 85%; top: 29px; left: 7%; background: white; border: 1px solid #c9bfde; border-radius: 7px; overflow: hidden; transform: rotate(-5deg); box-shadow: 0 14px 22px #3c225524; }
.journey-windowbar { display: flex; justify-content: space-between; align-items: center; height: 22px; padding: 0 9px; background: #f8f5fc; color: #9486a7; font: 6px 'JetBrains Mono', monospace; }.journey-windowbar>span:first-child { font-size: 5px; letter-spacing: 2px; }
.design-canvas { position: relative; background: #24143c; padding: 11px 14px 13px; overflow: hidden; }.design-brand { display: block; color: #cab9ef; font-size: 6px; }.design-canvas>strong { position: relative; display: block; color: #f4edff; font-size: 21px; line-height: 1.05; letter-spacing: -.05em; margin-top: 14px; z-index: 1; }.design-button { position: relative; display: inline-flex; gap: 14px; padding: 5px 7px; background: #c4b4ff; color: #302146; border-radius: 3px; font-size: 6px; font-weight: 700; margin-top: 12px; z-index: 1; }.design-button i { font-style: normal; }.design-orb { position: absolute; width: 95px; height: 95px; right: -25px; top: 27px; border: 14px solid #7651b7; border-radius: 50%; box-shadow: inset 0 0 0 9px #4a2a70, 0 0 0 9px #38204f; }
.design-swatches { display: flex; align-items: center; gap: 4px; padding: 9px; background: #faf8fd; }.design-swatches i { width: 9px; height: 9px; background: #24143c; border-radius: 50%; }.design-swatches i:nth-child(2) { background: #7651b7; }.design-swatches i:nth-child(3) { background: #c4b4ff; }.design-swatches span { font-size: 5px; color: #847494; margin-left: 4px; }
.design-comment { position: absolute; display: flex; align-items: center; gap: 7px; right: 10px; bottom: 15px; padding: 9px 11px; background: #fff; border: 1px solid #d9cbed; border-radius: 7px 7px 7px 0; box-shadow: 0 7px 16px #3c225520; transform: rotate(3deg); transition: transform .4s; }.design-comment>span { display: grid; place-items: center; width: 22px; height: 22px; background: #eee7fa; border-radius: 50%; color: #6544ed; font-size: 6px; font-weight: 700; }.design-comment p { font-size: 7px; line-height: 1.5; color: #786588; }.design-comment strong { color: #49335e; font-size: 8px; }.journey-step:hover .design-comment { transform: rotate(0) translateY(-3px); }
.journey-live { width: 84%; max-width: 225px; border: 1px solid #b9cfbf; border-radius: 8px; overflow: hidden; background: #fff; transform: rotate(-4deg); box-shadow: 0 12px 22px #2049351c; }.journey-live .journey-windowbar { background: #f2f8f4; color: #89a091; }.live-canvas { text-align: center; padding: 14px 10px 13px; }.live-check { display: grid; place-items: center; width: 32px; height: 32px; background: #e1f0e7; color: #39734f; border-radius: 50%; font-size: 19px; margin: 0 auto 10px; }.live-canvas>strong { display: block; color: #234b35; font-size: 21px; line-height: 1.05; letter-spacing: -.04em; }.live-canvas>span { display: block; font-size: 6px; color: #7c9485; margin-top: 7px; }.live-status { display: inline-flex; align-items: center; gap: 5px; margin-top: 12px; padding: 4px 8px; background: #e6f1e9; border: 1px solid #cfdfd2; border-radius: 20px; color: #4d7c5b; font-size: 7px; }.live-status>i { width: 4px; height: 4px; border-radius: 50%; background: #59956a; }.live-spark { position: absolute; color: #68a584; font-size: 26px; transition: transform .4s; }.spark-one { top: 19px; right: 18px; }.spark-two { bottom: 23px; left: 14px; font-size: 17px; }.journey-step:hover .live-spark { transform: rotate(35deg); }
.journey-copy { padding: 24px 2px 0; }.journey-label { color: #6544ed; font: 10px 'JetBrains Mono', monospace; letter-spacing: .03em; margin-bottom: 12px; }.journey-copy h3 { color: #251a39; font-size: 22px; line-height: 1.18; letter-spacing: -.035em; min-height: 53px; margin-bottom: 14px; }.journey-description { font-size: 13px; line-height: 1.85; color: #625c70; min-height: 97px; }.journey-outcome { border-top: 1px solid #ded7e8; margin-top: 22px; padding-top: 16px; font-size: 12px; color: #493859; font-weight: 650; }.journey-outcome>span { display: block; font-size: 10px; color: #85768f; font-weight: 400; margin-bottom: 5px; }
.journey-footer { display: flex; align-items: center; justify-content: space-between; gap: 30px; border-top: 1px solid #ded7e8; padding-top: 28px; margin-top: 45px; }.journey-footer p { font-size: 13px; color: #786b85; }.journey-footer a { display: inline-flex; align-items: center; justify-content: space-between; gap: 25px; padding: 13px 18px; border-radius: 7px; background: #6544ed; color: #fff; font-size: 12px; font-weight: 650; text-decoration: none; transition: background .2s, transform .2s; }.journey-footer a:hover { background: #5130d5; transform: translateY(-2px); }
@media(max-width:1050px) {
  .process-header { gap: 35px; }.proc-title { font-size: 48px; }.project-journey { grid-template-columns: 1fr; gap: 28px; }.project-journey::before { display: none; }.journey-step { display: grid; grid-template-columns: 44px minmax(200px, .85fr) 1fr; gap: 25px; align-items: center; }.journey-step::after { content: ''; position: absolute; left: 21px; top: 50%; bottom: calc(-50% - 28px); width: 2px; background: #c4b4ff; }.journey-step:last-child::after { display: none; }.journey-marker { margin: 0; }.journey-preview { height: 240px; }.journey-copy { padding: 8px 0; }.journey-copy h3 { font-size: 25px; min-height: 0; }.journey-description { font-size: 14px; min-height: 0; }.journey-outcome { margin-top: 17px; padding-top: 12px; }.journey-design { top: 37px; width: 85%; max-width: 275px; }.journey-chat { max-width: 250px; }.design-canvas { padding: 14px 16px; }.design-canvas>strong { font-size: 25px; }.design-comment { bottom: 20px; }.proc-intro { max-width: 275px; }.journey-footer { margin-top: 38px; }
}
@media(max-width:640px) {
  .process { padding: 76px 20px; }.process-header { display: block; margin-bottom: 35px; }.process-header .sec-label { margin-bottom: 24px; }.proc-title { font-size: clamp(38px, 9vw, 48px); }.proc-intro { margin-top: 20px; max-width: none; }.project-journey { gap: 34px; }.journey-step { display: block; padding-left: 51px; }.journey-marker { position: absolute; left: 0; top: 0; width: 38px; height: 38px; }.journey-step::after { left: 18px; top: 38px; bottom: -34px; }.journey-preview { height: 235px; }.journey-copy { padding: 21px 0 0; }.journey-copy h3 { font-size: 24px; margin-bottom: 12px; }.journey-description { font-size: 14px; }.journey-label { margin-bottom: 10px; }.journey-outcome { margin-top: 19px; }.journey-design { top: 35px; }.journey-footer { align-items: stretch; flex-direction: column; gap: 18px; padding-top: 25px; margin-top: 34px; }.journey-footer p { line-height: 1.8; }.journey-footer a { min-height: 48px; font-size: 13px; }
}
@media(max-width:380px) { .journey-step { padding-left: 44px; }.journey-preview { height: 218px; }.journey-chat { padding: 10px; }.chat-message { font-size: 8px; }.journey-paper { width: 80%; padding: 13px; }.journey-design { top: 29px; width: 88%; left: 6%; }.design-canvas>strong { font-size: 23px; }.design-comment { right: 6px; bottom: 12px; }.journey-copy h3 { font-size: 22px; } }
@media(prefers-reduced-motion:reduce) { .journey-step:hover .journey-chat { transform: none; }.journey-step:hover .journey-paper { transform: rotate(-5deg); }.journey-step:hover .journey-design { transform: rotate(-5deg); }.journey-step:hover .journey-live { transform: rotate(-4deg); }.journey-step:hover .design-comment { transform: rotate(3deg); }.journey-step:hover .live-spark { transform: none; }.journey-footer a:hover { transform: none; } }

/* Conversion, readable text and accessible controls. */
.hero-h1{font-size:clamp(40px,4.3vw,64px);line-height:1.08;letter-spacing:-.045em}.hero-h1 .line2{white-space:normal}.hero-pre{color:#bceef2}.hero-signature{color:#cfc4de;line-height:1.7;max-width:430px}.hero-work:focus-visible{outline-color:#c4b4ff}.work-caption{font-family:Manrope,sans-serif;font-size:12px;letter-spacing:0}.portfolio-heading h2{font-size:clamp(36px,4.5vw,56px)}
.form-input::placeholder,.form-textarea::placeholder{color:#b9b1c7}.form-privacy,.form-status{font-size:13px;line-height:1.8;color:#ddd4e8}.form-privacy a,.form-status a{color:#e1d7ff;text-underline-offset:3px}.form-status:empty{display:none}.privacy-settings{background:none;border:0;padding:0;color:#ddd4e8;font:inherit;cursor:pointer;text-align:left}.ft-col .privacy-settings{font-size:13px;margin-bottom:12px}.journey-outcome>span{color:#655570}.journey-footer p{color:#625570}
.faq{background:#fff;padding:96px 5%}.faq-inner{max-width:1120px;margin:auto;display:grid;grid-template-columns:.85fr 1.15fr;gap:32px 70px}.faq-heading .sec-label{margin-bottom:24px}.faq h2{font-size:clamp(34px,4vw,52px);line-height:1.12;letter-spacing:-.045em;color:var(--dark)}.faq h2 em{font-style:normal;color:var(--p)}.faq-heading>p:last-child{margin-top:22px;color:var(--muted);font-size:15px;line-height:1.8}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:22px 0;font-size:16px;font-weight:700;line-height:1.5;cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:var(--p);font-size:24px}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{padding:0 30px 24px 0;color:var(--muted);font-size:15px;line-height:1.85}.faq-cta{grid-column:2;display:flex;flex-wrap:wrap;align-items:center;gap:20px}.faq-cta p{color:var(--muted);font-size:14px}
.cookie-banner{position:fixed;z-index:700;bottom:18px;left:18px;width:min(540px,calc(100% - 36px));padding:22px;background:#fff;color:#251a39;border:1px solid #d9d6e4;border-radius:12px;box-shadow:0 10px 50px #140b2e30}.cookie-banner h2{font-size:18px;margin-bottom:8px}.cookie-banner p{font-size:13px;line-height:1.7;color:#504a61}.cookie-banner a{color:#5130d5}.cookie-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.cookie-actions button{font:600 13px Manrope,sans-serif;padding:12px 16px;border-radius:6px;border:1px solid #6544ed;background:#fff;color:#5130d5;cursor:pointer}.cookie-actions button[data-choice="accepted"]{background:#6544ed;color:#fff}.cookie-actions button:focus-visible,.privacy-settings:focus-visible{outline:3px solid #6544ed;outline-offset:4px}
.legal-page{background:#f4f3f8}.legal-content{max-width:850px;margin:auto;padding:70px 24px 100px}.legal-content>a{color:#5130d5}.legal-content h1{font-size:clamp(32px,5vw,52px);line-height:1.15;margin:30px 0 18px;color:#160d2d}.legal-content h2{font-size:22px;margin:32px 0 12px}.legal-content p,.legal-content li{font-size:16px;line-height:1.85;color:#504a61;margin-bottom:14px}.legal-content a{color:#5130d5;text-underline-offset:3px}.legal-content ul{padding-left:24px}.legal-content .privacy-settings{color:#5130d5;text-decoration:underline}
@media(max-width:768px){.hero-h1{font-size:clamp(38px,7vw,58px)}.hero-signature{font-size:12px}.faq{padding:76px 20px}.faq-inner{grid-template-columns:1fr;gap:28px}.faq-cta{grid-column:1}.hero-pre{font-size:11px;letter-spacing:.06em}.hero-work{min-height:450px}}
@media(max-width:480px){.hero-h1{font-size:clamp(34px,9vw,44px)}.hero-work{min-height:345px}.hero-actions .btn-hero{width:100%;justify-content:space-between}.hero-actions{gap:16px}.cookie-banner{bottom:10px;left:10px;width:calc(100% - 20px);padding:18px}.cookie-actions button{flex:1}.faq-list summary{font-size:15px}.work-caption{font-size:11px}.faq h2{font-size:36px}}
