:root {
  --page:#0f0147;
  --page-deep:#08002f;
  --surface:#1b0b6c;
  --surface-strong:#24117c;
  --text:#f6f8ff;
  --muted:#a6b0c8;
  --line:rgba(218,211,255,.2);
  --accent:#5b5fe8;
  --accent-hover:#474bc7;
  --accent-light:#a49aff;
  --cyan:#6ce3ff;
  --white:#fff;
  --dark-ink:#0f0147;
  --dark-muted:rgba(15,1,71,.66);
}

* { box-sizing:border-box; }
::selection {
  background:var(--accent);
  color:var(--white);
}
html {
  scroll-behavior:smooth;
  scroll-padding-top:104px;
  background-color:#0f0147;
  overflow-x:hidden;
  overflow-x:clip;
}
body {
  margin:0;
  background-color:#0f0147;
  color:var(--text);
  font-family:Manrope,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
  overscroll-behavior-y: none;
  overflow-x:hidden;
  overflow-x:clip;
}
a { color:inherit; text-decoration:none; }
button { font:inherit; }
svg { display:block; }
button, a { -webkit-tap-highlight-color:transparent; }
a:focus-visible, button:focus-visible {
  outline:3px solid rgba(164,154,255,.8);
  outline-offset:4px;
}
.shell { width:min(1180px,calc(100% - 56px)); margin:0 auto; }

/* Header and compact menu */
header {
  position:fixed;
  top:0;
  left:0;
  right:0;
  z-index:50;
  height:86px;
  background:var(--accent) !important;
  border:0 !important;
  box-shadow:none !important;
  transform:translateY(0);
  transition:transform .35s cubic-bezier(.22,.61,.36,1);
  will-change:transform;
}
header.is-hidden { transform:translateY(-110%); }
header.is-at-hero { background:transparent !important; }
header .nav {
  position:relative;
  height:86px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}
