.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 { width: 100%; max-width: none; height: 76px; padding-left: 0; padding-right: 16px; justify-content: flex-end; gap: 30px; }
.landing-page .nav-logo { position: absolute; left: 0; z-index: 1; 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: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); display: flex; gap: 2px; padding: 5px; border: 1px solid rgba(255,255,255,.27); border-radius: 999px; background: rgba(255,255,255,.09); box-shadow: inset 0 1px rgba(255,255,255,.24), inset 0 -1px rgba(255,255,255,.055), 0 12px 28px rgba(0,0,0,.18); backdrop-filter: blur(24px) saturate(160%); }
.landing-page .nav-link { white-space: nowrap; 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 #features .section-head { grid-template-columns: 1fr; }
.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 .bot-type-selector { width: min(620px,100%); margin: 0 auto 30px; padding: 5px; display: grid; grid-template-columns: 1fr 1fr; gap: 5px; border: 1px solid rgba(255,255,255,.14); border-radius: 14px; background: #15151d; }
.landing-page .bot-type-selector button { min-height: 52px; padding: 10px 14px; border: 0; border-radius: 10px; background: transparent; color: #a7a7b1; font-size: 15px; font-weight: 700; cursor: pointer; }
.landing-page .bot-type-selector button[aria-pressed="true"] { background: #7c3aed; color: #fff; }
.landing-page .bot-type-selector button:hover:not([aria-pressed="true"]) { background: #272730; color: #fff; }
.landing-page .bot-type-selector button:focus-visible,.landing-page .period-selector button:focus-visible { outline: 2px solid #c4b5fd; outline-offset: 2px; }
.landing-page .period-label { margin: 0 0 12px; color: #b8b8c2; font-size: 13px; font-weight: 700; text-align: center; }
.landing-page .period-selector { width: fit-content; max-width: 100%; margin: 0 auto 34px; 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: #3f3f46; color: #fff; }
.landing-page .period-selector button:hover:not([aria-pressed="true"]) { color: #fff; background: #303038; }
.landing-page .plans-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.landing-page .plans-grid--alliance { grid-template-columns: minmax(0,620px); justify-content: center; }
.landing-page .plan-card { min-height: 560px; padding: 26px; border: 1px solid rgba(255,255,255,.13); border-radius: 19px; background: #15151d; box-shadow: none; }
.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(25px,2.5vw,34px); font-weight: 900; letter-spacing: -.03em; text-transform: uppercase; }
.landing-page .plan-description { max-width: 470px; min-height: 46px; margin: 0 0 11px; color: #aaaab6; font-size: 14px; line-height: 1.65; }
.landing-page .plan-audience { max-width: 470px; min-height: 24px; margin: 0 0 20px; color: #dedee5; font-size: 13px; line-height: 1.6; }
.landing-page .plan-price { margin: 0 0 24px; padding-bottom: 20px; display: grid; gap: 3px; border-bottom: 1px solid rgba(255,255,255,.12); }
.landing-page .plan-price-line { display: flex; align-items: baseline; gap: 10px; }
.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 .plan-price small { color: #a7a7b1; font-size: 12px; line-height: 1.5; }
.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: 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-features li.is-unavailable { color: #b78d95; }
.landing-page .plan-features li.is-unavailable .plan-feature-dot { background: #a96572; }
.landing-page .plan-features li.is-unavailable s { text-decoration-color: #a96572; text-decoration-thickness: 1px; }
.landing-page .plan-card--custom { grid-column: 1 / -1; min-height: 0; display: grid; grid-template-columns: 1fr auto; align-items: center; column-gap: 26px; }
.landing-page .plan-card--custom h3,.landing-page .plan-card--custom .plan-description,.landing-page .plan-card--custom .plan-audience { grid-column: 1; }
.landing-page .plan-card--custom .plan-actions { grid-column: 2; grid-row: 1 / 4; min-width: 230px; }
.landing-page .plan-actions { margin-top: auto; display: grid; grid-template-columns: 1fr; gap: 10px; }
.landing-page .plan-actions button,.landing-page .plan-actions a { 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; text-decoration: none; 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 .exchange-note { margin: 16px 0 0; color: #a7a7b1; font-size: 12px; line-height: 1.6; text-align: center; }
.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 .reviews-section { padding-top: 88px; background: #0a0a0f; color: #fff; border-top: 1px solid rgba(255,255,255,.08); }
.landing-page .reviews-head { margin-bottom: 32px; }
.landing-page .reviews-stage { position: relative; }
.landing-page .reviews-viewport { overflow: hidden; transition: height .48s cubic-bezier(.22,1,.36,1); }
.landing-page .reviews-grid { position: relative; display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 16px) / 2); gap: 16px; transition: transform .48s cubic-bezier(.22,1,.36,1); will-change: transform; }
.landing-page .reviews-grid.is-resizing { transition: none; }
.landing-page .review-card { align-self: start; min-height: 288px; padding: 32px; border: 1px solid rgba(255,255,255,.12); border-radius: 20px; background: #15151d; color: #f5f5f7; }
.landing-page .review-card-top { margin-bottom: 28px; display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: start; gap: 24px; }
.landing-page .review-heading { min-width: 0; display: flex; align-items: center; gap: 16px; }
.landing-page .review-avatar { flex: 0 0 56px; width: 56px; height: 56px; border-radius: 50%; object-fit: cover; background: #27272f; }
.landing-page .review-identity { min-width: 0; display: grid; gap: 4px; }
.landing-page .review-owner { color: #fff; font-size: 16px; font-weight: 600; line-height: 1.25; overflow-wrap: anywhere; }
.landing-page .review-family { color: #a7a7b1; font-size: 13px; font-weight: 400; line-height: 1.4; }
.landing-page .review-service { max-width: 240px; justify-self: end; color: #a7a7b1; font-size: 13px; line-height: 1.5; text-align: right; }
.landing-page .review-text { max-width: 52ch; margin: 0; padding: 12px 16px; border-left: 3px solid #a78bfa; border-radius: 0 8px 8px 0; background: rgba(124,58,237,.1); color: #f5f5f7; font-size: 16px; line-height: 1.7; overflow-wrap: anywhere; }
.landing-page .reviews-empty { margin: 0; padding: 32px; border: 1px solid rgba(255,255,255,.12); border-radius: 16px; color: #a1a1aa; font-size: 14px; }
.landing-page .reviews-footer { min-height: 32px; margin-top: 16px; display: flex; align-items: center; justify-content: center; }
.landing-page .reviews-end { margin: 0; display: inline-flex; align-items: center; gap: 5px; color: #a1a1aa; font-size: 12px; line-height: 1.5; }
.landing-page .reviews-end[hidden],.landing-page .reviews-empty[hidden],.landing-page .reviews-controls[hidden] { display: none; }
.landing-page .reviews-end img { width: 16px; height: 16px; }
.landing-page .reviews-controls { position: absolute; inset: 0; pointer-events: none; }
.landing-page .reviews-controls button { position: absolute; top: 50%; transform: translateY(-50%) scale(.88); width: 44px; height: 44px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.28); border-radius: 50%; background: #15151d; color: #fff; opacity: 0; visibility: hidden; cursor: pointer; pointer-events: auto; transition: background-color .18s ease, border-color .18s ease, color .18s ease, opacity .28s ease, visibility .28s, transform .28s ease; }
.landing-page .reviews-controls button.is-visible { opacity: 1; visibility: visible; transform: translateY(-50%) scale(1); }
.landing-page .reviews-controls [data-review-prev] { left: -56px; }
.landing-page .reviews-controls [data-review-next] { right: -56px; }
.landing-page .reviews-controls button:hover:not(:disabled) { border-color: #fff; background: #272731; color: #fff; }
.landing-page .reviews-controls button:disabled { cursor: default; }
.landing-page .reviews-controls button:focus-visible { outline: 2px solid #7c3aed; outline-offset: 3px; }
.landing-page .reviews-controls svg { width: 18px; height: 18px; stroke-width: 1.8; }
.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: 0; 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 #plan-modal .modal-dialog { user-select: none; cursor: default; }
.landing-page #modal-features .feature-accordion-item { padding: 0; overflow: hidden; border-color: rgba(255,255,255,.1); border-radius: 10px; background: #202029; transition: border-color .22s ease,background .22s ease; }
.landing-page #modal-features .feature-accordion-item::before { content: none; }
.landing-page #modal-features .feature-accordion-item:hover,.landing-page #modal-features .feature-accordion-item.is-open { border-color: rgba(255,255,255,.23); background: #25252e; }
.landing-page .feature-toggle { display: flex; width: 100%; min-height: 43px; align-items: center; justify-content: space-between; gap: 20px; padding: 10px 14px; border: 0; background: none; color: #eeeef3; font: inherit; font-size: 13px; font-weight: 600; line-height: 1.5; text-align: left; cursor: pointer; user-select: none; }
.landing-page .feature-toggle:focus-visible { outline: 2px solid #c4b5fd; outline-offset: -2px; border-radius: 9px; }
.landing-page .feature-chevron { flex: none; width: 8px; height: 8px; margin: -4px 3px 0 0; border-right: 1.5px solid #bcbcc8; border-bottom: 1.5px solid #bcbcc8; transform: rotate(45deg); transition: transform .25s ease,border-color .25s ease; }
.landing-page .feature-accordion-item.is-open .feature-chevron { margin-top: 4px; transform: rotate(225deg); border-color: #ddd6fe; }
.landing-page .feature-description { display: grid; grid-template-rows: 0fr; opacity: 0; visibility: hidden; transition: grid-template-rows .25s ease,opacity .25s ease,visibility .25s ease; }
.landing-page .feature-description p { min-height: 0; overflow: hidden; padding: 0 14px; color: #bcbcc8; font-size: 12px; line-height: 1.6; }
.landing-page .feature-accordion-item.is-open .feature-description { grid-template-rows: 1fr; opacity: 1; visibility: visible; }
.landing-page .feature-accordion-item.is-open .feature-description p { padding: 0 14px 13px; }
@media (prefers-reduced-motion: reduce) { .landing-page .feature-chevron,.landing-page .feature-description { transition-duration: 0.01ms; } }
.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 .plans-grid--family { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 720px) {
  .landing-page .container { width: min(calc(100% - 32px),1240px); }
  .landing-page .nav-inner { width: 100%; height: 66px; padding-left: 0; }
  .landing-page .nav-logo { position: static; margin-right: auto; 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,.landing-page .plans-grid--family,.landing-page .plans-grid--alliance { 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--custom { display: block; }
  .landing-page .plan-card--custom .plan-actions { min-width: 0; }
  .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 .reviews-grid { grid-auto-columns: 100%; }
  .landing-page .review-card { min-height: 0; padding: 28px; }
  .landing-page .review-card-top { grid-template-columns: 1fr; gap: 20px; }
  .landing-page .review-service { justify-self: end; }
  .landing-page .reviews-controls [data-review-prev] { left: -8px; }
  .landing-page .reviews-controls [data-review-next] { right: -8px; }
  .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-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; } .landing-page .reviews-viewport,.landing-page .reviews-grid,.landing-page .reviews-controls button { transition: none; } }

/* Decorative artwork belongs to the hero and has no image context menu. */
.landing-page .hero-layout { grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); align-items: center; gap: 28px; }
.landing-page .hero-figure { width: 125%; aspect-ratio: 3 / 2; justify-self: center; background: url('/assets/hero-figure.webp') center / contain no-repeat; mix-blend-mode: screen; pointer-events: none; user-select: none; }
.landing-page .hero h1 { font-size: clamp(40px, 4.5vw, 64px); }
@media (max-width: 900px) {
  .landing-page .hero-layout { grid-template-columns: 1fr; gap: 30px; }
  .landing-page .hero-figure { width: min(100%, 580px); }
}
@media (min-width: 901px) { .landing-page .hero-figure { transform: translateX(96px); } }

.landing-page .hero { background-image: var(--hero-grid); background-size: 48px 48px; }

@media (min-width: 721px) and (max-width: 1100px) {
  .landing-page .desktop-nav { left: auto; right: 16px; transform: translateY(-50%); max-width: calc(100% - 180px); }
  .landing-page .nav-link { padding: 10px; font-size: 11px; }
  .landing-page .nav-link[href="#features"] { max-width: 280px; white-space: normal; }
}
