
:root {
  --bg: #080b12;
  --bg-elevated: #0e131e;
  --surface: #111722;
  --surface-2: #151c29;
  --text: #f7f8fb;
  --muted: #a4adbf;
  --muted-2: #737e92;
  --line: rgba(255,255,255,.105);
  --accent: #8d80ff;
  --accent-2: #49d8f3;
  --green: #72e6a4;
  --container: 1180px;
  --radius-lg: 28px;
  --radius-md: 20px;
  --shadow: 0 30px 90px rgba(0,0,0,.42);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 88px; }
body {
  margin: 0; min-width: 320px; overflow-x: hidden;
  color: var(--text); background:
    radial-gradient(circle at 12% 0%, rgba(108,88,255,.13), transparent 26rem),
    radial-gradient(circle at 92% 22%, rgba(37,191,220,.08), transparent 30rem),
    var(--bg);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.6; -webkit-font-smoothing: antialiased;
}
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img { display:block; max-width:100%; }
figure { margin:0; }
button, input, textarea { font:inherit; }
button { color:inherit; }
::selection { background: rgba(141,128,255,.38); }
.container { width: min(calc(100% - 40px), var(--container)); margin-inline:auto; }
.section { padding: 112px 0; position:relative; }
.skip-link { position:fixed; top:10px; left:10px; z-index:999; transform:translateY(-160%); background:#fff; color:#080b12; padding:9px 14px; border-radius:10px; }
.skip-link:focus { transform:none; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

/* Header */
.site-header { position:fixed; inset:0 0 auto; z-index:100; padding:17px 0; border-bottom:1px solid transparent; transition:.25s ease; }
.site-header.is-scrolled { padding:10px 0; border-color:var(--line); background:rgba(8,11,18,.82); backdrop-filter:blur(18px); }
.nav-shell { min-height:54px; display:flex; align-items:center; justify-content:space-between; gap:30px; }
.brand { display:inline-flex; align-items:center; gap:11px; font-weight:800; letter-spacing:-.025em; }
.brand-mark { display:grid; place-items:center; width:36px; height:36px; border:1px solid var(--line); border-radius:12px; background:#101621; box-shadow:inset 0 1px rgba(255,255,255,.06); }
.brand-mark svg { width:22px; }
.main-nav { display:flex; align-items:center; gap:27px; }
.main-nav a { color:var(--muted); font-size:.89rem; font-weight:680; transition:color .2s ease; }
.main-nav a:hover, .main-nav a[aria-current="page"] { color:var(--text); }
.nav-cta { padding:10px 15px; border:1px solid var(--line); border-radius:12px; background:rgba(255,255,255,.035); color:var(--text)!important; }
.menu-button { display:none; width:46px; height:46px; padding:0; border:1px solid var(--line); border-radius:13px; background:#101620; }
.menu-button span:not(.sr-only) { display:block; width:20px; height:2px; margin:5px auto; border-radius:2px; background:#fff; transition:.2s ease; }

/* Type and buttons */
.eyebrow { display:flex; align-items:center; gap:10px; margin:0 0 18px; color:#c7cedd; font-size:.72rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.eyebrow::before { content:""; width:22px; height:2px; background:linear-gradient(90deg,var(--accent),var(--accent-2)); }
h1,h2,h3,p { overflow-wrap:anywhere; }
.display-title { max-width:850px; margin:0; font-size:clamp(3.7rem,7vw,7rem); line-height:.96; letter-spacing:-.065em; font-weight:840; }
.gradient-text { color:transparent; background:linear-gradient(100deg,#fff 5%,#aaa2ff 52%,#67def6 100%); background-clip:text; -webkit-background-clip:text; }
.section-title { margin:0; font-size:clamp(2.65rem,5vw,4.8rem); line-height:1; letter-spacing:-.055em; }
.lead { max-width:690px; color:var(--muted); font-size:1.1rem; }
.actions { display:flex; flex-wrap:wrap; gap:13px; margin-top:32px; }
.button { min-height:52px; display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:0 19px; border:1px solid transparent; border-radius:14px; font-size:.91rem; font-weight:780; transition:transform .2s ease, border-color .2s ease, background .2s ease; }
.button:hover { transform:translateY(-2px); }
.button-primary { color:#090c12; background:linear-gradient(110deg,#f1f0ff,#9f96ff 58%,#65dff6); box-shadow:0 14px 38px rgba(112,99,239,.23); }
.button-secondary { border-color:var(--line); background:rgba(255,255,255,.035); }
.button svg, .arrow-link svg { width:17px; fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; }
.arrow-link { display:inline-flex; align-items:center; gap:9px; font-size:.84rem; font-weight:780; }
.arrow-link svg { transition:transform .2s ease; }
.arrow-link:hover svg { transform:translateX(4px); }

/* Home hero */
.hero { min-height:820px; padding:165px 0 96px; display:flex; align-items:center; }
.hero-grid { display:grid; grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr); align-items:center; gap:72px; }
.hero-copy .lead { margin:28px 0 0; }
.hero-meta { display:flex; flex-wrap:wrap; gap:20px; margin-top:42px; padding:0; list-style:none; }
.hero-meta li { color:var(--muted-2); font-size:.78rem; }
.hero-meta strong { display:block; color:var(--text); font-size:.91rem; }
.hero-showcase { position:relative; min-height:585px; }
.showcase-glow { position:absolute; inset:10% 6%; border-radius:50%; background:radial-gradient(circle,rgba(126,113,255,.18),transparent 66%); filter:blur(20px); }
.phone-shot { position:absolute; overflow:hidden; border:1px solid rgba(255,255,255,.16); border-radius:30px; background:#111722; box-shadow:var(--shadow); }
.phone-shot img { width:100%; height:100%; object-fit:cover; }
.phone-shot.main { z-index:3; width:235px; height:420px; top:48%; left:50%; transform:translate(-50%,-50%); }
.phone-shot.left { z-index:2; width:178px; height:318px; left:2%; bottom:6%; transform:rotate(-8deg); opacity:.92; }
.phone-shot.right { z-index:2; width:178px; height:318px; right:1%; top:8%; transform:rotate(8deg); opacity:.92; }
.hero-app-badge { position:absolute; z-index:5; display:flex; align-items:center; gap:10px; padding:10px 13px; border:1px solid var(--line); border-radius:15px; background:rgba(15,20,31,.86); box-shadow:0 16px 45px rgba(0,0,0,.32); backdrop-filter:blur(15px); }
.hero-app-badge img { width:38px; height:38px; border-radius:11px; }
.hero-app-badge strong,.hero-app-badge span { display:block; }
.hero-app-badge strong { font-size:.8rem; }
.hero-app-badge span { color:var(--muted); font-size:.67rem; }
.badge-one { top:5%; left:5%; }
.badge-two { right:2%; bottom:9%; }

.trust-strip { border-block:1px solid var(--line); background:rgba(255,255,255,.018); }
.trust-row { min-height:80px; display:flex; align-items:center; justify-content:space-between; gap:24px; color:#758096; font-size:.74rem; font-weight:780; letter-spacing:.09em; text-transform:uppercase; }
.trust-row i { width:4px; height:4px; flex:0 0 auto; border-radius:50%; background:var(--accent); box-shadow:0 0 12px var(--accent); }

/* Section heading */
.section-heading { display:flex; align-items:end; justify-content:space-between; gap:50px; margin-bottom:50px; }
.section-heading .lead { max-width:450px; margin:0; font-size:1rem; }

/* App cards */
.apps-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.app-card { min-height:470px; position:relative; overflow:hidden; display:flex; flex-direction:column; padding:29px; border:1px solid var(--line); border-radius:var(--radius-lg); background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.012)),rgba(14,19,30,.78); transition:border-color .22s ease, transform .22s ease; }
.app-card:hover { transform:translateY(-4px); border-color:rgba(150,138,255,.34); }
.app-card-head { display:flex; align-items:center; justify-content:space-between; gap:18px; }
.app-identity { display:flex; align-items:center; gap:14px; }
.app-identity img { width:58px; height:58px; border-radius:17px; object-fit:cover; }
.app-identity small { display:block; color:var(--muted); font-size:.68rem; font-weight:760; letter-spacing:.08em; text-transform:uppercase; }
.app-identity h3 { margin:2px 0 0; font-size:1.35rem; line-height:1.15; letter-spacing:-.03em; }
.app-card p { max-width:520px; margin:24px 0 20px; color:var(--muted); font-size:.91rem; }
.tag-list { display:flex; flex-wrap:wrap; gap:8px; margin:0; padding:0; list-style:none; }
.tag-list li { padding:6px 10px; border:1px solid var(--line); border-radius:99px; color:#b8c0d0; background:rgba(255,255,255,.025); font-size:.67rem; }
.card-screenshot { position:absolute; right:-10px; bottom:-45px; width:200px; height:265px; overflow:hidden; border:1px solid rgba(255,255,255,.13); border-radius:25px 25px 0 0; background:#0a0d14; box-shadow:0 24px 60px rgba(0,0,0,.34); transform:rotate(-4deg); }
.card-screenshot img { width:100%; height:100%; object-fit:cover; object-position:top; }
.card-actions { margin-top:auto; padding-top:30px; position:relative; z-index:2; }
.card-actions .arrow-link { padding:12px 15px; border:1px solid var(--line); border-radius:12px; background:rgba(8,11,18,.82); }

/* About block */
.split-block { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.visual-panel { min-height:500px; position:relative; overflow:hidden; border:1px solid var(--line); border-radius:32px; background:radial-gradient(circle at 18% 15%,rgba(141,128,255,.2),transparent 34%),#0d121c; }
.icon-cloud { position:absolute; inset:0; }
.icon-cloud img { position:absolute; width:96px; height:96px; border-radius:26px; box-shadow:var(--shadow); }
.icon-cloud img:nth-child(1){left:14%;top:15%;transform:rotate(-8deg)}
.icon-cloud img:nth-child(2){right:13%;top:23%;transform:rotate(8deg)}
.icon-cloud img:nth-child(3){left:27%;bottom:12%;transform:rotate(4deg)}
.icon-cloud img:nth-child(4){right:22%;bottom:18%;transform:rotate(-6deg)}
.visual-label { position:absolute; left:28px; bottom:27px; z-index:3; color:#d3d8e3; font-size:.75rem; font-weight:790; letter-spacing:.12em; text-transform:uppercase; }
.copy-block p { color:var(--muted); }
.copy-block .section-title { margin-bottom:26px; }

.values-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.value-card { min-height:235px; padding:27px; border:1px solid var(--line); border-radius:var(--radius-md); background:rgba(255,255,255,.02); }
.value-card span { display:grid; width:42px; height:42px; place-items:center; border:1px solid var(--line); border-radius:12px; color:var(--accent-2); font-size:.71rem; font-weight:820; }
.value-card h3 { margin:48px 0 8px; font-size:1.25rem; letter-spacing:-.025em; }
.value-card p { margin:0; color:var(--muted); font-size:.88rem; }

.cta-panel { display:grid; grid-template-columns:1.2fr .8fr; gap:60px; padding:54px; border:1px solid rgba(141,128,255,.25); border-radius:34px; background:radial-gradient(circle at 0 0,rgba(141,128,255,.16),transparent 36%),radial-gradient(circle at 100% 100%,rgba(73,216,243,.1),transparent 34%),#0e131e; box-shadow:var(--shadow); }
.cta-panel .section-title { font-size:clamp(2.4rem,4.5vw,4.2rem); }
.cta-side { align-self:end; }
.cta-side p { margin:0 0 24px; color:var(--muted); }

/* Internal page */
.page-hero { padding:155px 0 92px; }
.breadcrumbs { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:27px; color:var(--muted-2); font-size:.77rem; }
.breadcrumbs a:hover { color:var(--text); }
.app-hero-grid { display:grid; grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr); gap:72px; align-items:center; }
.app-title-row { display:flex; align-items:center; gap:18px; margin-bottom:23px; }
.app-title-row img { width:82px; height:82px; border-radius:23px; }
.app-kicker { margin:0 0 4px; color:var(--muted); font-size:.76rem; font-weight:790; letter-spacing:.1em; text-transform:uppercase; }
.app-page-title { margin:0; font-size:clamp(3.1rem,6vw,5.6rem); line-height:.98; letter-spacing:-.06em; }
.app-hero-copy .lead { margin:25px 0 0; }
.app-facts { display:flex; flex-wrap:wrap; gap:9px; margin-top:26px; }
.app-facts span { padding:7px 11px; border:1px solid var(--line); border-radius:99px; color:#b9c1d0; font-size:.69rem; }
.app-hero-media { min-height:530px; position:relative; }
.media-card { position:absolute; overflow:hidden; border:1px solid rgba(255,255,255,.15); border-radius:28px; background:#111722; box-shadow:var(--shadow); }
.media-card img { width:100%; height:100%; object-fit:contain; object-position:center; }
.media-card:nth-child(1){z-index:3;width:235px;height:420px;left:50%;top:50%;transform:translate(-50%,-50%)}
.media-card:nth-child(2){z-index:2;width:175px;height:312px;left:2%;bottom:3%;transform:rotate(-7deg)}
.media-card:nth-child(3){z-index:2;width:175px;height:312px;right:1%;top:5%;transform:rotate(7deg)}

.features-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.feature-card { min-height:205px; padding:25px; border:1px solid var(--line); border-radius:20px; background:rgba(255,255,255,.022); }
.feature-icon { display:grid; width:42px; height:42px; place-items:center; border-radius:12px; background:rgba(141,128,255,.12); color:#b8b1ff; font-weight:850; }
.feature-card h3 { margin:30px 0 7px; font-size:1.15rem; }
.feature-card p { margin:0; color:var(--muted); font-size:.86rem; }

.screenshot-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.screenshot-item { overflow:hidden; min-height:460px; border:1px solid var(--line); border-radius:25px; background:#0d121c; }
.screenshot-item img { width:100%; height:100%; object-fit:contain; object-position:center; }
.faq-list { display:grid; gap:12px; }
details { border:1px solid var(--line); border-radius:16px; background:rgba(255,255,255,.018); }
summary { cursor:pointer; padding:19px 21px; font-weight:760; list-style:none; }
summary::-webkit-details-marker { display:none; }
details p { margin:0; padding:0 21px 20px; color:var(--muted); font-size:.9rem; }
.related-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.related-card { display:flex; align-items:center; gap:13px; padding:18px; border:1px solid var(--line); border-radius:17px; background:rgba(255,255,255,.02); transition:transform .2s ease,border-color .2s ease; }
.related-card:hover { transform:translateY(-3px); border-color:rgba(141,128,255,.35); }
.related-card img { width:48px; height:48px; border-radius:14px; }
.related-card strong,.related-card small { display:block; }
.related-card small { color:var(--muted); }

/* Text pages */
.text-page { padding:155px 0 100px; min-height:75vh; }
.text-layout { display:grid; grid-template-columns:260px minmax(0,760px); gap:70px; align-items:start; }
.side-nav { position:sticky; top:110px; display:grid; gap:7px; }
.side-nav a { padding:10px 12px; border-radius:10px; color:var(--muted); font-size:.83rem; }
.side-nav a:hover { background:rgba(255,255,255,.04); color:var(--text); }
.prose h1 { margin:0 0 25px; font-size:clamp(3rem,6vw,5rem); line-height:1; letter-spacing:-.055em; }
.prose h2 { margin:48px 0 13px; font-size:1.65rem; letter-spacing:-.03em; }
.prose p,.prose li { color:var(--muted); }
.prose a { color:#c6c0ff; text-decoration:underline; text-underline-offset:3px; }
.contact-box { margin-top:30px; padding:25px; border:1px solid var(--line); border-radius:20px; background:rgba(255,255,255,.025); }
.contact-box p { margin:5px 0; }

/* Footer */
.site-footer { padding:62px 0 25px; border-top:1px solid var(--line); background:rgba(0,0,0,.12); }
.footer-grid { display:grid; grid-template-columns:1fr 1fr; gap:60px; }
.footer-about p { max-width:360px; color:var(--muted); font-size:.84rem; }
.footer-links { display:grid; grid-template-columns:repeat(2,1fr); gap:30px; }
.footer-links div { display:flex; flex-direction:column; gap:9px; }
.footer-links strong { margin-bottom:5px; font-size:.78rem; }
.footer-links a { color:var(--muted); font-size:.8rem; }
.footer-links a:hover { color:var(--text); }
.footer-bottom { display:flex; justify-content:space-between; gap:20px; margin-top:50px; padding-top:22px; border-top:1px solid var(--line); color:#70798b; font-size:.71rem; }

.reveal { opacity:1; transform:none; }
.js .reveal { opacity:0; transform:translateY(24px); transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1); }
.js .reveal.is-visible { opacity:1; transform:none; }

/* Tablet */
@media (max-width: 980px) {
  .hero-grid,.app-hero-grid,.split-block { grid-template-columns:1fr; gap:48px; }
  .hero-copy { text-align:center; }
  .hero-copy .eyebrow,.hero-copy .actions,.hero-meta { justify-content:center; }
  .hero-copy .lead { margin-inline:auto; }
  .hero-showcase,.app-hero-media { width:min(100%,650px); margin-inline:auto; }
  .section-heading { align-items:start; }
  .features-grid { grid-template-columns:repeat(2,1fr); }
  .cta-panel { grid-template-columns:1fr; }
  .text-layout { grid-template-columns:1fr; gap:30px; }
  .side-nav { position:static; display:flex; flex-wrap:wrap; }
}

/* Mobile navigation and layout */
@media (max-width: 780px) {
  .container { width:min(calc(100% - 28px),var(--container)); }
  .section { padding:78px 0; }
  .site-header { padding:11px 0; }
  .menu-button { display:block; }
  .main-nav { position:fixed; top:72px; right:14px; left:14px; display:grid; gap:3px; padding:12px; visibility:hidden; opacity:0; transform:translateY(-10px); border:1px solid var(--line); border-radius:18px; background:rgba(8,11,18,.98); box-shadow:var(--shadow); transition:.2s ease; }
  .main-nav.is-open { visibility:visible; opacity:1; transform:none; }
  .main-nav a { padding:12px 13px; border-radius:10px; }
  .main-nav a:hover { background:rgba(255,255,255,.04); }
  .nav-cta { text-align:center; margin-top:4px; }
  .hero { min-height:auto; padding:128px 0 70px; }
  .display-title { font-size:clamp(3.2rem,14vw,5.2rem); }
  .hero-showcase { min-height:0; display:grid; grid-template-columns:repeat(3,74%); gap:12px; overflow-x:auto; scroll-snap-type:x mandatory; padding:8px 4px 25px; scrollbar-width:none; }
  .hero-showcase::-webkit-scrollbar { display:none; }
  .showcase-glow,.hero-app-badge { display:none; }
  .phone-shot,.phone-shot.main,.phone-shot.left,.phone-shot.right { position:relative; inset:auto; width:100%; height:430px; transform:none; opacity:1; border-radius:24px; scroll-snap-align:center; }
  .phone-shot.main { order:1; }
  .phone-shot.left { order:2; }
  .phone-shot.right { order:3; }
  .trust-row { min-height:68px; justify-content:flex-start; overflow:hidden; white-space:nowrap; gap:18px; }
  .trust-row span:nth-of-type(n+4),.trust-row i:nth-of-type(n+4){display:none}
  .section-heading { display:block; margin-bottom:34px; }
  .section-heading .lead { margin-top:20px; }
  .apps-grid { grid-template-columns:1fr; }
  .app-card { min-height:440px; padding:23px; }
  .card-screenshot { width:165px; height:225px; right:-12px; bottom:-38px; }
  .visual-panel { min-height:410px; }
  .icon-cloud img { width:78px; height:78px; border-radius:22px; }
  .values-grid,.features-grid,.related-grid { grid-template-columns:1fr; }
  .value-card,.feature-card { min-height:185px; }
  .value-card h3 { margin-top:32px; }
  .cta-panel { padding:30px 22px; border-radius:26px; }
  .page-hero { padding:128px 0 70px; }
  .app-title-row { align-items:flex-start; }
  .app-title-row img { width:68px; height:68px; border-radius:19px; }
  .app-page-title { font-size:clamp(2.8rem,13vw,4.5rem); }
  .app-hero-media { min-height:0; display:grid; grid-template-columns:repeat(3,74%); gap:12px; overflow-x:auto; scroll-snap-type:x mandatory; padding:8px 4px 24px; scrollbar-width:none; }
  .app-hero-media::-webkit-scrollbar { display:none; }
  .media-card,.media-card:nth-child(1),.media-card:nth-child(2),.media-card:nth-child(3) { position:relative; inset:auto; width:100%; height:430px; transform:none; scroll-snap-align:center; }
  .screenshot-gallery { grid-template-columns:repeat(3,78%); overflow-x:auto; scroll-snap-type:x mandatory; padding-bottom:10px; scrollbar-width:none; }
  .screenshot-gallery::-webkit-scrollbar { display:none; }
  .screenshot-item { min-height:440px; scroll-snap-align:center; }
  .footer-grid { grid-template-columns:1fr; gap:35px; }
  .footer-bottom { display:block; }
}

@media (max-width: 480px) {
  .display-title { font-size:clamp(2.9rem,15vw,4.15rem); }
  .lead { font-size:1rem; }
  .actions { display:grid; }
  .actions .button { width:100%; }
  .hero-meta { display:grid; grid-template-columns:1fr 1fr; text-align:left; }
  .hero-showcase,.app-hero-media { grid-template-columns:repeat(3,84%); }
  .phone-shot,.phone-shot.main,.phone-shot.left,.phone-shot.right,.media-card,.media-card:nth-child(1),.media-card:nth-child(2),.media-card:nth-child(3) { height:405px; }
  .app-card-head { align-items:flex-start; }
  .app-identity img { width:52px; height:52px; border-radius:15px; }
  .card-screenshot { width:145px; height:200px; }
  .screenshot-gallery { grid-template-columns:repeat(3,86%); }
  .screenshot-item { min-height:410px; }
  .footer-links { grid-template-columns:1fr 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
  .reveal { opacity:1; transform:none; }
}


/* Privacy policy and data deletion */
.privacy-policy h2 { scroll-margin-top:120px; }
.privacy-policy h3 { margin:24px 0 9px; font-size:1.08rem; letter-spacing:-.015em; }
.privacy-policy strong { color:var(--text); }
.policy-date { margin:-10px 0 30px; font-size:.86rem; }
.policy-index { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; margin:30px 0 45px; padding:22px; border:1px solid var(--line); border-radius:20px; background:rgba(255,255,255,.025); }
.policy-index strong { grid-column:1/-1; margin-bottom:3px; }
.policy-index a { padding:7px 9px; border-radius:8px; color:var(--muted); text-decoration:none; background:rgba(255,255,255,.025); }
.policy-index a:hover { color:var(--text); background:rgba(255,255,255,.05); }
.deletion-box { margin-bottom:28px; }
.legal-section { padding-top:0; }
.legal-strip { display:flex; align-items:center; justify-content:space-between; gap:35px; padding:34px; border:1px solid var(--line); border-radius:26px; background:linear-gradient(135deg,rgba(155,143,255,.08),rgba(72,216,243,.025)); }
.legal-strip h2 { margin:0 0 8px; font-size:1.5rem; }
.legal-strip p:not(.eyebrow) { max-width:650px; margin:0; color:var(--muted); }
.legal-actions { display:flex; flex-wrap:wrap; gap:10px; flex:0 0 auto; }
@media (max-width:760px) {
  .policy-index { grid-template-columns:1fr; padding:16px; }
  .policy-index strong { grid-column:auto; }
  .legal-strip { display:block; padding:24px 20px; }
  .legal-actions { margin-top:22px; }
  .legal-actions .button { width:100%; }
}


/* Language switch */
.language-switch { display:inline-flex; min-width:38px; justify-content:center; padding:8px 10px; border:1px solid var(--line); border-radius:10px; color:var(--text)!important; background:rgba(255,255,255,.025); font-size:.76rem!important; letter-spacing:.08em; }
.language-switch:hover { background:rgba(255,255,255,.07); }
@media (max-width:820px) { .language-switch { margin-top:4px; text-align:center; } }

.cookie-banner {
  position: fixed;
  z-index: 1000;
  right: 24px;
  bottom: 24px;
  left: 24px;
  display: flex;
  max-width: 900px;
  margin-inline: auto;
  padding: 20px;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 20px;
  background: rgba(12, 16, 25, 0.96);
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(20px);
}

.cookie-banner__content {
  max-width: 570px;
}

.cookie-banner__content p {
  margin: 0 0 7px;
  color: #d9deea;
  font-size: 0.9rem;
}

.cookie-banner__content a {
  color: #a89fff;
  font-size: 0.82rem;
  text-decoration: underline;
}

.cookie-banner__actions {
  display: flex;
  flex: 0 0 auto;
  gap: 10px;
}

.cookie-button {
  min-height: 42px;
  padding: 0 16px;
  border: 1px solid transparent;
  border-radius: 12px;
  font: inherit;
  font-size: 0.82rem;
  font-weight: 700;
  cursor: pointer;
}

.cookie-button--primary {
  color: #080b13;
  background: linear-gradient(110deg, #f1f1ff, #a79eff, #70dff6);
}

.cookie-button--secondary {
  color: #f6f7fb;
  border-color: rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.05);
}

@media (max-width: 680px) {
  .cookie-banner {
    right: 14px;
    bottom: 14px;
    left: 14px;
    display: block;
    padding: 17px;
  }

  .cookie-banner__actions {
    margin-top: 16px;
  }

  .cookie-button {
    flex: 1;
  }
}