.logo {
  display:block;
  width:165px;
  height:62px;
  flex:0 0 auto;
  object-fit:contain;
}
.menu-toggle {
  position:relative;
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  margin-left:auto;
  padding:0;
  border:0;
  border-radius:50%;
  background:#ffcc00;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 8px 0 #aa8800;
  color:#0f0147;
  cursor:pointer;
  transition:background .12s ease,top .12s ease,box-shadow .12s ease;
}
.menu-toggle:hover,
.menu-toggle[aria-expanded="true"] {
  background:#e8bd21;
}
.menu-toggle:active {
  top:10px;
  background:#d4aa00;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28),inset 0 -3px 0 #aa8800;
}
.menu-toggle svg {
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
}
.menu {
  display:none;
  position:absolute;
  top:calc(100% + 14px);
  right:0;
  z-index:60;
  width:min(290px,calc(100vw - 32px));
  padding:10px 10px 25px;
  flex-direction:column;
  align-items:stretch;
  gap:4px;
  border:1px solid var(--line);
  border-radius:18px;
  background:rgba(15,1,71,.96);
  box-shadow:0 24px 60px rgba(3,0,24,.36);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.menu.is-open { display:flex; }
.menu.is-open > a:not(.navcta) { display:block; }
.menu > a:not(.navcta) {
  display:block;
  padding:14px 15px;
  border-radius:10px;
  color:#e9e5ff;
  white-space:nowrap;
  transition:color .2s ease,background .2s ease;
}
.menu > a:not(.navcta):hover { color:var(--white); background:rgba(164,154,255,.12); }
.menu .nav-button {
  --button-depth:#aa8800;
  width:100%;
  margin-top:6px;
}
.menu .navcta {
  position:relative;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:9px;
  width:100%;
  margin-top:0;
  height:62px;
  padding:0 15px;
  border:0;
  border-radius:32px;
  background:#ffcc00;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 10px 0 #aa8800;
  color:#0f0147;
  font-size:13px;
  white-space:nowrap;
  transition:background .12s ease,top .12s ease,box-shadow .12s ease;
}
.menu .navcta:hover { background:#e8bd21; }
.menu .navcta:active { top:10px; background:#d4aa00; box-shadow:inset 0 1px 0 rgba(255,255,255,.28),inset 0 -3px 0 #aa8800; }
.menu .navcta svg { width:17px; height:17px; }

/* Shared controls */
.icon {
  width:17px;
  height:17px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
}
.btn {
  position:relative;
  height:62px;
  width:max-content;
  max-width:100%;
  padding:0 18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:11px;
  border:0;
  border-radius:32px;
  background:#ffcc00;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 10px 0 #aa8800;
  color:#0f0147;
  font-size:13px;
  font-weight:600;
  line-height:1;
  text-align:center;
  text-shadow:none;
  cursor:pointer;
  -webkit-tap-highlight-color:rgba(0,0,0,0);
  transition:background .12s ease,top .12s ease,box-shadow .12s ease;
  font-family:"museo","Museo Fallback",Manrope,Arial,sans-serif;
}
.button {
  position:relative;
  display:inline-block;
  margin:0;
  isolation:isolate;
}
.button::after {
  content:"";
  width:100%;
  height:100%;
  padding:4px;
  position:absolute;
  bottom:-15px;
  left:-4px;
  z-index:-1;
  box-sizing:content-box;
  border-radius:34px;
  background:var(--accent-light);
  pointer-events:none;
}
.btn:hover { background:var(--button-hover-bg,var(--accent-hover)); }
.btn:active {
  top:10px;
  background:var(--button-active-bg,var(--accent-hover));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28),inset 0 -3px 0 var(--button-depth,var(--accent-hover));
}
.btn.is-pressing {
  top:10px;
  background:var(--button-active-bg,var(--accent-hover));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28),inset 0 -3px 0 var(--button-depth,var(--accent-hover));
}
.btn-yellow {
  --button-bg:#ffcc00;
  --button-hover-bg:#e8bd21;
  --button-active-bg:#d4aa00;
  --button-depth:#aa8800;
  color:#0f0147;
}
/* ========================================
   SECTION — HERO
======================================== */
.section-hero {
  position:sticky;
  top:0;
  z-index:0;
  display:flex;
  min-height:660px;
  padding:164px 0 84px;
  align-items:center;
  overflow:hidden;
  isolation:isolate;
  background:var(--page);
  text-align:center;
  --hero-stack-y:0px;
  --hero-stack-scale:1;
  --hero-stack-opacity:1;
  transform:translate3d(0,var(--hero-stack-y),0) scale(var(--hero-stack-scale));
  transform-origin:center top;
  opacity:var(--hero-stack-opacity);
  will-change:transform;
}
main > section:not(.section-hero) { position:relative; z-index:1; }
.section-hero .shell { position:relative; z-index:1; transform:translateY(46px); }
.section-hero .actions { align-items:center; }
.section-hero .actions .btn,
.section-offer .plan .btn,
.section-market-study .market-study-footer .btn,
.section-faq .section-faq-intro .btn {
  font-family:"museo","Museo Fallback",Manrope,Arial,sans-serif;
  font-size:13px;
  font-weight:600;
  letter-spacing:-.01em;
  white-space:nowrap;
}
.section-hero .actions .btn > span:first-child,
.section-offer .plan .btn > span:first-child,
.section-market-study .market-study-footer .btn > span:first-child,
.section-faq .section-faq-intro .btn > span:first-child {
  position:relative;
  z-index:1;
  font-family:inherit;
  font-weight:600;
  transition:transform .35s cubic-bezier(.22,.61,.36,1);
}
.section-hero .actions .btn .btn-arrow,
.section-offer .plan .btn .btn-arrow,
.section-market-study .market-study-footer .btn .btn-arrow,
.section-faq .section-faq-intro .btn .btn-arrow {
  position:absolute;
  top:50%;
  right:10px;
  z-index:2;
  display:grid;
  width:30px;
  height:30px;
  place-items:center;
  border-radius:50%;
  background:var(--accent-light);
  color:var(--dark-ink);
  transform:translateY(-50%) rotate(-45deg);
  transition:right .35s cubic-bezier(.22,.61,.36,1),transform .35s cubic-bezier(.22,.61,.36,1),background .2s ease;
}
.section-hero .actions .btn .btn-arrow .icon,
.section-offer .plan .btn .btn-arrow .icon,
.section-market-study .market-study-footer .btn .btn-arrow .icon,
.section-faq .section-faq-intro .btn .btn-arrow .icon {
  display:block;
  width:15px;
  height:15px;
  flex:0 0 15px;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.8;
}
.section-hero .actions .btn:hover .btn-arrow,
.section-hero .actions .btn:focus-visible .btn-arrow,
.section-hero .actions .btn:active .btn-arrow,
.section-offer .plan .btn:hover .btn-arrow,
.section-offer .plan .btn:focus-visible .btn-arrow,
.section-offer .plan .btn:active .btn-arrow,
.section-market-study .market-study-footer .btn:hover .btn-arrow,
.section-market-study .market-study-footer .btn:focus-visible .btn-arrow,
.section-market-study .market-study-footer .btn:active .btn-arrow,
.section-faq .section-faq-intro .btn:hover .btn-arrow,
.section-faq .section-faq-intro .btn:focus-visible .btn-arrow,
.section-faq .section-faq-intro .btn:active .btn-arrow {
  right:calc(100% - 40px);
  transform:translateY(-50%) rotate(0deg);
}
.section-hero .actions .btn:hover > span:first-child,
.section-hero .actions .btn:focus-visible > span:first-child,
.section-hero .actions .btn:active > span:first-child,
.section-offer .plan .btn:hover > span:first-child,
.section-offer .plan .btn:focus-visible > span:first-child,
.section-offer .plan .btn:active > span:first-child,
.section-market-study .market-study-footer .btn:hover > span:first-child,
.section-market-study .market-study-footer .btn:focus-visible > span:first-child,
.section-market-study .market-study-footer .btn:active > span:first-child,
.section-faq .section-faq-intro .btn:hover > span:first-child,
.section-faq .section-faq-intro .btn:focus-visible > span:first-child,
.section-faq .section-faq-intro .btn:active > span:first-child {
  transform:translateX(30px);
}

@media (min-width:821px) {
  .section-hero .actions .button .btn {
    width:max-content;
    min-width:215px;
    padding:0 46px 0 18px;
    gap:0;
  }

  .section-market-study .market-study-footer .button .btn {
    width:max-content;
    min-width:0;
    justify-content:center;
    text-align:center;
  }

  .section-faq .section-faq-intro .button .btn {
    width:max-content;
    min-width:215px;
    padding:0 46px 0 18px;
    gap:0;
  }
}

.wavy-grid {
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
  opacity:.2;
  pointer-events:none;
  -webkit-mask-image:radial-gradient(ellipse at 50% 46%,#000 0%,#000 52%,transparent 88%);
  mask-image:radial-gradient(ellipse at 50% 46%,#000 0%,#000 52%,transparent 88%);
}
.wavy-grid svg {
  display:block;
  width:104%;
  height:104%;
  margin:-2% 0 0 -2%;
  fill:none;
  stroke:rgba(164,154,255,.72);
  stroke-width:1;
  vector-effect:non-scaling-stroke;
  animation:novaeraWavyGrid 18s ease-in-out infinite alternate;
}
@keyframes novaeraWavyGrid {
  from { transform:translate3d(-1.2%,.4%,0) scale(1.015); }
  to { transform:translate3d(1.2%,-.5%,0) scale(1.03); }
}
.hero-signal {
  width:max-content;
  height:auto;
  padding:8px 14px;
  display:flex;
  align-items:center;
  gap:7px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:999px;
  background:var(--accent);
  color:#ffe066;
  font-family:"Space Grotesk",Manrope,Arial,sans-serif;
  font-size:10px;
  font-weight:700;
  letter-spacing:.16em;
  line-height:1;
  text-transform:uppercase;
  white-space:nowrap;
}
.hero-signal svg {
  width:14px;
  height:14px;
  flex:0 0 14px;
  fill:#ffe066;
}
.section-hero .hero-signal {
  position:absolute;
  top:136px;
  left:50%;
  z-index:1;
  color:var(--white);
  transform:translateX(-50%);
}
.section-hero .hero-signal-dynamic {
  display:inline;
  white-space:nowrap;
}
.section-hero .hero-signal-dynamic-value {
  color:#ffe066;
  font-weight:800;
  white-space:nowrap;
}
.section-hero .hero-signal-dynamic-value::after {
  content:"|";
  display:inline-block;
  animation:heroSignalCursor .9s steps(1,end) infinite;
}
@keyframes heroSignalCursor {
  0%,49% { opacity:1; }
  50%,100% { opacity:0; }
}
.section-hero h1 {
  max-width:820px;
  margin:0 auto;
  color:var(--white);
  font-family:"Space Grotesk",Manrope,Arial,sans-serif;
  font-size:clamp(50px,5.2vw,72px);
  font-weight:700;
  line-height:.98;
  letter-spacing:-.06em;
  text-wrap:balance;
  text-shadow:0 4px 30px rgba(0,0,0,.28);
}
.section-hero h1 strong { color:var(--accent); font-weight:700; }
.section-hero .hero-bottom {
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:32px;
  margin-top:48px;
}
.section-hero p {
  max-width:620px;
  margin:0 auto;
  color:var(--muted);
  font-size:18px;
  line-height:1.72;
  text-wrap:pretty;
}
.actions { display:flex; justify-content:center; gap:12px; }

/* ========================================
   SECTION — PROJECTS
======================================== */
.section-projects {
  background:var(--white);
  border:0;
}
.section-projects-wrap { padding:52px 0 52px 0; }
.section-projects .section-projects-signal {
  position:relative;
  top:auto;
  left:auto;
  margin:0 0 22px;
  transform:none;
}
.section-projects-intro {
  max-width:800px;
  margin:0 0 42px;
}
.section-projects-intro h2 {
  margin:0;
  color:var(--dark-ink);
  font-family:"Space Grotesk",Manrope,Arial,sans-serif;
  font-size:clamp(36px,4.2vw,56px);
  font-weight:700;
  line-height:1.2;
  letter-spacing:-.055em;
}
.section-projects-intro h2 .accent { color:var(--accent); }
.section-projects-intro p {
  max-width:650px;
  margin:40px 0 0;
  color:var(--dark-muted);
  font-size:16px;
  line-height:1.65;
}
.section-projects .section-projects-wrap { position:relative; z-index:1; }
html.js .section-projects .section-projects-signal,
html.js .section-projects-intro h2,
html.js .section-projects-intro p {
  opacity:0;
  transform:translateY(28px);
  transition:opacity .72s ease,transform .72s cubic-bezier(.22,.61,.36,1);
}
html.js .section-projects.is-visible .section-projects-signal,
html.js .section-projects.is-visible .section-projects-intro h2,
html.js .section-projects.is-visible .section-projects-intro p {
  opacity:1;
  transform:none;
}
html.js .section-projects.is-visible .section-projects-intro h2 { transition-delay:.12s; }
html.js .section-projects.is-visible .section-projects-intro p { transition-delay:.24s; }
html.js .section-projects .section-projects-signal { transform:translateX(-16px); }
html.js .section-projects .section-projects-intro h2 { transform:translateY(24px) scale(.98); }
html.js .section-projects .section-projects-intro p { transform:translateY(16px); }
.project-showcase {
  display:flex;
  flex-direction:column;
  gap:180px;
  margin:34px 0 0;
  padding:20px 0 86px;
}
.project-window {
  position:relative;
  position:-webkit-sticky;
  position:sticky;
  top:104px;
  z-index:1;
  --project-rotate:0deg;
  width:100%;
  max-width:1120px;
  min-width:0;
  margin:0 auto;
  overflow:hidden;
  border:1px solid rgba(15,1,71,.16);
  border-radius:20px;
  background:#f6f7fb;
  box-shadow:none;
  transform-origin:center bottom;
  transform:translateY(0) rotate(var(--project-rotate));
}
.project-window-one { z-index:1; --project-rotate:-1.2deg; }
.project-window-two { z-index:2; --project-rotate:0deg; }
.project-window-three { z-index:3; --project-rotate:1.2deg; }
.project-window-bar {
  position:relative;
  display:flex;
  height:34px;
  align-items:center;
  justify-content:center;
  border-bottom:1px solid rgba(15,1,71,.1);
  background:#eef0f5;
  color:rgba(15,1,71,.52);
  font-family:Manrope,Arial,sans-serif;
  font-size:10px;
  font-weight:700;
  letter-spacing:.02em;
}
.project-window-bar a {
  display:flex;
  align-items:center;
  width:min(84%,calc(100% - 108px));
  gap:6px;
  padding:6px 14px;
  border-radius:14px;
  background-color:#fff;
  color:inherit;
  text-align:left;
}
.project-window-lock {
  width:12px;
  height:12px;
  flex:0 0 12px;
  fill:none;
  stroke:#39d98a;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.8;
}
.project-window-dots {
  position:absolute;
  left:12px;
  display:flex;
  gap:5px;
}
.project-window-dots i {
  display:block;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#ff605c;
}
.project-window-dots i:nth-child(2) { background:#ffbd44; }
.project-window-dots i:nth-child(3) { background:#00ca4e; }
.project-window-preview {
  height:clamp(180px,42vw,520px);
  overflow-x:hidden;
  overflow-y:auto;
  background:#fff;
  scrollbar-width:thin;
  scrollbar-color:rgba(15,1,71,.38) transparent;
}
.project-window-preview::-webkit-scrollbar { width:8px; }
.project-window-preview::-webkit-scrollbar-track { background:transparent; }
.project-window-preview::-webkit-scrollbar-thumb {
  border:2px solid transparent;
  border-radius:999px;
  background:rgba(15,1,71,.38);
  background-clip:padding-box;
}
.project-window-preview img {
  display:block;
  width:100%;
  height:auto;
  min-height:100%;
}
html.js .section-projects .project-window {
  opacity:0;
  transform:translateY(48px) rotate(var(--project-rotate));
  transition:opacity .72s ease,transform .72s cubic-bezier(.22,.61,.36,1);
}
html.js .section-projects.is-visible .project-window {
  opacity:1;
  transform:translateY(0) rotate(var(--project-rotate));
}
html.js .section-projects.is-visible .project-window-one { transition-delay:.38s; }
html.js .section-projects.is-visible .project-window-two { transition-delay:.50s; }
html.js .section-projects.is-visible .project-window-three { transition-delay:.62s; }

/* Shared sections and headings */
section.block {
  position:relative;
  padding:112px 0;
  isolation:isolate;
}
section.block::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  opacity:.26;
  pointer-events:none;
  background-image:linear-gradient(rgba(218,211,255,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(218,211,255,.1) 1px,transparent 1px);
  background-size:56px 56px;
  mask-image:linear-gradient(to bottom,transparent,black 16%,black 84%,transparent);
}
section.block > * { position:relative; z-index:1; }
.sectionhead {
  max-width:800px;
  margin:0 auto 52px;
  text-align:center;
}
.sectionhead h2 {
  margin:0;
  color:var(--page-deep);
  font-size:clamp(44px,5vw,66px);
  font-weight:500;
  line-height:1.05;
  letter-spacing:-.052em;
  text-wrap:balance;
}
.sectionhead p {
  max-width:610px;
  margin:27px auto 0;
  color:var(--page-deep);
  font-size:16px;
  line-height:1.7;
  text-wrap:pretty;
}
section.block.section-testimonials {
  background:var(--page-deep);
  padding-top:72px;
}
.section-testimonials-head {
  max-width:800px;
  margin:0 0 30px;
  text-align:left;
}
.section-testimonials-signal { margin-bottom:28px; }
.section-testimonials-head h2 {
  margin:0;
  color:var(--text);
  font-family:"Space Grotesk",Manrope,Arial,sans-serif;
  font-size:clamp(42px,5vw,64px);
  font-weight:700;
  line-height:1.04;
  letter-spacing:-.055em;
}
.section-testimonials-head h2 .accent { color:var(--accent); }
.section-testimonials-head p {
  max-width:620px;
  margin:24px 0 0;
  color:var(--muted);
  font-size:16px;
  line-height:1.7;
}
html.js .section-testimonials .section-testimonials-signal,
html.js .section-testimonials-head h2,
html.js .section-testimonials-head p,
html.js .section-testimonials .testimonial-carousel-button,
html.js .section-testimonials .testimonial-carousel-dots,
html.js .section-testimonials .testimonial-card {
  opacity:0;
  transform:translateY(28px);
  transition:opacity .72s ease,transform .72s cubic-bezier(.22,.61,.36,1);
}
html.js .section-testimonials.is-visible .section-testimonials-signal,
html.js .section-testimonials.is-visible .section-testimonials-head h2,
html.js .section-testimonials.is-visible .section-testimonials-head p,
html.js .section-testimonials.is-visible .testimonial-carousel-button,
html.js .section-testimonials.is-visible .testimonial-carousel-dots,
html.js .section-testimonials.is-visible .testimonial-card {
  opacity:1;
  transform:none;
}
html.js .section-testimonials.is-visible .section-testimonials-head h2 { transition-delay:.12s; }
html.js .section-testimonials.is-visible .section-testimonials-head p { transition-delay:.24s; }
html.js .section-testimonials.is-visible .testimonial-carousel-button { transition-delay:.32s; }
html.js .section-testimonials.is-visible .testimonial-carousel-dots { transition-delay:.36s; }
html.js .section-testimonials.is-visible .testimonial-card:nth-child(1) { transition-delay:.42s; }
html.js .section-testimonials.is-visible .testimonial-card:nth-child(2) { transition-delay:.54s; }
html.js .section-testimonials.is-visible .testimonial-card:nth-child(3) { transition-delay:.66s; }
html.js .section-testimonials .section-testimonials-signal { transform:translateX(-16px); }
html.js .section-testimonials .section-testimonials-head h2 { transform:translateY(20px) scale(.98); }
html.js .section-testimonials .section-testimonials-head p { transform:translateY(14px); }
html.js .section-testimonials .testimonial-carousel-button { transform:translateY(-10px); }
html.js .section-testimonials .testimonial-carousel-dots { transform:scale(.8); }
html.js .section-testimonials .testimonial-card { transform:translateY(26px) scale(.97); }
.testimonial-carousel {
  position:relative;
  min-width:0;
}
.testimonial-carousel-body {
  position:relative;
  min-width:0;
}
.testimonial-grid {
  display:flex;
  gap:16px;
  overflow-x:auto;
  padding:4px 2px 18px;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  cursor:grab;
}
.testimonial-grid:active { cursor:grabbing; }
.testimonial-grid::-webkit-scrollbar { display:none; }
.testimonial-carousel-button {
  position:absolute;
  top:50%;
  z-index:4;
  display:grid;
  width:42px;
  height:42px;
  place-items:center;
  border:1px solid rgba(255,255,255,.1);
  border-radius:50%;
  background:var(--page-deep);
  color:var(--white);
  padding:0;
  appearance:none;
  -webkit-appearance:none;
  line-height:0;
  cursor:pointer;
  transform:translateY(-50%);
  transition:background .2s ease,border-color .2s ease,transform .2s ease;
}
.testimonial-carousel-button[hidden] { display:none; }
.testimonial-carousel-button:hover {
  border-color:rgba(164,154,255,.55);
  background:var(--accent);
  transform:translateY(-50%) scale(1.05);
}
.testimonial-carousel-button svg {
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.8;
}
.testimonial-carousel-prev { left:12px; }
.testimonial-carousel-next { right:12px; }
.testimonial-carousel-dots {
  display:flex;
  justify-content:center;
  gap:7px;
  margin-top:17px;
}
.testimonial-carousel-dots span {
  display:block;
  width:8px;
  height:8px;
  border-radius:99px;
  background:rgba(255,255,255,.28);
  transition:width .2s ease,background .2s ease;
}
.testimonial-carousel-dots span.is-active {
  width:24px;
  background:var(--accent-light);
}
.testimonial-card {
  flex:0 0 min(420px,calc(100% - 44px));
  scroll-snap-align:start;
  cursor:pointer;
}
.testimonial-card {
  position:relative;
  display:flex;
  min-height:200px;
  flex-direction:column;
  padding:30px 28px 26px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:20px;
  background:rgba(27,11,108,.72);
}
.testimonial-card-head {
  display:flex;
  min-width:0;
  align-items:center;
  gap:12px;
}
.testimonial-avatar {
  display:grid;
  width:46px;
  height:46px;
  flex:0 0 46px;
  place-items:center;
  border:1px solid rgba(164,154,255,.55);
  border-radius:50%;
  background:var(--accent);
  color:var(--white);
  font-family:"Space Grotesk",Manrope,Arial,sans-serif;
  font-size:18px;
  font-weight:700;
}
.testimonial-person {
  display:flex;
  min-width:0;
  flex:1;
  flex-direction:column;
  gap:5px;
}
.testimonial-person strong {
  overflow:hidden;
  color:var(--white);
  font-size:14px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.testimonial-person span {
  overflow:hidden;
  color:var(--muted);
  font-size:10px;
  letter-spacing:.04em;
  text-overflow:ellipsis;
  text-transform:uppercase;
  white-space:nowrap;
}
.testimonial-audio-icon {
  width:24px;
  height:24px;
  flex:0 0 24px;
  fill:none;
  stroke:var(--accent-light);
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.7;
}
.testimonial-player {
  display:flex;
  min-height:54px;
  align-items:center;
  gap:12px;
  padding:10px 12px;
  border:1px solid rgba(164,154,255,.2);
  border-radius:14px;
  background:rgba(8,0,47,.5);
  margin-top:auto;
}
.testimonial-play {
  display:grid;
  width:32px;
  height:32px;
  flex:0 0 32px;
  place-items:center;
  border:0;
  border-radius:50%;
  background:var(--accent-light);
  color:var(--dark-ink);
  font-size:11px;
  font-family:inherit;
  line-height:1;
  padding:0;
  appearance:none;
  -webkit-appearance:none;
  cursor:pointer;
}
.testimonial-play-icon {
  width:14px;
  height:14px;
  fill:currentColor;
}
.testimonial-play-icon-pause { display:none; }
.testimonial-play.is-playing .testimonial-play-icon-play { display:none; }
.testimonial-play.is-playing .testimonial-play-icon-pause { display:block; }
.testimonial-audio { display:none; }
.testimonial-wave {
  display:flex;
  height:24px;
  flex:1;
  min-width:0;
  align-items:center;
  justify-content:space-between;
  gap:3px;
}
.testimonial-wave i {
  display:block;
  width:3px;
  min-width:3px;
  height:9px;
  flex:0 0 3px;
  border-radius:2px;
  background:var(--accent-light);
  opacity:.65;
}
.testimonial-wave i:nth-child(2n) { height:16px; opacity:.9; }
.testimonial-wave i:nth-child(3n) { height:22px; }
.testimonial-time {
  color:var(--muted);
  font-size:11px;
  font-variant-numeric:tabular-nums;
}

/* Benefits marquee */
.section-benefits-marquee {
  position:relative;
  display:flex;
  width:100%;
  height:68px;
  align-items:center;
  overflow:hidden;
  border-top:1px solid rgba(255,255,255,.1);
  border-bottom:1px solid rgba(255,255,255,.1);
  background:#0f0147;
}
.section-benefits-marquee-viewport {
  width:100%;
  overflow:hidden;
  mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent);
  -webkit-mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent);
}
.section-benefits-marquee-track {
  display:flex;
  width:max-content;
  will-change:transform;
  animation:section-benefits-marquee-scroll 40s linear infinite;
}
.section-benefits-marquee-group {
  display:flex;
  flex:0 0 auto;
  align-items:center;
  gap:34px;
  padding-right:34px;
}
.section-benefits-marquee-item {
  display:inline-flex;
  flex:0 0 auto;
  align-items:center;
  gap:10px;
  color:var(--text);
  font-family:"Space Grotesk",Manrope,Arial,sans-serif;
  font-size:13px;
  font-weight:700;
  letter-spacing:.08em;
  line-height:1;
  white-space:nowrap;
}
.section-benefits-marquee-item-icon {
  width:19px;
  height:19px;
  flex:0 0 19px;
  fill:none;
  stroke:#ffe066;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.7;
}
.section-benefits-marquee-separator {
  display:inline-flex;
  width:14px;
  height:14px;
  flex:0 0 14px;
  align-items:center;
  justify-content:center;
}
.section-benefits-marquee-separator svg {
  width:12px;
  height:12px;
  fill:none;
  stroke:rgba(255,224,102,.55);
  stroke-linecap:round;
  stroke-width:1.4;
}
@keyframes section-benefits-marquee-scroll {
  from { transform:translate3d(-50%,0,0); }
  to { transform:translate3d(0,0,0); }
}

/* ========================================
   SECTION — OFFER
======================================== */
.section-offer {
  position:relative;
  background:var(--white);
}
section.block.section-offer::before { display:none; }
.section-offer > .wavy-grid {
  display:none;
}
.section-offer > .shell {
  position:relative;
  z-index:1;
}
.section-offer-head {
  max-width:800px;
  margin:0 0 52px;
  text-align:left;
}
.section-offer-signal { margin-bottom:28px; }
.section-offer-head p { margin-left:0; margin-right:0; }
.section-offer-head h2,
.section-process .sectionhead h2 {
  font-family:"Space Grotesk",Manrope,Arial,sans-serif;
  font-size:clamp(42px,5vw,64px);
  font-weight:700;
  line-height:1.04;
  letter-spacing:-.055em;
}
.section-offer-head h2 .accent { color:var(--accent); }
.section-offer .plans {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:32px;
  max-width:1180px;
  margin:0 auto;
  align-items:stretch;
}
.section-offer .plan {
  position:relative;
  display:flex;
  min-width:0;
  height:100%;
  flex-direction:column;
  padding:34px 24px 26px;
  overflow:visible;
  border:1px solid rgba(15,1,71,.12);
  border-radius:24px;
  background:#f6f7fb;
  box-shadow:0 14px 36px rgba(15,1,71,.06);
  transition:transform .25s ease,box-shadow .25s ease;
}
.section-offer .plan.featured {
  border:1px solid var(--accent-light);
  background:var(--page);
  box-shadow:0 18px 42px rgba(15,1,71,.16);
}
.section-offer .plan-badge {
  position:absolute;
  top:0;
  left:24px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:7px 11px;
  border-radius:999px;
  background:var(--accent);
  color:var(--white);
  font-family:"Space Grotesk",Manrope,Arial,sans-serif;
  font-size:10px;
  font-weight:700;
  letter-spacing:.12em;
  line-height:1;
  text-transform:uppercase;
  transform:translateY(-50%);
}
.section-offer .plan-badge-icon {
  width:14px;
  height:14px;
  flex:0 0 14px;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.7;
}
.section-offer .plan-header {
  min-height:158px;
}
.section-offer .plan h3 {
  display:flex;
  align-items:center;
  gap:10px;
  margin:0;
  color:var(--dark-ink);
  font-family:"Space Grotesk",Manrope,Arial,sans-serif;
  font-size:clamp(22px,1.8vw,27px);
  font-weight:700;
  line-height:1.08;
  letter-spacing:-.03em;
}
.section-offer .plan-title-icon {
  width:24px;
  height:24px;
  flex:0 0 24px;
  margin-top:2px;
  fill:none;
  stroke:var(--accent);
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.7;
}
.section-offer .plan.featured h3 { color:var(--text); }
.section-offer .plan.featured .plan-title-icon { stroke:var(--accent-light); }
.section-offer .plan-description {
  min-height:68px;
  margin:26px 0 18px;
  color:var(--dark-muted);
  font-size:14px;
  line-height:1.6;
  text-wrap:pretty;
}
.section-offer .plan.featured .plan-description { color:rgba(246,248,255,.72); }
.section-offer .plan-specific { min-height:160px; }
.section-offer .features {
  margin:0;
  padding:0;
  list-style:none;
}
.section-offer .plan-specific .features {
  border-top:1px solid rgba(15,1,71,.14);
  padding:18px 0;
}
.section-offer .plan.featured .plan-specific .features { border-color:rgba(246,248,255,.2); }
.section-offer .features li {
  display:flex;
  align-items:center;
  gap:10px;
  padding:9px 0;
  color:var(--dark-ink);
  font-size:14px;
  line-height:1.5;
}
.section-offer .plan.featured .features li { color:rgba(246,248,255,.8); }
.section-offer .tick {
  display:grid;
  width:17px;
  height:17px;
  flex:none;
  place-items:center;
  border-radius:50%;
  background:var(--accent);
}
.section-offer .tick svg { width:10px; height:10px; fill:none; stroke:var(--white); stroke-width:2; }
.section-offer .plan-general {
  min-height:246px;
  padding-top:24px;
  border-top:1px solid rgba(15,1,71,.14);
}
.section-offer .plan.featured .plan-general,
.section-offer .plan-footer { border-color:rgba(15,1,71,.14); }
.section-offer .plan.featured .plan-general { border-color:rgba(246,248,255,.2); }
.section-offer .plan-general h4 {
  margin:0 0 14px;
  color:var(--dark-ink);
  font-size:14px;
  font-weight:700;
  letter-spacing:.14em;
  line-height:1.2;
}
.section-offer .plan.featured .plan-general h4 { color:var(--accent-light); }
.section-offer .plan-footer {
  margin-top:auto;
  padding-top:24px;
}
.section-offer .plan-deadline {
  display:flex;
  align-items:center;
  gap:6px;
  margin:0 0 34px;
  color:var(--dark-muted);
  font-size:15px;
  line-height:1.3;
}
.section-offer .plan-deadline-label {
  display:flex;
  align-items:center;
  gap:7px;
  color:var(--dark-ink);
  font-size:13px;
  font-weight:700;
  letter-spacing:.02em;
  text-transform:none;
}
.section-offer .plan-deadline-label svg {
  width:18px;
  height:18px;
  flex:0 0 18px;
  fill:none;
  stroke:#39d98a;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.7;
}
.section-offer .plan-deadline strong { font-size:15px; font-weight:700; }
.section-offer .plan.featured .plan-deadline { color:rgba(246,248,255,.72); }
.section-offer .plan.featured .plan-deadline-label { color:var(--accent-light); }
.section-offer .plan .button,
.section-offer .plan .button .btn {
  width:max-content;
  max-width:100%;
}
.section-offer .plan .button {
  display:block;
  margin-right:auto;
  margin-left:auto;
}
.section-offer .plan .button .btn { min-width:215px; }
.section-offer .plan .button .btn { padding:0 46px 0 18px; gap:0; }

html.js .section-offer .section-offer-signal,
html.js .section-offer-head h2,
html.js .section-offer-head p,
html.js .section-offer .plan {
  opacity:0;
  transform:translateY(28px);
  transition:opacity .72s ease,transform .72s cubic-bezier(.22,.61,.36,1),box-shadow .25s ease;
}
html.js .section-offer.is-visible .section-offer-signal,
html.js .section-offer.is-visible .section-offer-head h2,
html.js .section-offer.is-visible .section-offer-head p,
html.js .section-offer.is-visible .plan {
  opacity:1;
  transform:none;
}
html.js .section-offer.is-visible .section-offer-head h2 { transition-delay:.12s; }
html.js .section-offer.is-visible .section-offer-head p { transition-delay:.24s; }
html.js .section-offer.is-visible .plan:nth-child(1) { transition-delay:.40s; }
html.js .section-offer.is-visible .plan:nth-child(2) { transition-delay:.52s; }
html.js .section-offer.is-visible .plan:nth-child(3) { transition-delay:.64s; }
html.js .section-offer.is-visible .plan:nth-child(4) { transition-delay:.76s; }
html.js .section-offer .section-offer-signal { transform:translateX(-16px); }
html.js .section-offer .section-offer-head h2 { transform:translateY(20px) scale(.98); }
html.js .section-offer .section-offer-head p { transform:translateY(14px); }
html.js .section-offer .plan { transform:translateY(30px) scale(.97); }

@media (min-width:821px) {
  .section-offer .plan:hover {
    transform:translateY(-6px);
    box-shadow:0 22px 46px rgba(15,1,71,.14);
  }
  .section-offer .plan.featured:hover {
    box-shadow:0 26px 54px rgba(15,1,71,.24);
  }
}

/* ========================================
   SECTION — PROCESS
======================================== */
.section-process {
  background:radial-gradient(ellipse at center,rgba(164,154,255,.18) 0%,rgba(15,1,71,0) 68%),var(--page);
}
.section-process .sectionhead {
  margin:0 0 52px;
  text-align:left;
}
.section-process .sectionhead h2 { color:var(--text); }
.section-process .sectionhead h2 .accent { color:var(--accent); }
.section-process .sectionhead p {
  margin-left:0;
  margin-right:0;
  color:var(--muted);
}
.section-process-signal { margin:0 0 28px; }
.section-process .process {
  display:grid;
  grid-template-columns:1fr;
  gap:24px;
}
.section-process .step {
  position:relative;
  display:grid;
  grid-template-columns:72px minmax(190px,.8fr) minmax(0,1fr) 48px;
  column-gap:24px;
  align-items:center;
  min-width:0;
  min-height:auto;
  padding:14px 20px;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:18px;
  background:rgba(27,11,108,.62);
  transition:background .25s ease,border-radius .25s ease;
  cursor:pointer;
}
.section-process .step:hover {
  background:rgba(164,154,255,.09);
  border-radius:18px;
}
.section-process .step > span {
  display:grid;
  width:56px;
  height:56px;
  place-items:center;
  border-radius:50%;
  background:rgba(164,154,255,.1);
  color:#ffcc00;
  font-size:16px;
  font-weight:700;
  line-height:1;
  transition:background .25s ease,color .25s ease;
}
.section-process .step:hover > span {
  color:var(--white);
}
.section-process .process-step-icon {
  display:block;
  width:38px;
  height:38px;
  justify-self:end;
  margin:0;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.5;
  color:var(--accent-light);
  opacity:.34;
  pointer-events:none;
  transition:color .25s ease,opacity .25s ease;
}
.section-process .process-step-icon-filled {
  fill:currentColor;
  stroke:none;
}
.section-process .step:hover .process-step-icon {
  color:#ffcc00;
  opacity:1;
}
.section-process .step h3 { margin:0; color:#f5f7ff; font-size:18px; font-weight:600; line-height:1.25; }
.section-process .step p { margin:0; color:#9da9c2; font-size:13px; line-height:1.7; text-wrap:pretty; }
html.js .section-process .section-process-signal,
html.js .section-process .sectionhead h2,
html.js .section-process .sectionhead p,
html.js .section-process .step {
  opacity:0;
  transform:translateY(24px);
  transition:opacity .68s ease,transform .68s cubic-bezier(.22,.61,.36,1);
}
html.js .section-process.is-visible .section-process-signal,
html.js .section-process.is-visible .sectionhead h2,
html.js .section-process.is-visible .sectionhead p,
html.js .section-process.is-visible .step {
  opacity:1;
  transform:none;
}
html.js .section-process.is-visible .sectionhead h2 { transition-delay:.12s; }
html.js .section-process.is-visible .sectionhead p { transition-delay:.24s; }
html.js .section-process.is-visible .step:nth-child(1) { transition-delay:.40s; }
html.js .section-process.is-visible .step:nth-child(2) { transition-delay:.52s; }
html.js .section-process.is-visible .step:nth-child(3) { transition-delay:.64s; }
html.js .section-process.is-visible .step:nth-child(4) { transition-delay:.76s; }
html.js .section-process.is-visible .step:nth-child(5) { transition-delay:.88s; }
html.js .section-process .section-process-signal { transform:translateX(-16px); }
html.js .section-process .sectionhead h2 { transform:translateX(-20px); }
html.js .section-process .sectionhead p { transform:translateY(16px); }
html.js .section-process .step { transform:translateX(-26px); }

/* ========================================
   SECTION — PERFORMANCE PROOF
======================================== */
.section-performance {
  padding:0;
  background:var(--white);
}
section.block.section-performance {
  padding:24px 0;
}
.section-performance::before { display:none; }
.section-performance > .shell {
  width:100%;
}
section.block.section-performance::before,
section.block.section-performance::after {
  content:"";
  position:absolute;
  right:0;
  left:0;
  z-index:2;
  display:block;
  height:3px;
  opacity:.95;
  pointer-events:none;
  background-repeat:no-repeat;
  background-size:220% 3px;
}
section.block.section-performance::before {
  top:0;
  background-image:linear-gradient(90deg,transparent 0 40%,var(--accent) 50%,transparent 60%);
  background-position:-110% 0;
  animation:performanceTopLight 4.8s linear infinite;
}
section.block.section-performance::after {
  bottom:0;
  background-image:linear-gradient(90deg,transparent 0 40%,var(--accent-light) 50%,transparent 60%);
  background-position:110% 0;
  animation:performanceBottomLight 4.8s linear infinite;
}
.performance-proof {
  position:relative;
  display:flex;
  align-items:center;
  gap:56px;
  overflow:hidden;
  padding:0 max(28px,calc((100vw - 1180px)/2));
  border-radius:0;
  background-color:var(--white);
  background-image:radial-gradient(circle at 100% -30%,transparent 0 130px,rgba(91,95,232,.16) 131px 132px,transparent 133px 148px,rgba(91,95,232,.09) 149px 150px,transparent 151px),linear-gradient(125deg,transparent 0 82%,rgba(164,154,255,.08) 82.2%,transparent 82.6%);
  background-clip:padding-box;
  box-shadow:none;
}
.performance-proof::before {
  display:none;
}
.performance-proof::after {
  display:none;
}
.performance-proof > * { position:relative; z-index:1; }
html.js .section-performance .performance-score,
html.js .section-performance .performance-content {
  opacity:0;
  transform:translateY(24px);
  transition:opacity .68s ease,transform .68s cubic-bezier(.22,.61,.36,1);
}
html.js .section-performance.is-visible .performance-score,
html.js .section-performance.is-visible .performance-content {
  opacity:1;
  transform:none;
}
html.js .section-performance.is-visible .performance-content { transition-delay:.18s; }
html.js .section-performance .performance-score { transform:scale(.86) rotate(-4deg); }
html.js .section-performance .performance-content { transform:translateX(28px); }
@keyframes performanceTopLight {
  from { background-position:-110% 0; }
  to { background-position:110% 0; }
}
@keyframes performanceBottomLight {
  from { background-position:110% 0; }
  to { background-position:-110% 0; }
}
.performance-score {
  position:relative;
  display:flex;
  flex:0 0 auto;
  width:150px;
  height:auto;
}
.performance-score svg {
  display:block;
  width:150px;
  height:83px;
  overflow:visible;
}
.performance-score-track,
.performance-score-progress {
  fill:none;
  stroke-linecap:round;
  stroke-width:12;
}
.performance-score-track { stroke:rgba(15,1,71,.14); }
.performance-score-progress {
  stroke:var(--accent);
  stroke-dasharray:216.77;
  stroke-dashoffset:2.17;
}
.performance-score-label {
  position:absolute;
  right:0;
  bottom:-10px;
  left:0;
  top:auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:4px;
  transform:none;
}
.performance-score-label strong {
  color:var(--accent);
  font-family:"Space Grotesk",Manrope,Arial,sans-serif;
  font-size:44px;
  font-weight:700;
  letter-spacing:-.04em;
  line-height:1;
}
.performance-score-label span,
.performance-kicker,
.performance-metric > div span {
  color:rgba(15,1,71,.56);
  font-family:"Space Grotesk",Manrope,Arial,sans-serif;
  font-size:10px;
  font-weight:700;
  letter-spacing:.14em;
  line-height:1;
  text-transform:uppercase;
}
.performance-content { min-width:0; flex:1; }
.performance-kicker {
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:rgba(15,1,71,.62);
}
.performance-kicker i {
  display:block;
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--accent);
}
.performance-content h2 {
  margin:17px 0 0;
  color:var(--dark-ink);
  font-family:"Space Grotesk",Manrope,Arial,sans-serif;
  font-size:clamp(24px,2.5vw,34px);
  font-weight:700;
  letter-spacing:-.045em;
  line-height:1.08;
}
.performance-content h2 span {
  color:var(--accent);
  font-weight:500;
}
.performance-content > p {
  max-width:610px;
  margin:13px 0 0;
  color:var(--dark-muted);
  font-size:14px;
  line-height:1.65;
}
.performance-metrics {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:28px;
  max-width:660px;
  margin-top:26px;
}
.performance-metric > div {
  display:flex;
  align-items:baseline;
  gap:10px;
}
.performance-metric > div strong {
  color:var(--accent);
  font-family:"Space Grotesk",Manrope,Arial,sans-serif;
  font-size:20px;
  font-weight:700;
  letter-spacing:-.02em;
  line-height:1;
}
.performance-metric small {
  display:block;
  margin-top:7px;
  color:rgba(15,1,71,.56);
  font-size:11px;
  line-height:1.35;
}

@media (min-width:821px) {
  .performance-proof {
    justify-content:center;
    padding-right:28px;
    padding-left:28px;
  }
  .performance-content {
    flex:0 1 660px;
  }
}

/* ========================================
   SECTION — MARKET STUDY
======================================== */
.section-market-study {
  overflow:hidden;
  background:var(--page);
  color:var(--text);
}
.section-market-study::before {
  opacity:.8;
  background-image:linear-gradient(rgba(218,211,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(218,211,255,.08) 1px,transparent 1px);
  background-size:96px 96px;
  mask-image:linear-gradient(to right,transparent,#000 50%,transparent),linear-gradient(to bottom,transparent,#000 50%,transparent);
  -webkit-mask-image:linear-gradient(to right,transparent,#000 50%,transparent),linear-gradient(to bottom,transparent,#000 50%,transparent);
  mask-composite:intersect;
  -webkit-mask-composite:source-in;
}
.section-market-study > .shell { position:relative; z-index:1; }
.section-market-study-head {
  max-width:800px;
  margin:0 0 52px;
  text-align:left;
}
.section-market-study-kicker {
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:999px;
  background:var(--accent);
  color:#ffe066;
  font-family:"Space Grotesk",Manrope,Arial,sans-serif;
  font-size:10px;
  font-weight:700;
  letter-spacing:.15em;
  line-height:1;
  text-transform:uppercase;
}
.section-market-study-kicker svg {
  width:14px;
  height:14px;
  fill:none;
  stroke:#ffe066;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:2.2;
}
.section-market-study-head h2 {
  max-width:800px;
  margin:24px 0 0;
  color:var(--white);
  font-family:"Space Grotesk",Manrope,Arial,sans-serif;
  font-size:clamp(34px,4.5vw,60px);
  font-weight:700;
  letter-spacing:-.055em;
  line-height:1.03;
  text-wrap:balance;
}
.section-market-study-head h2 span { color:var(--accent); font-weight:500; }
.section-market-study-head > p {
  max-width:620px;
  margin:20px 0 0;
  color:var(--muted);
  font-size:16px;
  line-height:1.7;
}
.market-study-table-wrap {
  overflow:hidden;
  border:1px solid rgba(15,1,71,.08);
  border-radius:24px;
  background:var(--white);
  box-shadow:0 24px 55px rgba(3,0,24,.28);
}
.market-study-toolbar {
  display:flex;
  align-items:center;
  gap:14px;
  padding:14px 18px;
  background:#f5f6fa;
}
.market-study-search {
  display:flex;
  min-width:0;
  flex:1;
  align-items:center;
  gap:9px;
  padding:10px 12px;
  border-radius:9px;
  background:var(--white);
  color:var(--dark-ink);
  font-size:13px;
}
.market-study-search svg {
  width:15px;
  height:15px;
  flex:0 0 15px;
  fill:none;
  stroke:var(--accent);
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:2;
}
.market-study-search span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.market-study-example,
.market-study-table-head,
.market-study-summary > div > span,
.market-study-point > div span {
  font-family:"Space Grotesk",Manrope,Arial,sans-serif;
  font-size:10px;
  font-weight:700;
  letter-spacing:.12em;
  line-height:1;
  text-transform:uppercase;
}
.market-study-example {
  display:inline-flex;
  flex:0 0 auto;
  align-items:center;
  gap:7px;
  padding:8px 10px;
  border-radius:999px;
  background:rgba(91,95,232,.1);
  color:var(--accent);
}
.market-study-example i,
.market-study-intent i { display:block; width:6px; height:6px; border-radius:50%; background:currentColor; }
.market-study-table-head,
.market-study-row {
  display:grid;
  grid-template-columns:minmax(0,1fr) 100px 90px 94px;
  align-items:center;
  gap:28px;
  padding:12px 24px;
}
.market-study-table-head { color:rgba(15,1,71,.48); font-weight:700; }
.market-study-table-head span:not(:first-child),
.market-study-row > span { text-align:right; }
.market-study-row {
  min-height:68px;
  border-top:1px solid #edf0f5;
  color:var(--dark-ink);
  font-size:13px;
}
.market-study-row.is-highlight { background:rgba(91,95,232,.045); }
.market-study-row > div { min-width:0; }
.market-study-row strong { display:block; overflow:hidden; font-size:14px; font-weight:600; text-overflow:ellipsis; white-space:nowrap; }
.market-study-bar { display:block; max-width:300px; height:5px; margin-top:9px; overflow:hidden; border-radius:99px; background:#edf0f5; }
.market-study-bar i { display:block; height:100%; border-radius:inherit; background:var(--accent); }
.market-study-bar i.is-24 { width:24%; }
.market-study-bar i.is-32 { width:32%; }
.market-study-bar i.is-44 { width:44%; }
.market-study-bar i.is-68 { width:68%; }
.market-study-bar i.is-100 { width:100%; }
.market-study-intent { display:inline-flex; align-items:center; justify-content:flex-end; gap:7px; color:rgba(15,1,71,.48); font-size:11px; font-weight:600; text-transform:lowercase; }
.market-study-intent.is-high { color:var(--accent); }
.market-study-summary { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:20px 24px; background:rgba(91,95,232,.07); }
.market-study-summary > div > span { display:block; color:rgba(15,1,71,.48); }
.market-study-summary strong { display:flex; align-items:baseline; gap:6px; margin-top:7px; color:var(--dark-ink); font-family:"Space Grotesk",Manrope,Arial,sans-serif; font-size:20px; font-weight:700; line-height:1; }
.market-study-summary > div:last-child { text-align:right; }
.market-study-summary > div:last-child strong { color:var(--accent); font-size:28px; }
.market-study-summary small { color:rgba(15,1,71,.5); font-family:Manrope,Arial,sans-serif; font-size:11px; font-weight:400; }
.market-study-summary svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:2.2; }
.market-study-points { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:18px; }
.market-study-point { padding:22px; border:1px solid var(--line); border-radius:18px; background:rgba(27,11,108,.62); transition:background .25s ease,border-color .25s ease,transform .25s ease; cursor:pointer; }
.market-study-point:hover { border-color:rgba(164,154,255,.55); background:rgba(36,17,124,.88); transform:translateY(-3px); }
.market-study-point > div { display:flex; align-items:center; gap:10px; color:var(--accent); }
.market-study-point > div svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; }
.market-study-point > div span { color:rgba(246,248,255,.46); }
.market-study-point h3 { margin:17px 0 8px; color:var(--white); font-size:17px; font-weight:700; line-height:1.15; }
.market-study-point p { margin:0; color:var(--muted); font-size:13px; line-height:1.65; }
.market-study-footer { display:flex; align-items:center; justify-content:space-between; gap:42px; margin-top:46px; }
.market-study-footer > div:first-child { max-width:760px; }
.market-study-footer h3 { margin:0; color:var(--white); font-family:"Space Grotesk",Manrope,Arial,sans-serif; font-size:clamp(24px,3vw,34px); font-weight:700; letter-spacing:-.04em; line-height:1.12; }
.market-study-footer h3 span { color:var(--accent); font-weight:500; }
.market-study-footer p { max-width:680px; margin:14px 0 0; color:var(--muted); font-size:14px; line-height:1.65; }
.market-study-footer .button {
  flex:0 0 auto;
  margin-left:auto;
  margin-right:auto;
}
.market-study-footer .button .btn {
  min-width:0;
  padding:0 46px 0 18px;
  gap:0;
  justify-content:center;
  text-align:center;
}
html.js .section-market-study .section-market-study-head,
html.js .section-market-study .market-study-table-wrap,
html.js .section-market-study .market-study-point,
html.js .section-market-study .market-study-footer {
  opacity:0;
  transform:translateY(24px);
  transition:opacity .68s ease,transform .68s cubic-bezier(.22,.61,.36,1);
}
html.js .section-market-study.is-visible .section-market-study-head,
html.js .section-market-study.is-visible .market-study-table-wrap,
html.js .section-market-study.is-visible .market-study-point,
html.js .section-market-study.is-visible .market-study-footer {
  opacity:1;
  transform:none;
}
html.js .section-market-study.is-visible .market-study-table-wrap { transition-delay:.16s; }
html.js .section-market-study.is-visible .market-study-point:nth-child(1) { transition-delay:.34s; }
html.js .section-market-study.is-visible .market-study-point:nth-child(2) { transition-delay:.46s; }
html.js .section-market-study.is-visible .market-study-point:nth-child(3) { transition-delay:.58s; }
html.js .section-market-study.is-visible .market-study-footer { transition-delay:.72s; }
html.js .section-market-study .section-market-study-head { transform:translateX(-20px); }
html.js .section-market-study .market-study-table-wrap { transform:translateY(24px) scale(.98); }
html.js .section-market-study .market-study-point { transform:translateY(28px) scale(.97); }
html.js .section-market-study .market-study-footer { transform:translateX(24px); }

/* ========================================
   SECTION — FAQ
======================================== */
.section-faq {
  overflow:visible;
  background:var(--accent);
  color:var(--dark-ink);
}
section.block.section-faq > .faq-wavy-grid {
  position:absolute;
  inset:0;
  z-index:0;
}
section.block.section-faq::before {
  opacity:.16;
  background-image:linear-gradient(rgba(15,1,71,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(15,1,71,.18) 1px,transparent 1px);
  background-size:96px 96px;
  mask-image:linear-gradient(to right,transparent,#000 50%,transparent),linear-gradient(to bottom,transparent,#000 50%,transparent);
  -webkit-mask-image:linear-gradient(to right,transparent,#000 50%,transparent),linear-gradient(to bottom,transparent,#000 50%,transparent);
  mask-composite:intersect;
  -webkit-mask-composite:source-in;
}
.section-faq .faq {
  display:grid;
  max-width:none;
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
  align-items:center;
  gap:clamp(42px,6vw,88px);
  margin:0 auto;
}
.section-faq-intro { min-width:0; }
@media (min-width:821px) {
  .section-faq-intro {
    position:sticky;
    top:110px;
    align-self:start;
  }
}
.section-faq-kicker {
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:7px;
  background:var(--page);
  color:#ffcc00;
  font-family:"Space Grotesk",Manrope,Arial,sans-serif;
  font-size:10px;
  font-weight:700;
  letter-spacing:.15em;
  line-height:1;
  text-transform:uppercase;
}
.section-faq-kicker svg {
  width:14px;
  height:14px;
  fill:none;
  stroke:var(--accent-light);
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:2.2;
}
.section-faq-intro h2 {
  max-width:520px;
  margin:24px 0 0;
  color:var(--white);
  font-family:"Space Grotesk",Manrope,Arial,sans-serif;
  font-size:clamp(38px,4.5vw,60px);
  font-weight:700;
  letter-spacing:-.055em;
  line-height:1.04;
  text-wrap:balance;
}
.section-faq-intro h2 span { display:block; }
.section-faq-intro h2 span:last-child { color:var(--page-deep); font-weight:500; }
.section-faq-intro > p {
  max-width:430px;
  margin:22px 0 0;
  color:var(--white);
  font-size:15px;
  line-height:1.7;
}
.section-faq-intro > .button { margin-top:28px; }
.section-faq-list {
  display:grid;
  gap:10px;
  min-width:0;
}
.section-faq .faqitem {
  margin:0;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  background:var(--page);
  box-shadow:0 8px 22px rgba(15,1,71,.1);
  transition:background .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.section-faq .faqitem:hover,
.section-faq .faqitem.open {
  border-color:rgba(164,154,255,.48);
  background:var(--page-deep);
  box-shadow:0 12px 28px rgba(15,1,71,.16);
}
.section-faq .q {
  display:flex;
  width:100%;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:17px 18px;
  border:0;
  background:none;
  color:var(--white);
  font-family:Manrope,Arial,sans-serif;
  font-size:15px;
  font-weight:700;
  line-height:1.35;
  text-align:left;
  cursor:pointer;
}
.section-faq .q > span:first-child { transition:color .25s ease; }
.section-faq .q:hover > span:first-child,
.section-faq .faqitem.open .q > span:first-child { color:var(--accent-light); }
.section-faq .faq-toggle {
  display:inline-flex;
  width:32px;
  height:32px;
  flex:0 0 32px;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(255,255,255,.1);
  color:var(--accent-light);
  transition:background .25s ease,transform .25s ease;
}
.section-faq .q:hover .faq-toggle { background:rgba(255,255,255,.17); }
.section-faq .faqitem.open .faq-toggle {
  background:rgba(164,154,255,.2);
  transform:rotate(45deg);
}
.section-faq .q svg {
  width:16px;
  height:16px;
  flex:0 0 auto;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:2.2;
}
.section-faq .answer {
  display:block;
  padding:0 70px 21px 18px;
  color:var(--muted);
  font-size:14px;
  line-height:1.7;
  transition:grid-template-rows .28s ease,padding .28s ease;
}
.section-faq .answer p { margin:0; }
html.js .section-faq .answer {
  display:grid;
  grid-template-rows:0fr;
  overflow:hidden;
  padding:0 70px 0 18px;
}
html.js .section-faq .answer > div { min-height:0; overflow:hidden; }
html.js .section-faq .faqitem.open .answer { grid-template-rows:1fr; padding:0 70px 21px 18px; }
html.js .section-faq .section-faq-intro,
html.js .section-faq .faqitem {
  opacity:0;
  transform:translateY(24px);
  transition:opacity .68s ease,transform .68s cubic-bezier(.22,.61,.36,1);
}
html.js .section-faq.is-visible .section-faq-intro,
html.js .section-faq.is-visible .faqitem {
  opacity:1;
  transform:none;
}
html.js .section-faq.is-visible .faqitem:nth-child(1) { transition-delay:.14s; }
html.js .section-faq.is-visible .faqitem:nth-child(2) { transition-delay:.24s; }
html.js .section-faq.is-visible .faqitem:nth-child(3) { transition-delay:.34s; }
html.js .section-faq.is-visible .faqitem:nth-child(4) { transition-delay:.44s; }
html.js .section-faq.is-visible .faqitem:nth-child(5) { transition-delay:.54s; }
html.js .section-faq.is-visible .faqitem:nth-child(6) { transition-delay:.64s; }
html.js .section-faq.is-visible .faqitem:nth-child(7) { transition-delay:.74s; }
html.js .section-faq.is-visible .faqitem:nth-child(8) { transition-delay:.84s; }
html.js .section-faq .section-faq-intro { transform:translateX(-24px); }
html.js .section-faq .faqitem { transform:translateY(24px) scale(.98); }

/* ========================================
   OFFER CONTACT MODAL
======================================== */
body.is-modal-open {
  position:fixed;
  width:100%;
  overflow:hidden;
}
.offer-modal[hidden] { display:none; }
.offer-modal {
  --whatsapp-deep:#075e54;
  --whatsapp-dark:#128c7e;
  --whatsapp-green:#25d366;
  --whatsapp-pale:#dcf8c6;
  position:fixed;
  inset:0;
  z-index:100;
  display:grid;
  place-items:center;
  padding:20px;
  background:rgba(15,1,71,.58);
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
  opacity:0;
  visibility:hidden;
  transition:opacity .28s ease,visibility .28s ease;
}
.offer-modal.is-open { opacity:1; visibility:visible; }
.offer-modal-backdrop { position:absolute; inset:0; }
.offer-modal-dialog {
  position:relative;
  width:min(100%,420px);
  max-height:calc(100dvh - 40px);
  overflow:auto;
  border:1px solid rgba(37,211,102,.3);
  border-radius:24px;
  background:rgba(15,1,71,.96);
  box-shadow:0 28px 80px rgba(3,0,24,.55);
  transform:translateY(18px) scale(.97);
  transition:transform .35s cubic-bezier(.22,.61,.36,1);
}
.offer-modal.is-open .offer-modal-dialog { transform:translateY(0) scale(1); }
.offer-modal-header {
  display:flex;
  align-items:center;
  gap:12px;
  padding:16px;
  border-radius:23px 23px 0 0;
  background:var(--whatsapp-deep);
  color:var(--white);
}
.offer-modal-avatar {
  display:grid;
  width:42px;
  height:42px;
  flex:0 0 42px;
  place-items:center;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.22);
  border-radius:50%;
  background:var(--page);
}
.offer-modal-avatar img { display:block; width:100%; height:100%; object-fit:cover; }
.offer-modal-heading { min-width:0; flex:1; }
.offer-modal-heading strong { display:block; font-size:14px; font-weight:700; line-height:1.2; }
.offer-modal-heading span { display:block; margin-top:4px; color:rgba(255,255,255,.72); font-size:11px; line-height:1.2; }
.offer-modal-heading b { color:var(--whatsapp-green); font-weight:700; }
.offer-modal-close {
  display:grid;
  width:34px;
  height:34px;
  flex:0 0 34px;
  place-items:center;
  border:0;
  border-radius:50%;
  background:transparent;
  color:rgba(246,248,255,.7);
  cursor:pointer;
  transition:background .2s ease,color .2s ease;
}
.offer-modal-close:hover,
.offer-modal-close:focus-visible { background:rgba(37,211,102,.2); color:var(--white); }
.offer-modal-close svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:2; }
.offer-modal-form {
  display:grid;
  gap:12px;
  padding:18px 16px 16px;
  background:var(--white);
}
.offer-modal-selection {
  display:grid;
  gap:5px;
  padding:12px 13px;
  border:1px solid rgba(18,140,126,.2);
  border-radius:12px;
  background:var(--whatsapp-pale);
}
.offer-modal-selection span {
  color:var(--whatsapp-dark);
  font-family:"Space Grotesk",Manrope,Arial,sans-serif;
  font-size:9px;
  font-weight:700;
  letter-spacing:.14em;
  line-height:1;
}
.offer-modal-selection strong { color:var(--whatsapp-deep); font-size:16px; font-weight:700; line-height:1.2; }
.offer-modal-form label { display:grid; gap:6px; color:var(--dark-ink); font-size:11px; font-weight:700; }
.offer-modal-form input {
  width:100%;
  height:46px;
  padding:0 13px;
  border:1px solid rgba(15,1,71,.12);
  border-radius:10px;
  outline:0;
  background:#f7f8fc;
  color:var(--dark-ink);
  font:400 14px Manrope,Arial,sans-serif;
  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;
}
.offer-modal-form input::placeholder { color:rgba(15,1,71,.42); }
.offer-modal-form input:focus { border-color:var(--whatsapp-green); background:var(--white); box-shadow:0 0 0 3px rgba(37,211,102,.18); }
.offer-modal-submit {
  --button-hover-bg:var(--whatsapp-dark);
  --button-active-bg:var(--whatsapp-deep);
  --button-depth:var(--whatsapp-deep);
  width:100%;
  height:52px;
  min-width:0;
  margin-top:2px;
  padding:0 18px;
  justify-content:center;
  border-radius:12px;
  background:var(--whatsapp-green);
  color:var(--whatsapp-deep);
  font-size:12px;
  font-weight:700;
  box-shadow:none;
  transition:background .2s ease,color .2s ease;
}
.offer-modal-submit:hover { color:var(--white); }
.offer-modal-submit:active { top:0; box-shadow:none; }

/* Footer */
footer {
  position:relative;
  z-index:10;
  margin-top:-2px !important;
  overflow:hidden;
  border:0 !important;
  background:var(--white) !important;
  color:var(--dark-ink);
}
.footer-wrap { padding-top:42px; }
.footer-top {
  display:grid;
  grid-template-columns:1fr auto;
  gap:48px;
  align-items:start;
  padding-bottom:30px;
  border-bottom:1px solid rgba(15,1,71,.14);
}
.footer-kicker {
  margin:0 0 12px;
  color:var(--dark-ink);
  font-size:11px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.footer-contact { display:flex; flex-wrap:wrap; gap:8px 24px; margin:0; }
.footer-contact a,
.footer-contact span,
.footer-links a,
.footer-bottom small {
  color:rgba(15,1,71,.62);
  font-size:12px;
  line-height:1.6;
  transition:color .2s ease;
}
.footer-contact a:hover,
.footer-links a:hover { color:var(--dark-ink); }
.footer-links { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:10px 22px; padding-top:1px; }
.footer-links a {
  position:relative;
  z-index:0;
  display:inline-block;
  padding:3px 6px 4px;
  margin:-3px -6px -4px;
  overflow:hidden;
  border-radius:32px;
}
.footer-links a::before {
  content:"";
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  z-index:-1;
  height:100%;
  border-radius:inherit;
  background:var(--dark-ink);
  transform:scaleY(.025);
  transform-origin:bottom;
  transition:transform .3s cubic-bezier(.22,.61,.36,1);
}
.footer-links a:hover { color:var(--white); }
.footer-links a:hover::before { transform:scaleY(1); }
.footer-mark { position:relative; height:154px; overflow:hidden; }
.footer-mark img {
  position:absolute;
  left:50%;
  bottom:-10px;
  width:min(600px,82vw);
  max-width:none;
  height:auto;
  opacity:.13;
  pointer-events:none;
  filter:grayscale(1) brightness(0);
  transform:translateX(-50%);
}
.footer-bottom {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:17px 0 19px;
  border:0;
}

/* Section transition dividers */
.novaera-divider {
  position:relative;
  left:50%;
  width:100vw;
  max-width:none;
  height:auto;
  margin-left:0;
  overflow:hidden;
  line-height:0;
  pointer-events:none;
  transform:translateX(-50%);
  background:var(--page);
  color:var(--white);
}
.novaera-divider svg {
  display:block;
  width:100vw;
  min-width:100vw;
  height:auto;
  overflow:visible;
}
.novaera-divider-hero {
  margin-bottom:-1px;
  color:var(--white);
  background:transparent;
}
.novaera-divider-projects {
  height:auto;
  margin-top:-14px;
  margin-bottom:-1px;
  color:var(--white);
  transform:translateX(-50%) scaleY(-1);
  transform-origin:center;
  background:var(--page-deep);
}
.novaera-divider-projects svg { height:auto; }
.novaera-divider-offer {
  height:clamp(72px,8vw,132px);
  margin-top:-1px;
  margin-bottom:-1px;
  color:var(--page);
  background:var(--white);
}
.novaera-divider-offer svg {
  width:100%;
  height:100%;
}
.novaera-divider-footer {
  margin-top:-1px;
  margin-bottom:0;
  color:var(--white);
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  background:var(--accent);
}
.novaera-divider-footer svg {
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}
.novaera-divider-footer::after {
  content:"";
  position:absolute;
  right:0;
  bottom:-1px;
  left:0;
  height:3px;
  background:var(--white);
  pointer-events:none;
}

/* Tablet */
@media (max-width:1040px) and (min-width:821px) {
  .shell { width:min(1180px,calc(100% - 40px)); }
  .section-hero h1 { font-size:clamp(52px,6.2vw,68px); }
  .section-offer .plans { grid-template-columns:repeat(2,1fr); }
  .section-process .step:not(:last-child)::after { display:none; }
  .section-process .process { grid-template-columns:1fr; }
}

/* Mobile */
@media (max-width:820px) {
  html,
  body {
    scroll-padding-top:86px;
    background-color:#0f0147;
  }
  @supports (overflow:clip) {
    html { overflow-x:clip; }
    body { overflow-x:visible; }
  }
  .shell { width:calc(100% - 32px); }
  header, header .nav { height:74px; }
  .logo { width:140px; height:58px; }
  .nav { gap:12px; }

  .section-hero {
    min-height:0;
    display:block;
    padding:158px 0 100px;
  }
  .section-hero .hero-signal { top:112px; padding:8px 12px; font-size:9px; }
  .section-hero h1 { font-size:clamp(45px,13vw,57px); line-height:.99; letter-spacing:-.055em; }
  .section-hero p { max-width:620px; font-size:16px; line-height:1.68; }
  .section-hero .hero-bottom { margin-top:34px; }
  .actions { width:100%; flex-direction:column; }
  .actions .button { width:100%; }
  .btn { width:100%; }
  .section-hero .actions .button { width:min(215px,100%); }
  .section-hero .actions .button .btn { width:100%; padding:0 46px 0 18px; gap:0; }
  .section-faq .section-faq-intro .button { width:min(215px,100%); }
  .section-faq .section-faq-intro .button .btn { width:100%; padding:0 46px 0 18px; gap:0; }

  .project-showcase {
    gap:120px;
    margin-top:18px;
    padding:10px 0 54px;
  }
  .project-window,
  .project-window-one,
  .project-window-two,
  .project-window-three {
    width:100%;
    max-width:none;
    margin:0 auto !important;
    transform:none;
  }
  html.js .section-projects .project-window,
  html.js .section-projects.is-visible .project-window {
    transform:none;
  }
  .project-window { top:82px; --project-rotate:0deg; }
  .project-window-bar a { transform:translateX(12px); }
  .project-window-preview {
    height:clamp(420px,calc(100svh - 180px),560px);
    overflow-y:hidden;
  }
  .project-window-preview img {
    height:100%;
    min-height:0;
    object-fit:contain;
    object-position:top center;
  }
  .project-window-one { z-index:1; }
  .project-window-two { z-index:2; }
  .project-window-three { z-index:3; }

  section.block { padding:82px 0; }
  section.block.section-testimonials { padding-top:58px; }
  .sectionhead { margin-bottom:45px; }
  .sectionhead h2 { font-size:clamp(39px,11vw,50px); }
  .section-offer-head h2,
  .section-process .sectionhead h2 { font-size:clamp(39px,11vw,52px); }
  .sectionhead p { font-size:15px; }
  .section-testimonials-head { margin-bottom:38px; }
  .section-testimonials-head h2 { font-size:clamp(39px,11vw,52px); }
  .section-testimonials-head p { font-size:15px; }
  .section-benefits-marquee { height:58px; }
  .section-benefits-marquee-group { gap:24px; padding-right:24px; }
  .section-benefits-marquee-item { gap:8px; font-size:11px; letter-spacing:.06em; }
  .section-benefits-marquee-item-icon { width:17px; height:17px; flex-basis:17px; }
  .testimonial-card { flex-basis:calc(100% - 24px); }
  .testimonial-carousel-button { width:36px; height:36px; }
  .testimonial-carousel-prev { left:12px; }
  .testimonial-carousel-next { right:12px; }
  .testimonial-card { min-height:200px; }

  .section-offer .plans { grid-template-columns:1fr; }
  .section-offer .plan { padding:30px 24px; border-radius:22px; }
  .section-offer .plan-header,
  .section-offer .plan-specific,
  .section-offer .plan-general,
  .section-offer .plan-description { min-height:0; }
  .section-offer .plan-badge { left:24px; }

  .section-performance { padding:0; }
  .performance-proof {
    flex-direction:column;
    align-items:flex-start;
    gap:28px;
    padding:0 28px;
  }
  .performance-score { align-self:center; }
  .performance-content h2 { font-size:clamp(24px,7vw,32px); }
  .performance-content > p { font-size:13px; }
  .performance-metrics {
    grid-template-columns:1fr;
    gap:16px;
  }

  .section-market-study { padding:82px 0; }
  .section-market-study-head { margin-bottom:36px; }
  .section-market-study-head h2 { font-size:clamp(34px,10vw,48px); }
  .section-market-study-head > p { font-size:16px; }
  .market-study-toolbar { padding:12px; }
  .market-study-table-head,
  .market-study-row {
    grid-template-columns:minmax(0,1fr) 74px 72px;
    gap:12px;
    padding-right:14px;
    padding-left:14px;
  }
  .market-study-cpc { display:none !important; }
  .market-study-row strong { font-size:13px; }
  .market-study-summary {
    flex-direction:row;
    align-items:flex-end;
    gap:12px;
    padding:18px 14px;
  }
  .market-study-summary > div {
    min-width:0;
    flex:1 1 0;
  }
  .market-study-summary > div:last-child { text-align:right; }
  .market-study-summary > div > span {
    font-size:9px;
    white-space:nowrap;
  }
  .market-study-summary strong {
    gap:3px;
    font-size:clamp(15px,5vw,20px);
    white-space:nowrap;
  }
  .market-study-summary > div:last-child strong {
    justify-content:flex-end;
    font-size:clamp(18px,6.5vw,28px);
  }
  .market-study-summary small { font-size:9px; }
  .market-study-summary svg { width:15px; height:15px; }
  .market-study-points { grid-template-columns:1fr; }
  .market-study-footer { flex-direction:column; align-items:flex-start; gap:28px; margin-top:36px; }
  .market-study-footer .button {
    width:max-content;
    max-width:100%;
  }
  .market-study-footer .button .btn {
    width:max-content;
    max-width:100%;
  }

  .section-process .process {
    display:flex;
    gap:14px;
    padding:0 0 10px;
    overflow-x:auto;
    border:0;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-x:contain;
  }
  .section-process .process::-webkit-scrollbar { display:none; }
  .section-process .step,
  .section-process .step:not(:first-child) {
    display:grid;
    flex:0 0 86%;
    grid-template-columns:34px minmax(0,1fr);
    grid-template-areas:
      "number number"
      "icon title"
      "description description";
    column-gap:10px;
    min-height:0;
    padding:24px 20px;
    border:1px solid var(--line);
    border-radius:18px;
    background:rgba(27,11,108,.62);
    scroll-snap-align:start;
  }
  .section-process .step:last-child { border-bottom:1px solid var(--line); }
  .section-process .step > span {
    display:block;
    grid-area:number;
    width:auto;
    height:auto;
    margin:0 0 34px;
    border-radius:0;
    background:transparent;
    color:var(--accent-light);
    font-size:11px;
    font-weight:400;
    line-height:1.2;
  }
  .section-process .process-step-icon {
    grid-area:icon;
    align-self:center;
    justify-self:start;
    width:28px;
    height:28px;
    flex-basis:34px;
    opacity:.9;
  }
  .section-process .step h3 {
    grid-area:title;
    align-self:center;
    font-size:20px;
  }
  .section-process .step p {
    grid-area:description;
    margin-top:20px;
  }

  .section-faq .faq {
    grid-template-columns:1fr;
    gap:42px;
  }
  .section-faq-intro h2 { font-size:clamp(40px,11vw,52px); }
  .section-faq-intro > p { font-size:14px; }
  .section-faq-intro > .button { margin-top:24px; }
  .section-faq .q { padding:16px 14px; font-size:14px; }
  .section-faq .answer,
  html.js .section-faq .faqitem.open .answer { padding-right:56px; padding-left:14px; }

  .footer-top { grid-template-columns:1fr; gap:24px; }
  .footer-links { justify-content:flex-start; padding-top:0; }
  .footer-mark { height:120px; }
  .footer-mark img { width:400px; bottom:-10px; }
  .footer-bottom { flex-direction:column; align-items:flex-start; gap:7px; }

}

/* Small phones */
@media (max-width:520px) {
  .shell { width:calc(100% - 28px); }
  .logo { width:128px; height:52px; }
  .menu-toggle { width:38px; height:38px; }
  .section-hero h1 { font-size:clamp(42px,13.5vw,54px); }
  section.block { padding:74px 0; }
}

/* Divider position on desktop */
@media (min-width:821px) {
  .novaera-divider { bottom:126px; }
  .novaera-divider-hero { margin-bottom:-127px; }
  .novaera-divider-projects { bottom:0; margin-bottom:-1px; }
  .novaera-divider-offer { bottom:0; }
  .novaera-divider-footer { margin-bottom:-126px; }
}

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after {
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
  }
  html.js .section-projects .section-projects-signal,
  html.js .section-projects-intro h2,
  html.js .section-projects-intro p,
  html.js .section-projects .project-window,
  html.js .section-testimonials .section-testimonials-signal,
  html.js .section-testimonials-head h2,
  html.js .section-testimonials-head p,
  html.js .section-testimonials .testimonial-carousel-button,
  html.js .section-testimonials .testimonial-carousel-dots,
  html.js .section-testimonials .testimonial-card,
  html.js .section-offer .section-offer-signal,
  html.js .section-offer-head h2,
  html.js .section-offer-head p,
  html.js .section-offer .plan,
  html.js .section-process .section-process-signal,
  html.js .section-process .sectionhead h2,
  html.js .section-process .sectionhead p,
  html.js .section-process .step,
  html.js .section-performance .performance-score,
  html.js .section-performance .performance-content,
  html.js .section-market-study .section-market-study-head,
  html.js .section-market-study .market-study-table-wrap,
  html.js .section-market-study .market-study-point,
  html.js .section-market-study .market-study-footer,
  html.js .section-faq .section-faq-intro,
  html.js .section-faq .faqitem {
    opacity:1;
    transform:none;
    transition:none;
  }
  .section-hero {
    position:relative;
    --hero-stack-y:0px;
    --hero-stack-scale:1;
    will-change:auto;
  }
  .section-hero .hero-signal-dynamic-value::after { animation:none !important; }
  .section-benefits-marquee-track { animation:none; transform:none; }
  section.block.section-performance::before,
  section.block.section-performance::after { animation:none; background-position:50% 0; }
}
