.landing-page {
  --ink: #f8fafc;
  --ink-soft: #a1a1aa;
  --ink-muted: #8b8b96;
  --night: #0a0a0f;
  --night-raised: #13121c;
  --violet: #7c3aed;
  --violet-light: #a78bfa;
  --line: rgba(255,255,255,.11);
  --font-display: "Montserrat", Arial, sans-serif;
  --font-body: "Inter", Arial, sans-serif;
  --container: 1240px;
  color: #f8fafc;
  background: #0a0a0f;
  font-family: var(--font-body);
}
.landing-page .container { width: min(calc(100% - 48px), 1240px); }
.landing-page h1,.landing-page h2,.landing-page h3 { font-family: var(--font-display); }
.landing-page .navbar { position: sticky; top: 0; background: rgba(10,10,15,.94); border-bottom: 1px solid rgba(255,255,255,.09); backdrop-filter: blur(16px); }
.landing-page .navbar.scrolled { background: rgba(10,10,15,.98); }
.landing-page .nav-inner { height: 76px; justify-content: space-between; gap: 30px; }
.landing-page .nav-logo { position: static; width: auto; max-width: none; padding: 0; overflow: visible; border: 0; border-radius: 0; font-size: 23px; font-weight: 800; transition: none; }
.landing-page .nav-logo:hover,.landing-page .nav-logo:focus-visible { max-width: none; border: 0; background: none; }
.landing-page .nav-logo img { width: 39px; height: 39px; }
.landing-page .brand-label { opacity: 1; transform: none; }
.landing-page .brand span span { color: #8b5cf6; }
.landing-page .desktop-nav { position: static; transform: none; display: flex; gap: 2px; padding: 5px; border: 1px solid rgba(255,255,255,.18); border-radius: 999px; background: rgba(255,255,255,.065); box-shadow: inset 0 1px rgba(255,255,255,.14), 0 8px 24px rgba(0,0,0,.12); backdrop-filter: blur(18px) saturate(130%); }
.landing-page .nav-link { padding: 10px 15px; border-radius: 999px; color: #d4d4dc; font-size: 13px; font-weight: 600; }
.landing-page .nav-link:hover { color: #fff; background: rgba(255,255,255,.1); }
.landing-page .nav-link::after { display: none; }
.landing-page .button { min-height: 48px; padding: 0 22px; border: 1px solid #7c3aed; border-radius: 10px; background: #7c3aed; color: #fff; box-shadow: none; font-size: 13px; font-weight: 700; transition: background-color .18s ease,border-color .18s ease,transform .18s ease; }
.landing-page .button:hover { background: #6d28d9; border-color: #6d28d9; transform: translateY(-2px); }
.landing-page .button-secondary { border-color: rgba(255,255,255,.22); background: #171720; }
.landing-page .button-secondary:hover { border-color: rgba(255,255,255,.42); background: #25252e; }
.landing-page .nav-contact { white-space: nowrap; border-radius: 999px; }
.landing-page .nav-contact svg { width: 15px; height: 15px; }
.landing-page .hero { display: block; min-height: 0; padding: 112px 0 176px; overflow: hidden; background-color: #0a0a0f; background-image: linear-gradient(to right,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.035) 1px,transparent 1px); background-size: 48px 48px; }
.landing-page .hero::before { display: none; }
.landing-page .hero-content { position: relative; }
.landing-page .hero-layout { display: grid; grid-template-columns: 1fr; }
.landing-page .hero-copy { padding-bottom: 24px; }
.landing-page .hero h1 { max-width: 850px; margin: 0 0 24px; color: #fff; font-size: clamp(44px,5vw,72px); font-weight: 900; line-height: 1.03; letter-spacing: -.045em; text-transform: uppercase; }
.landing-page .hero h1 span { color: #a78bfa; }
.landing-page .hero-copy > .hero-lead { max-width: 700px; margin: 0 0 32px; color: #aaaab5; font-size: 17px; line-height: 1.7; }
.landing-page .hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.landing-page .section { padding: 108px 0; content-visibility: visible; }
.landing-page .section-head { margin-bottom: 42px; display: grid; grid-template-columns: minmax(0,1.1fr) minmax(240px,.65fr); align-items: end; gap: 40px; }
.landing-page .section-head h2,.landing-page .contact-copy h2 { max-width: 850px; margin: 0; font-size: clamp(32px,3.8vw,51px); font-weight: 900; line-height: 1.08; letter-spacing: -.035em; text-transform: uppercase; }
.landing-page .section-head > p { max-width: 350px; margin: 0 0 3px; color: #747987; font-size: 15px; line-height: 1.7; }
.landing-page #features,.landing-page .workflow-section { background: #fff; color: #11131a; }
.landing-page .feature-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; border: 0; }
.landing-page .feature-card { min-height: 240px; padding: 32px; border: 1px solid #e7e8ed; border-radius: 18px; background: #f8f9fb; }
.landing-page .feature-icon { width: 43px; height: 43px; margin-bottom: 28px; display: grid; place-items: center; border: 1px solid #e5e0f2; border-radius: 11px; background: #f0ebfb; color: #6d28d9; }
.landing-page .feature-icon svg { width: 20px; height: 20px; }
.landing-page .feature-card h3 { margin: 0 0 11px; color: #11131a; font-size: 20px; font-weight: 800; line-height: 1.25; letter-spacing: -.02em; }
.landing-page .feature-card p { max-width: 460px; margin: 0; color: #667085; font-size: 14px; line-height: 1.7; }
.landing-page .catalog-section { overflow: visible; background: #0a0a0f; color: #fff; }
.landing-page .catalog-section::before { display: none; }
.landing-page .catalog-section .section-head > p { color: #a1a1aa; }
.landing-page .period-selector { width: fit-content; max-width: 100%; margin: 0 auto 26px; padding: 5px; display: flex; gap: 3px; overflow-x: auto; border: 1px solid rgba(255,255,255,.13); border-radius: 13px; background: #15151c; }
.landing-page .period-selector button { min-width: 108px; padding: 12px 14px; border: 0; border-radius: 9px; background: transparent; color: #a1a1aa; font-size: 13px; font-weight: 700; white-space: nowrap; cursor: pointer; }
.landing-page .period-selector button[aria-pressed="true"] { background: #7c3aed; color: #fff; }
.landing-page .period-selector button:hover:not([aria-pressed="true"]) { color: #fff; background: #24242c; }
.landing-page .plans-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.landing-page .plan-card { min-height: 560px; padding: 36px; border: 1px solid rgba(255,255,255,.13); border-radius: 19px; background: #15151d; box-shadow: none; }
.landing-page .plan-card:first-child,.landing-page .plan-card--featured { border-color: rgba(167,139,250,.7); }
.landing-page .plan-card h3 { margin: 0 0 12px; color: #fff; font-size: clamp(28px,2.8vw,39px); font-weight: 900; letter-spacing: -.03em; text-transform: uppercase; }
.landing-page .plan-description { max-width: 470px; margin: 0 0 11px; color: #aaaab6; font-size: 14px; line-height: 1.65; }
.landing-page .plan-audience { max-width: 470px; min-height: 46px; margin: 0 0 24px; color: #dedee5; font-size: 13px; line-height: 1.6; }
.landing-page .plan-price { margin: 0 0 24px; padding-bottom: 24px; display: flex; align-items: baseline; gap: 10px; border-bottom: 1px solid rgba(255,255,255,.12); }
.landing-page .plan-price strong { color: #fff; font-family: var(--font-display); font-size: 42px; font-weight: 900; letter-spacing: -.045em; }
.landing-page .plan-price span { color: #aaaab6; font-size: 13px; }
.landing-page .price-animate { animation: landing-price-in .28s ease both; }
@keyframes landing-price-in { from { opacity: .3; transform: translateY(5px); } to { opacity: 1; transform: none; } }
.landing-page .plan-features { margin: 0 0 31px; padding: 0; display: grid; grid-template-columns: 1fr; gap: 11px 16px; list-style: none; }
.landing-page .plan-card--featured .plan-features { grid-template-columns: repeat(2,minmax(0,1fr)); }
.landing-page .plan-features li { display: flex; align-items: flex-start; gap: 10px; color: #dedee6; font-size: 12px; line-height: 1.55; }
.landing-page .plan-feature-dot { flex: 0 0 6px; width: 6px; height: 6px; margin-top: 7px; border-radius: 50%; background: #9ca3af; }
.landing-page .plan-actions { margin-top: auto; display: grid; grid-template-columns: 1fr; gap: 10px; }
.landing-page .plan-actions button { min-height: 47px; padding: 10px 12px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; border-radius: 9px; font-size: 12px; font-weight: 700; cursor: pointer; }
.landing-page .learn-more { border: 1px solid rgba(255,255,255,.22); background: transparent; color: #fff; }
.landing-page .learn-more:hover { background: #282832; }
.landing-page .buy-button { border: 1px solid #7c3aed; background: #7c3aed; color: #fff; }
.landing-page .buy-button:hover { background: #6d28d9; }
.landing-page .catalog-note { margin: 20px 0 0; color: #8d8d9b; font-size: 12px; line-height: 1.6; }
.landing-page .workflow-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 0; border-top: 1px solid #e3e4e8; }
.landing-page .workflow-grid article { min-height: 220px; padding: 27px 23px 0 0; border-right: 1px solid #e3e4e8; }
.landing-page .workflow-grid article + article { padding-left: 23px; }
.landing-page .workflow-grid article:last-child { border-right: 0; }
.landing-page .workflow-grid article > span { display: block; margin-bottom: 36px; color: #7c3aed; font-family: var(--font-display); font-size: 13px; font-weight: 800; }
.landing-page .workflow-grid h3 { margin: 35px 0 10px; color: #11131a; font-size: 17px; font-weight: 800; line-height: 1.4; }
.landing-page .workflow-grid p { margin: 0; color: #667085; font-size: 13px; line-height: 1.7; }
.landing-page #contact { padding: 95px 0; color: #fff; background: #0a0a0f; }
.landing-page .contact-shell { padding: clamp(34px,5vw,64px); display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: end; gap: 36px; border: 1px solid rgba(167,139,250,.28); border-radius: 22px; background: #191323; }
.landing-page .contact-copy h2 { max-width: 820px; margin-bottom: 15px; color: #fff; font-size: clamp(28px,3.2vw,44px); }
.landing-page .contact-copy > p:last-child { max-width: 650px; margin: 0; color: #bbb4c9; font-size: 14px; line-height: 1.7; }
.landing-page .contact-button { white-space: nowrap; }
.landing-page .footer { padding: 70px 0 0; background: #0a0a0f; border-top: 1px solid rgba(255,255,255,.11); }
.landing-page .footer-grid { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(160px,.65fr) minmax(210px,.8fr); gap: 48px; }
.landing-page .footer-logo { margin-bottom: 25px; color: #fff; font-family: var(--font-display); font-size: 25px; font-weight: 900; }
.landing-page .footer-logo img { width: 39px; height: 39px; }
.landing-page .footer-main h2 { max-width: 330px; margin: 0 0 9px; font-size: 17px; font-weight: 800; line-height: 1.4; }
.landing-page .footer-main p { max-width: 360px; color: #9696a2; font-size: 13px; line-height: 1.7; }
.landing-page .footer-column h3 { margin: 0 0 20px; color: #fff; font-size: 13px; font-weight: 800; }
.landing-page .footer-links { display: grid; gap: 13px; }
.landing-page .footer-links a,.landing-page .footer-links button { width: fit-content; padding: 0; border: 0; background: none; color: #a1a1aa; font-size: 12px; text-align: left; cursor: pointer; }
.landing-page .footer-links a:hover,.landing-page .footer-links button:hover { color: #fff; }
.landing-page .footer-disclaimer { margin-top: 55px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.1); color: #7b7b88; font-size: 11px; line-height: 1.7; }
.landing-page .footer-bottom { padding: 22px 0 30px; color: #7b7b88; font-size: 11px; }
.landing-page .modal { position: fixed; z-index: 100; inset: 0; display: none; align-items: center; justify-content: center; padding: 20px; }
.landing-page .modal.open { display: flex; }
.landing-page .modal-backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.78); backdrop-filter: blur(7px); }
.landing-page .modal-dialog { position: relative; width: min(100%,650px); max-height: min(88vh,850px); padding: 36px; overflow-y: auto; border: 1px solid rgba(255,255,255,.16); border-radius: 19px; background: #15151c; box-shadow: 0 28px 80px rgba(0,0,0,.4); color: #fff; }
.landing-page .modal-close-icon { position: absolute; top: 21px; right: 21px; width: 36px; height: 36px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.18); border-radius: 9px; background: #202028; color: #fff; cursor: pointer; }
.landing-page .modal-header { padding-right: 32px; }
.landing-page .modal-header h2 { margin: 0 0 9px; color: #fff; font-size: clamp(25px,3vw,34px); font-weight: 900; text-transform: uppercase; }
.landing-page .modal-header p { color: #aaaab5; font-size: 13px; line-height: 1.6; }
.landing-page .modal-header .modal-product-name { margin: 0; color: #fff; font-size: 14px; font-weight: 700; }
.landing-page .modal-header .modal-price { margin: 12px 0 17px; display: flex; align-items: baseline; gap: 9px; color: #fff; }
.landing-page .modal-header .modal-price strong { color: #fff; font-family: var(--font-display); font-size: 33px; font-weight: 900; letter-spacing: -.035em; }
.landing-page .modal-header .modal-price span { color: #c4c4ce; font-family: var(--font-body); font-size: 13px; font-weight: 600; }
.landing-page .modal-detail { display: grid; gap: 0; padding: 0; border-top: 1px solid rgba(255,255,255,.12); }
.landing-page .modal-detail section { padding: 18px 0; border-bottom: 1px solid rgba(255,255,255,.12); }
.landing-page .modal-detail h3 { margin: 0 0 9px; color: #f8fafc; font-size: 15px; font-weight: 800; }
.landing-page .modal-detail p,.landing-page .modal-detail li { color: #b9b9c3; font-size: 13px; line-height: 1.65; }
.landing-page .modal-detail p { margin: 0; }
.landing-page .modal-detail ul { margin: 0; padding: 0; display: grid; grid-template-columns: 1fr; gap: 7px; list-style: none; }
.landing-page .modal-detail li { position: relative; padding: 9px 13px 9px 34px; border: 1px solid rgba(255,255,255,.08); border-radius: 8px; background: #202029; color: #e5e5eb; }
.landing-page .modal-detail li::before { content: ""; position: absolute; top: 17px; left: 14px; width: 6px; height: 6px; border-radius: 50%; background: #9ca3af; }
.landing-page .modal-actions { margin-top: 22px; display: flex; }
.landing-page .modal-actions .button { width: 100%; }
.landing-page #checkout-form { display: grid; gap: 10px; }
.landing-page #checkout-form > label:not(.checkout-consent) { margin-top: 10px; color: #eeeef3; font-size: 12px; font-weight: 700; }
.landing-page #checkout-form > label:not(.checkout-consent) > span { color: #a78bfa; }
.landing-page #checkout-form > input { width: 100%; min-height: 48px; padding: 0 14px; border: 1px solid rgba(255,255,255,.16); border-radius: 9px; outline: none; background: #21212b; color: #fff; font-size: 13px; }
.landing-page #checkout-form > input:focus { border-color: #a78bfa; background: #272733; color: #fff; box-shadow: 0 0 0 3px rgba(124,58,237,.2); }
.landing-page #checkout-form > input::placeholder { color: #858594; }
.landing-page #checkout-form .checkout-consent { display: flex; align-items: flex-start; gap: 11px; color: #b9b9c3; font-size: 11px; line-height: 1.6; cursor: pointer; }
.landing-page .checkout-consent input { flex: 0 0 17px; width: 17px; height: 17px; margin-top: 1px; accent-color: #7c3aed; }
.landing-page #checkout-form input[type="checkbox"] { accent-color: #7c3aed; }
.landing-page #checkout-form .checkout-consent a { color: #c4b5fd; text-decoration: underline; }
.landing-page .checkout-error { margin: 0; color: #ffb6ba; font-size: 12px; }
.landing-page .cookie-panel { position: fixed; z-index: 80; right: 20px; bottom: 20px; width: min(420px,calc(100% - 40px)); padding: 18px; border: 1px solid rgba(255,255,255,.17); border-radius: 13px; background: #1b1b23; box-shadow: 0 18px 55px rgba(0,0,0,.25); }
.landing-page .cookie-panel.is-hidden { display: none; }
.landing-page .cookie-panel p { margin: 0 0 14px; color: #dedee5; font-size: 12px; line-height: 1.6; }
.landing-page .cookie-panel p a { color: #c4b5fd; text-decoration: underline; }
.landing-page .cookie-panel > div { display: flex; gap: 9px; }
.landing-page .cookie-panel button { min-height: 35px; padding: 7px 12px; border: 1px solid rgba(255,255,255,.19); border-radius: 8px; background: transparent; color: #fff; font-size: 11px; font-weight: 700; cursor: pointer; }
.landing-page .cookie-panel button:last-child { border-color: #7c3aed; background: #7c3aed; }
@media (max-width: 1020px) {
  .landing-page .desktop-nav { gap: 0; }
  .landing-page .nav-link { padding-inline: 11px; }
  .landing-page .nav-contact { display: none; }
  .landing-page .contact-shell { grid-template-columns: 1fr; }
  .landing-page .contact-button { justify-self: start; }
}
@media (max-width: 720px) {
  .landing-page .container { width: min(calc(100% - 32px),1240px); }
  .landing-page .nav-inner { height: 66px; }
  .landing-page .nav-logo { font-size: 21px; }
  .landing-page .nav-logo img { width: 34px; height: 34px; }
  .landing-page .desktop-nav { display: none; }
  .landing-page .menu-button { width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.18); border-radius: 9px; background: #191922; color: #fff; }
  .landing-page .mobile-menu { display: none; padding: 12px 16px 20px; border-top: 1px solid rgba(255,255,255,.1); background: #0a0a0f; }
  .landing-page .mobile-menu.open { display: grid; }
  .landing-page .mobile-menu a { padding: 13px 8px; border-bottom: 1px solid rgba(255,255,255,.1); color: #eee; font-size: 14px; font-weight: 600; }
  .landing-page .mobile-menu .mobile-contact { margin-top: 12px; padding: 13px; display: flex; justify-content: space-between; border: 0; border-radius: 9px; background: #7c3aed; color: #fff; }
  .landing-page .hero { padding: 73px 0 128px; }
  .landing-page .hero-layout { display: block; }
  .landing-page .hero h1 { font-size: clamp(35px,9.1vw,58px); }
  .landing-page .hero-copy > .hero-lead { font-size: 15px; }
  .landing-page .section { padding: 75px 0; }
  .landing-page .section-head { grid-template-columns: 1fr; gap: 17px; margin-bottom: 30px; }
  .landing-page .section-head h2 { font-size: clamp(29px,7.7vw,40px); }
  .landing-page .section-head > p { max-width: 500px; }
  .landing-page .feature-grid,.landing-page .plans-grid { grid-template-columns: 1fr; }
  .landing-page .feature-card { min-height: 0; padding: 26px; }
  .landing-page .feature-icon { margin-bottom: 20px; }
  .landing-page .period-selector { width: 100%; }
  .landing-page .plan-card { min-height: 0; padding: 29px; }
  .landing-page .plan-card--featured .plan-features { grid-template-columns: 1fr; }
  .landing-page .workflow-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .landing-page .workflow-grid article { min-height: 210px; }
  .landing-page .workflow-grid article:nth-child(2) { border-right: 0; }
  .landing-page .workflow-grid article:nth-child(3) { padding-left: 0; border-top: 1px solid #e3e4e8; }
  .landing-page .workflow-grid article:nth-child(4) { border-top: 1px solid #e3e4e8; }
  .landing-page .footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 35px 22px; }
  .landing-page .footer-main { grid-column: 1 / -1; }
}
@media (max-width: 440px) {
  .landing-page .hero-actions { display: grid; }
  .landing-page .hero-actions .button { width: 100%; }
  .landing-page .plan-actions { grid-template-columns: 1fr; }
  .landing-page .workflow-grid { grid-template-columns: 1fr; }
  .landing-page .workflow-grid article,.landing-page .workflow-grid article + article { min-height: 0; padding: 22px 0; border-right: 0; border-top: 1px solid #e3e4e8; }
  .landing-page .workflow-grid article:first-child { border-top: 0; }
  .landing-page .workflow-grid h3 { margin-top: 0; }
  .landing-page #contact { padding: 65px 0; }
  .landing-page .contact-shell { padding: 27px; }
  .landing-page .contact-button { width: 100%; white-space: normal; }
  .landing-page .modal { padding: 10px; }
  .landing-page .modal-dialog { max-height: 94vh; padding: 25px 20px; }
  .landing-page .footer-grid { grid-template-columns: 1fr; }
  .landing-page .footer-main { grid-column: auto; }
  .landing-page .cookie-panel > div { display: grid; }
}
@media (prefers-reduced-motion: reduce) { .landing-page .price-animate { animation: none; } }
