@font-face {
  font-family: "Sora";
  src: url("/assets/fonts/sora-variable.woff2") format("woff2");
  font-style: normal;
  font-weight: 100 800;
  font-display: swap;
}

html body,
button,
input {
  font-family: "Sora", "Segoe UI", Arial, sans-serif;
}

.eur-base { color:#72829a; font-size:12px; font-weight:650; margin:-2px 0 6px; }
.rate-note { color:#6b7b92; font-size:12px; margin-top:20px; text-align:center; }
.dark-note { color:#aebed7; }
.renewal { align-items:baseline; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.14); border-radius:14px; display:grid; gap:3px; grid-template-columns:1fr auto; margin-top:22px; padding:15px 18px; }
.renewal strong { color:#16d9ff; font-size:20px; }
.renewal span { color:#aebed7; font-size:11px; grid-column:1/-1; }

/* Store content extensions */
.suite-note { align-items:center; color:#9fb4d0; display:flex; font-size:12px; gap:10px; margin:2px 8px 0; }
.suite-note span { align-items:center; background:#12294d; border-radius:9px; color:#16d9ff; display:flex; font-size:18px; height:30px; justify-content:center; width:30px; }
.product-grid-two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.product-grid-two .product-tile { min-height:400px; }
.catalog-note { align-items:center; color:#607089; display:flex; font-size:13px; gap:10px; justify-content:center; margin:24px 0 0; }
.catalog-note span { align-items:center; background:#eaf1ff; border-radius:50%; color:#1462ff; display:flex; font-size:17px; height:30px; justify-content:center; width:30px; }
.download-actions { align-items:flex-start; display:flex; flex-direction:column; gap:8px; margin-top:26px; }
.download-actions span { color:#607089; font-size:11px; }
.app-window, .real-app-shot { margin:0; }
.app-window figcaption, .real-app-shot figcaption { background:#071326; color:#b9cae1; font-size:11px; padding:9px 14px; text-align:center; }
.audience-row { align-items:center; display:flex; flex-wrap:wrap; gap:10px; margin-top:46px; }
.audience-row p { margin:0 10px 0 0; }
.audience-row span { background:#e6edf7; border-radius:999px; color:#40516b; font-size:12px; font-weight:650; padding:8px 12px; }
.comparison-wrap { background:#fff; border:1px solid #dbe5f2; border-radius:22px; margin-top:34px; overflow:hidden; padding:30px; }
.comparison-heading { align-items:end; display:flex; gap:30px; justify-content:space-between; margin-bottom:24px; }
.comparison-heading .kicker { margin:0; }
.comparison-heading h3 { font-size:28px; line-height:1.2; margin:0; max-width:580px; }
.table-scroll { overflow-x:auto; }
.comparison-table { border-collapse:collapse; min-width:720px; width:100%; }
.comparison-table th, .comparison-table td { border-bottom:1px solid #dbe5f2; padding:13px 16px; text-align:center; }
.comparison-table th:first-child, .comparison-table td:first-child { font-weight:700; text-align:left; }
.comparison-table th { color:#607089; font-size:12px; letter-spacing:.08em; text-transform:uppercase; }
.comparison-table td { font-size:13px; }
.comparison-table .recommended { background:#eef4ff; color:#1462ff; font-weight:800; }
.real-app-shot { background:#071326; border:1px solid rgba(83,142,255,.32); border-radius:20px; box-shadow:0 30px 80px rgba(0,0,0,.35); overflow:hidden; }
.real-app-shot img { display:block; width:100%; }
.dark-bar { background:#0d1c34; color:#fff; }
.library-gallery { background:#071326; border:1px solid rgba(83,142,255,.35); border-radius:22px; box-shadow:0 30px 80px rgba(0,0,0,.42); min-width:0; overflow:hidden; position:relative; }
.library-gallery:focus-visible { outline:3px solid #16d9ff; outline-offset:4px; }
.gallery-topbar { align-items:center; background:linear-gradient(90deg,#0c1b32,#10284b); display:grid; gap:14px; grid-template-columns:auto 1fr auto; min-height:66px; padding:12px 18px; }
.gallery-topbar>div { display:grid; gap:2px; }
.gallery-topbar small { color:#6f84a3; font-size:8px; font-weight:800; letter-spacing:.14em; }
.gallery-topbar strong { color:#fff; font-size:14px; }
.gallery-topbar>span:last-child { color:#16d9ff; font-size:10px; font-weight:800; letter-spacing:.12em; }
.gallery-window-dots { display:flex; gap:5px; }
.gallery-window-dots i { background:#263b5d; border-radius:50%; display:block; height:7px; width:7px; }
.gallery-window-dots i:first-child { background:#ff5c61; }
.gallery-window-dots i:nth-child(2) { background:#f6bd3d; }
.gallery-window-dots i:last-child { background:#1bd99b; }
.gallery-stage { aspect-ratio:1.92/1; background:#09182d; overflow:hidden; position:relative; }
.gallery-slide { inset:0; margin:0; opacity:0; pointer-events:none; position:absolute; transform:translateX(24px) scale(.985); transition:opacity .48s ease,transform .6s cubic-bezier(.2,.7,.2,1); }
.gallery-slide.is-active { opacity:1; pointer-events:auto; transform:none; z-index:1; }
.gallery-zoom { background:transparent; border:0; cursor:zoom-in; display:block; height:100%; margin:0; overflow:hidden; padding:0; position:relative; width:100%; }
.gallery-zoom img { display:block; height:100%; object-fit:cover; transition:transform .35s ease,filter .35s ease; width:100%; }
.gallery-zoom>span { background:rgba(4,13,29,.86); border:1px solid rgba(255,255,255,.22); border-radius:999px; color:#fff; font-size:9px; font-weight:750; opacity:0; padding:7px 10px; position:absolute; right:14px; top:14px; transform:translateY(-5px); transition:opacity .25s ease,transform .25s ease; }
.gallery-zoom:hover img { filter:brightness(.88); transform:scale(1.018); }
.gallery-zoom:hover>span,.gallery-zoom:focus-visible>span { opacity:1; transform:none; }
.gallery-zoom:focus-visible { outline:3px solid #16d9ff; outline-offset:-3px; }
.gallery-slide figcaption { align-items:flex-start; backdrop-filter:blur(12px); background:rgba(4,13,29,.84); border:1px solid rgba(255,255,255,.15); border-radius:12px; bottom:16px; color:#fff; display:flex; flex-direction:column; gap:3px; left:16px; max-width:72%; padding:11px 14px; position:absolute; }
.gallery-slide figcaption b { color:#fff; font-size:12px; }
.gallery-slide figcaption span { color:#aebed7; font-size:9px; }
.gallery-arrow { align-items:center; background:rgba(5,16,35,.82); border:1px solid rgba(255,255,255,.2); border-radius:50%; color:#fff; cursor:pointer; display:flex; font-size:18px; height:42px; justify-content:center; padding:0; position:absolute; top:50%; transform:translateY(-20%); transition:background .2s ease,border-color .2s ease,transform .2s ease; width:42px; z-index:3; }
.gallery-arrow:hover { background:#1462ff; border-color:#3b7dff; transform:translateY(-20%) scale(1.08); }
.gallery-arrow:focus-visible,.gallery-dots button:focus-visible { outline:2px solid #16d9ff; outline-offset:2px; }
.gallery-prev { left:12px; }
.gallery-next { right:12px; }
.gallery-controls { align-items:center; background:#09182d; display:flex; justify-content:space-between; min-height:48px; padding:10px 18px; }
.gallery-dots { align-items:center; display:flex; gap:7px; }
.gallery-dots button { background:#334a6e; border:0; border-radius:999px; cursor:pointer; height:6px; padding:0; transition:background .2s ease,width .3s ease; width:18px; }
.gallery-dots button.is-active { background:#16d9ff; width:38px; }
.gallery-hint { color:#6f84a3; font-size:9px; }
.audience-cards { display:grid; gap:12px; grid-template-columns:repeat(4,1fr); margin-top:52px; }
.audience-cards article { background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12); border-radius:15px; display:grid; gap:7px; padding:18px; }
.audience-cards b { color:#16d9ff; }
.audience-cards span { color:#afbdd4; font-size:12px; }
.support-scope { display:grid; gap:12px; grid-template-columns:repeat(2,1fr); margin-top:24px; }
.support-scope>div { background:rgba(255,255,255,.065); border:1px solid rgba(255,255,255,.12); border-radius:14px; display:grid; gap:6px; padding:16px; }
.support-scope b { color:#16d9ff; margin-bottom:4px; }
.support-scope span { color:#b9c7de; font-size:11px; }
.support-scope span:before { color:#16d9ff; content:"✓"; margin-right:7px; }
.support-scope>div:last-child span:before { color:#7e8da5; content:"–"; }
.trust-section { background:#eef4ff; padding:58px 0; }
.trust-grid { display:grid; gap:15px; grid-template-columns:repeat(4,1fr); }
.trust-grid article { background:#fff; border:1px solid #dbe5f2; border-radius:17px; padding:22px; }
.trust-grid span { color:#1462ff; font-size:11px; font-weight:850; letter-spacing:.12em; }
.trust-grid b { display:block; font-size:16px; margin-top:7px; }
.trust-grid p { color:#607089; font-size:12px; margin:8px 0 0; }
.faq-section { background:#f5f8fc; }
.faq-layout { display:grid; gap:70px; grid-template-columns:.75fr 1.25fr; }
.faq-layout .section-intro { margin:0; }
.faq-list { display:grid; gap:10px; }
.faq-list details { background:#fff; border:1px solid #dbe5f2; border-radius:14px; padding:0 18px; }
.faq-list summary { cursor:pointer; font-size:14px; font-weight:760; list-style:none; padding:17px 28px 17px 0; position:relative; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary:after { color:#1462ff; content:"+"; font-size:22px; position:absolute; right:0; top:11px; }
.faq-list details[open] summary:after { content:"−"; }
.faq-list p { color:#607089; font-size:13px; margin:0; padding:0 22px 18px 0; }

/* Full-size application screenshots */
.image-lightbox { background:transparent; border:0; height:100dvh; margin:auto; max-height:none; max-width:none; padding:28px; width:100vw; }
.image-lightbox::backdrop { backdrop-filter:blur(12px); background:rgba(2,8,19,.9); }
.image-lightbox[open] { align-items:center; display:flex; justify-content:center; }
.lightbox-frame { background:#071326; border:1px solid rgba(255,255,255,.2); border-radius:18px; box-shadow:0 30px 100px rgba(0,0,0,.65); max-height:calc(100dvh - 56px); max-width:min(1500px,calc(100vw - 56px)); overflow:auto; padding:10px; }
.lightbox-frame img { border-radius:11px; display:block; height:auto; max-width:100%; width:auto; }
.lightbox-frame p { color:#d8e4f5; font-size:12px; font-weight:750; margin:9px 4px 2px; }
.lightbox-close { align-items:center; background:#e1672d; border:0; border-radius:50%; color:#fff; cursor:pointer; display:flex; font-size:27px; height:46px; justify-content:center; padding:0 0 3px; position:fixed; right:22px; top:20px; transition:transform .2s ease,background .2s ease; width:46px; z-index:2; }
.lightbox-close:hover { background:#ff7c3f; transform:scale(1.08); }
.lightbox-close:focus-visible { outline:3px solid #fff; outline-offset:3px; }

/* Legal-page footer */
.legal-site-footer { padding:0; }
.legal-footer { display:grid; gap:28px; grid-template-columns:minmax(230px,.8fr) minmax(0,1.6fr); padding-bottom:44px; padding-top:44px; }
.legal-footer-heading { display:grid; gap:13px; }
.legal-footer-heading p { color:#9db0cb; font-size:12px; margin:0; max-width:310px; }
.legal-footer-links { align-content:start; display:flex; flex-wrap:wrap; gap:10px; justify-content:flex-end; }
.legal-footer-links a { background:#10213b; border:1px solid #263c5d; border-radius:10px; color:#dce8f8; display:inline-flex; font-size:12px; font-weight:700; padding:10px 13px; transition:background .2s ease,border-color .2s ease,transform .2s ease; }
.legal-footer-links a:hover { background:#183258; border-color:#3e6598; transform:translateY(-2px); }
.legal-footer-links .legal-footer-email { background:rgba(225,103,45,.13); border-color:rgba(225,103,45,.55); color:#ffb18b; }
.legal-footer-bottom { align-items:center; border-top:1px solid #1d304d; color:#8398b6; display:flex; font-size:11px; gap:24px; grid-column:1/-1; justify-content:space-between; padding-top:20px; }
.legal-footer-bottom span:last-child { max-width:650px; text-align:right; }

@media(max-width:900px){
  .audience-cards,.trust-grid{grid-template-columns:repeat(2,1fr)}
  .faq-layout{grid-template-columns:1fr;gap:30px}
  .legal-footer{grid-template-columns:1fr}
  .legal-footer-links{justify-content:flex-start}
}
@media(max-width:640px){
  .product-grid-two,.audience-cards,.support-scope,.trust-grid{grid-template-columns:1fr}
  .comparison-heading{align-items:flex-start;flex-direction:column;gap:10px}
  .comparison-wrap{padding:20px 14px}
  .audience-row{align-items:flex-start;flex-direction:column}
  .gallery-topbar{min-height:58px;padding:10px 13px}
  .gallery-topbar small{display:none}
  .gallery-stage{aspect-ratio:1.55/1}
  .gallery-slide img{object-position:center top}
  .gallery-slide figcaption{bottom:10px;left:10px;max-width:75%;padding:8px 10px}
  .gallery-slide figcaption span,.gallery-hint{display:none}
  .gallery-arrow{height:34px;width:34px}
  .gallery-prev{left:8px}.gallery-next{right:8px}
  .gallery-controls{min-height:42px;padding:9px 13px}
  .image-lightbox{padding:12px}
  .lightbox-frame{max-height:calc(100dvh - 24px);max-width:calc(100vw - 24px);padding:6px}
  .lightbox-close{height:40px;right:12px;top:12px;width:40px}
  .legal-footer{gap:22px;padding-bottom:30px;padding-top:30px}
  .legal-footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .legal-footer-links a{justify-content:center;text-align:center}
  .legal-footer-links .legal-footer-email{grid-column:1/-1}
  .legal-footer-bottom{align-items:flex-start;flex-direction:column;gap:8px}
  .legal-footer-bottom span:last-child{text-align:left}
}
@media(prefers-reduced-motion:reduce){.gallery-slide,.gallery-arrow,.gallery-dots button,.gallery-zoom img,.gallery-zoom>span{transition:none}}
