:root {
  --ink:#1b192c; --muted:#706b80; --purple:#7041f5; --purple-dark:#5c2bdd;
  --paper:#f8f7fc; --line:#e8e3ef; --night:#0d0e1c; --radius:16px; --container:1440px;
  --preview-radius:8px; --preview-border:#6d617f;
  --font-body:'Inter',Arial,sans-serif; --font-display:'Manrope','Inter',Arial,sans-serif;
  color-scheme:light; font-family:var(--font-body); font-synthesis:none;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:32px; }
body { margin:0; background:#fff; color:var(--ink); font-size:16px; line-height:1.7; -webkit-font-smoothing:antialiased; }
button,input,select,textarea { font:inherit; }
button,a,input,select,textarea { -webkit-tap-highlight-color:transparent; }
button,a { touch-action:manipulation; }
a { color:inherit; text-decoration:none; }
button { cursor:pointer; }
svg { width:22px; height:22px; flex-shrink:0; }
img { display:block; max-width:100%; height:auto; }
h1,h2,h3,p { margin:0; }
h1,h2,h3 { font-family:var(--font-display); line-height:1.14; letter-spacing:-.045em; font-weight:750; text-wrap:balance; }
h1 { font-size:clamp(44px,4.7vw,70px); }
h2 { font-size:clamp(34px,3.3vw,48px); }
h3 { font-size:27px; letter-spacing:-.035em; }
p { color:var(--muted); }
[hidden] { display:none!important; }
:focus-visible { outline:3px solid #9f7cff; outline-offset:5px; }
::selection { background:#dbcfff; color:#271c46; }
.container { max-width:var(--container); width:calc(100% - 96px); margin-inline:auto; }
.section { padding:100px 0; }
.eyebrow { display:inline-flex; align-items:center; gap:10px; color:#bba5f8; font-size:12px; letter-spacing:.13em; font-weight:650; line-height:1.6; }
.eyebrow.purple { color:#7650bd; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:15px; min-height:54px; padding:15px 25px; border:1px solid transparent; border-radius:12px; font-size:15px; font-weight:600; line-height:1.45; white-space:nowrap; transition:background .2s,transform .2s,box-shadow .2s,border-color .2s; }
.button svg { width:19px; height:19px; transition:transform .2s; }
.button:hover { transform:translateY(-2px); }
.button:hover svg { transform:translateX(3px); }
.primary { color:#fff; background:linear-gradient(140deg,#8052ff,#6736ed); box-shadow:0 4px 12px #5b2cca18,inset 0 1px 0 #ffffff24; }
.primary:hover { background:var(--purple-dark); box-shadow:0 8px 24px #5b2cca30; }
.outline { color:#f2edf9; background:#ffffff03; border-color:#ffffff30; }
.outline:hover { background:#ffffff09; border-color:#9c7ed9; }
.outline-dark { color:#393044; background:#fff; border-color:#d9cdec; }
.outline-dark:hover { background:#f8f4ff; border-color:#b89ae4; }
.light { background:#fff; color:#4a306c; }
.text-link { display:inline-flex; align-items:center; gap:10px; color:#7041cc; font-size:14px; font-weight:600; line-height:1.5; }
.text-link svg { width:19px; height:19px; }
.text-link:hover { text-decoration:underline; text-underline-offset:5px; }
.brand { display:inline-flex; align-items:center; font-family:var(--font-display); font-size:31px; line-height:1; letter-spacing:-1.6px; font-weight:800; }
.brand>span { color:#9b76ff; }
.brand i { align-self:flex-start; padding:2px 0 0 7px; color:#9b76ff; font-size:15px; letter-spacing:0; font-style:normal; }
.skip { position:fixed; top:-100px; left:16px; z-index:100; padding:12px 18px; border-radius:8px; background:#fff; color:var(--ink); }
.skip:focus { top:10px; }
.mobile-only { display:none; }

/* Navigation */
.site-header { position:relative; z-index:10; height:96px; background:#fff; border-bottom:1px solid var(--line); }
.site-header.on-dark { color:#fff; background:var(--night); border-color:#ffffff0f; }
.header-inner { display:flex; align-items:center; height:100%; gap:35px; }
.header-inner nav { display:flex; align-items:center; gap:27px; margin-left:auto; }
.header-inner nav a { position:relative; padding:12px 0; color:#716a7e; font-size:14px; font-weight:500; white-space:nowrap; }
.header-inner nav a:hover,.header-inner nav a[aria-current] { color:var(--purple); }
.on-dark nav a { color:#aeabba; }
.on-dark nav a:hover,.on-dark nav a[aria-current] { color:#d5c1ff; }
.header-inner nav a[aria-current]::after { content:''; position:absolute; bottom:3px; left:0; right:0; height:2px; border-radius:2px; background:#9874ed; }
.header-cta { min-height:48px; padding:12px 21px; font-size:13px; }
.header-cta svg { display:none; }
.menu-toggle { display:none; width:46px; height:46px; padding:11px; border:1px solid #ffffff20; border-radius:9px; color:inherit; background:transparent; }
.inner .menu-toggle { border-color:var(--line); }
.menu-toggle span { display:block; width:22px; height:2px; margin:5px 0; background:currentColor; transition:transform .2s; }
.menu-toggle[aria-expanded=true] span:first-child { transform:translateY(3.5px) rotate(45deg); }
.menu-toggle[aria-expanded=true] span:last-child { transform:translateY(-3.5px) rotate(-45deg); }

/* Hero */
.hero { position:relative; overflow:hidden; color:#fff; background:radial-gradient(ellipse at 80% 54%,#59308226,transparent 48%),radial-gradient(ellipse at 65% 100%,#21335933,transparent 44%),var(--night); }
.hero::after { content:''; position:absolute; inset:0; pointer-events:none; background:linear-gradient(transparent 98%,#ffffff02 98%),linear-gradient(90deg,transparent 98%,#ffffff02 98%); background-size:96px 96px; mask-image:linear-gradient(90deg,transparent 30%,#000); }
.hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:1fr 1.06fr; align-items:center; gap:52px; min-height:650px; padding-block:70px; }
.hero-copy { padding-bottom:14px; }
.hero-copy .eyebrow { margin-bottom:26px; }
.status-dot { width:6px; height:6px; border-radius:50%; background:#b794ff; box-shadow:0 0 12px #af80ff; }
.hero h1 { color:#f8f7ff; font-size:clamp(44px,4.55vw,70px); line-height:1.12; letter-spacing:-.055em; text-wrap:initial; }
.hero h1 em { font-style:normal; background:linear-gradient(100deg,#c6abff,#9b72ff); background-clip:text; color:transparent; }
.hero-copy>p { max-width:590px; margin-top:27px; color:#aca9bd; font-size:17px; line-height:1.8; }
.hero-actions { display:flex; gap:12px; margin-top:34px; }
.hero-caption { display:flex; align-items:center; gap:10px; margin-top:26px; color:#9993ad; font-size:13px; }
.tiny-check { display:inline-grid; place-items:center; width:20px; height:20px; border:1px solid #ffffff25; border-radius:50%; background:#ffffff04; color:#c7adff; font-size:11px; }
.hero-art { position:relative; height:auto; min-height:465px; padding:14px 0 38px; perspective:1500px; }
.hero-browser { position:relative; width:100%; margin:14px 0 0 auto; border:1px solid #9686b34a; border-radius:16px; overflow:hidden; background:#181524; box-shadow:0 28px 70px #0005,0 0 70px #9670f312; transform:rotate(-3deg) rotateY(-4deg); }
.browser-bar { display:flex; align-items:center; justify-content:space-between; gap:12px; height:39px; padding:0 16px; border-bottom:1px solid #ffffff0b; background:#1c1929; color:#a59caf; font-size:11px; }
.browser-bar>div { display:flex; gap:4px; }
.browser-bar i,.mini-browser i,.preview-toolbar i { display:inline-block; width:5px; height:5px; margin-right:2px; border-radius:50%; background:#a092b566; }
.browser-bar svg { width:14px; height:14px; }
.hero-browser>img { width:100%; aspect-ratio:1.5; object-fit:cover; object-position:top; }
.hero-browser-caption { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:13px 17px; color:#a69bb5; font-size:11px; }
.hero-browser-caption>span:first-child { display:flex; align-items:center; gap:8px; color:#eae1f3; }
.hero-browser-caption svg { width:14px; height:14px; color:#b598f5; }
.floating-preview { position:absolute; right:-13px; bottom:-18px; width:43%; border:1px solid #b6a2c84d; border-radius:13px; overflow:hidden; background:#201a2b; box-shadow:0 15px 40px #0006; transform:rotate(4deg); }
.floating-preview>img { width:100%; aspect-ratio:1.5; object-fit:cover; object-position:top; }
.floating-preview>span { display:flex; justify-content:space-between; padding:11px 13px; color:#ddd3e7; font-size:11px; }
.floating-preview svg { width:14px; height:14px; }
.floating-preview .mini-browser { height:27px; background:#2c2237; }
.floating-label { position:absolute; bottom:0; left:-18px; display:flex; align-items:center; gap:12px; padding:15px 19px; border:1px solid #baa0e829; border-radius:12px; background:#201a2de8; backdrop-filter:blur(16px); box-shadow:0 8px 25px #0002; transform:rotate(-2deg); }
.floating-label>svg { width:29px; height:29px; color:#bd9aee; }
.floating-label b { display:block; font-size:13px; font-weight:600; }
.floating-label span { display:block; margin-top:2px; color:#aaa0bb; font-size:11px; }
.art-orbit { position:absolute; left:-35px; right:-30px; border:1px solid #b595f90b; border-radius:50%; pointer-events:none; }
.orbit-one { top:-22px; bottom:-20px; transform:rotate(-25deg); }
.orbit-two { top:-45px; bottom:-40px; transform:rotate(20deg); }
.art-spark { position:absolute; color:#b59ae2; font-size:30px; }
.spark-one { left:5px; top:-13px; }
.spark-two { right:8px; top:-15px; font-size:22px; }
.benefits { border-top:1px solid #ffffff0c; background:#111120; color:#e1d9ed; }
.benefits-grid { display:grid; grid-template-columns:repeat(4,1fr); padding-block:31px; }
.benefits-grid>div { display:flex; align-items:center; gap:15px; padding:0 25px; border-right:1px solid #ffffff0c; }
.benefits-grid>div:first-child { padding-left:0; }
.benefits-grid>div:last-child { border:0; padding-right:0; }
.benefits-grid svg { width:28px; height:28px; color:#ac88ed; }
.benefits-grid span { font-size:14px; line-height:1.6; }
.benefits-grid small { display:block; margin-top:3px; color:#8a839d; font-size:12px; }

/* Two columns at intermediate widths; three equal alternatives on desktop. */
.catalog { background:linear-gradient(180deg,#faf9fd,#f6f4fa); }
.section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:36px; margin-bottom:42px; }
.section-heading .eyebrow { margin-bottom:16px; }
.section-heading>p { max-width:435px; padding-bottom:3px; font-size:15px; line-height:1.8; }
.catalog-toolbar { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:24px; margin-bottom:31px; }
.filters { display:flex; flex-wrap:wrap; gap:9px; }
.filters button { min-height:45px; padding:10px 19px; border:1px solid #e3ddec; border-radius:100px; background:#ffffffbd; color:#736a82; font-size:13px; font-weight:500; transition:background .2s,border-color .2s,box-shadow .2s; }
.filters button span { margin-left:6px; padding:2px 5px; border-radius:5px; background:#ffffff24; font-size:11px; }
.filters button.active { background:#7440e6; border-color:#7440e6; color:#fff; box-shadow:0 4px 12px #703ada20; }
.filters button:hover { border-color:#b599d9; }
.catalog-count { color:#6f647b; font-size:12px; white-space:nowrap; }
.model-grid { --model-gap:30px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--model-gap); }
.model-card { display:flex; flex-direction:column; min-width:0; overflow:hidden; border:1px solid #e5dfed; border-radius:var(--radius); background:#fff; box-shadow:0 5px 20px #30214504; transition:box-shadow .25s,transform .25s,border-color .25s; }
.model-card:hover { transform:translateY(-4px); border-color:#d1c1e4; box-shadow:0 16px 44px #36204f10; }
.card-visual { position:relative; display:block; padding:18px 18px 0; overflow:hidden; background:color-mix(in srgb,var(--model-accent) 10%,#f4f0fa); }
.card-visual::before { content:''; position:absolute; inset:0; pointer-events:none; background:linear-gradient(140deg,color-mix(in srgb,var(--model-accent) 12%,#fff),color-mix(in srgb,var(--model-accent) 5%,#f8f5fb)); }
.card-visual img { position:relative; width:100%; aspect-ratio:1.5; object-fit:contain; border:1px solid #0000000c; border-top:0; border-radius:0 0 4px 4px; box-shadow:0 9px 18px #29182e12; }
.mini-browser { position:relative; display:flex; align-items:center; gap:3px; height:32px; padding:0 11px; border:1px solid #0000000b; border-radius:7px 7px 0 0; background:#fff; }
.mini-browser i { flex-shrink:0; width:5px; height:5px; background:#c6becf; }
.mini-browser span { flex:1; margin-right:24px; text-align:center; color:#71677d; font-size:10px; }
.card-overlay { position:absolute; left:0; right:0; bottom:0; display:flex; align-items:center; justify-content:center; gap:10px; padding:18px; background:#24172eea; color:#fff; backdrop-filter:blur(8px); font-size:14px; font-weight:500; transform:translateY(100%); transition:transform .25s; }
.model-card:hover .card-overlay,.card-visual:focus-visible .card-overlay { transform:none; }
.card-overlay svg { width:18px; height:18px; }
.card-content { display:flex; flex:1; flex-direction:column; padding:29px 30px 23px; }
.card-meta { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:16px; color:#7f668e; font-size:12px; }
.card-meta>span:first-child { padding:5px 9px; border-radius:6px; background:#f4eef9; color:#795987; }
.card-meta>span:last-child { display:flex; align-items:center; gap:7px; }
.card-meta svg { width:15px; height:15px; }
.card-content h3 { font-size:31px; }
.card-content>p { flex:1; margin-top:13px; color:#7b6d86; font-size:16px; line-height:1.75; }
.card-bottom { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-top:25px; padding-top:20px; border-top:1px solid #eee8f3; }
.card-bottom>span { color:#7f668e; font-size:13px; }
.card-bottom>a { display:inline-flex; align-items:center; gap:11px; min-height:42px; padding:8px 12px; border-radius:9px; background:#f5effb; color:#70438f; font-size:13px; font-weight:600; }
.card-bottom>a:hover { background:#ede0f8; }
.card-bottom svg { width:18px; height:18px; }
.model-grid>.model-card { width:100%; }
.catalog-tail { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-top:34px; }
.catalog-tail>span { display:flex; align-items:center; gap:9px; color:#6f647b; font-size:13px; }
.catalog-tail>span svg { width:18px; height:18px; color:#a085b3; }
.catalog-tail .text-link { font-size:13px; }
.search { display:flex; align-items:center; gap:12px; color:#71677d; font-size:12px; }
.search input { width:230px; min-height:45px; padding:11px 14px; border:1px solid #e1d8ea; border-radius:10px; background:#fff; color:var(--ink); font-size:13px; }
.search input:focus { border-color:#b998d2; }
.empty-state { padding:75px 30px; border:1px dashed #cdb7e0; border-radius:14px; background:#fff; text-align:center; font-size:16px; }

/* Narrative, FAQ, and footer */
.process { background:#fff; }
.steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:30px; margin-top:52px; }
@media (min-width:701px) and (max-width:1100px) { .steps { grid-template-columns:repeat(2,minmax(0,1fr)); } }
.steps article { position:relative; padding-top:28px; border-top:1px solid var(--line); }
.step-number { display:block; margin-bottom:23px; color:#756883; font-size:13px; font-weight:500; letter-spacing:.04em; }
.steps h3 { margin-bottom:17px; font-size:25px; }
.steps p { max-width:380px; font-size:15px; line-height:1.85; }
.faq-section { border-top:1px solid #ece6f3; background:#faf8fc; }
.faq-grid { display:grid; grid-template-columns:1fr 1.5fr; gap:95px; }
.faq-grid h2 { margin-top:18px; }
.faq-grid>div>p { margin-top:24px; font-size:16px; }
.faq-grid .text-link { margin-top:26px; }
.faq-list details { border-bottom:1px solid #e5ddea; }
.faq-list summary { display:flex; align-items:center; gap:20px; padding:26px 0; list-style:none; cursor:pointer; font-size:16px; font-weight:550; line-height:1.6; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary>span { color:#756883; font-size:12px; font-weight:400; }
.faq-list summary>i { margin-left:auto; color:#9467b5; font-size:24px; font-style:normal; line-height:1; transition:transform .2s; }
.faq-list details[open] summary>i { transform:rotate(45deg); }
.faq-list details>p { padding:0 30px 26px 37px; font-size:15px; line-height:1.85; }
.cta-section { padding:28px 0 75px; background:#faf8fc; }
.cta-panel { position:relative; display:flex; align-items:center; justify-content:space-between; gap:38px; padding:58px 65px; border:1px solid #ffffff10; border-radius:25px; overflow:hidden; background:radial-gradient(ellipse at 90% 30%,#79559732,transparent 56%),#21172f; color:#fff; }
.cta-panel::after { content:'✦'; position:absolute; right:16%; top:-50px; font-size:390px; line-height:1; color:#b69dd806; pointer-events:none; }
.cta-panel h2 { margin-top:18px; color:#f5edf9; font-size:42px; }
.cta-panel p { margin-top:23px; color:#b5a4c2; font-size:15px; line-height:1.85; }
.cta-panel .button { position:relative; z-index:1; }
.site-footer { padding:52px 0 25px; border-top:1px solid #ece6f3; background:#fff; }
.footer-top { display:flex; align-items:flex-start; justify-content:space-between; gap:44px; }
.footer-top .brand { font-size:29px; }
.footer-top p { margin-top:17px; font-size:14px; line-height:1.7; }
.footer-links { display:grid; grid-template-columns:repeat(2,max-content); gap:8px 28px; padding-top:8px; color:#705b7d; font-size:14px; }
.footer-links a { display:flex; align-items:center; min-height:32px; }
.footer-links a:hover { color:var(--purple); }
.footer-note { padding-top:5px; color:#7f668e; text-align:right; font-size:12px; line-height:1.9; }
.footer-bottom { display:flex; align-items:center; justify-content:space-between; gap:30px; margin-top:38px; padding-top:23px; border-top:1px solid #efe7f4; color:#7f668e; font-size:12px; }
.footer-bottom a { margin-right:auto; }
.footer-bottom a:hover { color:var(--purple); }

/* Inner pages and previews */
.page-intro { padding:74px 0 67px; border-bottom:1px solid #ece5f2; background:radial-gradient(ellipse at 90% 0,#ede0f950,transparent 48%),#faf8fc; }
.page-intro h1 { max-width:1000px; margin-top:21px; font-size:clamp(44px,4.4vw,66px); }
.page-intro p { max-width:760px; margin-top:28px; font-size:17px; line-height:1.85; }
.inner .catalog { padding-top:55px; }
.inner .catalog .section-heading { display:none; }
.breadcrumb { display:flex; align-items:center; flex-wrap:wrap; gap:13px; padding-top:31px; color:#7f668e; font-size:12px; }
.breadcrumb a { color:#7f668e; }
.breadcrumb a:hover { color:var(--purple); }
.detail-hero { padding:49px 0 78px; background:linear-gradient(180deg,#fff,#faf8fc); }
.detail-grid { display:grid; grid-template-columns:.9fr 1.15fr; align-items:center; gap:65px; }
.detail-hero h1 { margin-top:19px; font-size:clamp(46px,4.4vw,66px); }
.detail-tagline { max-width:550px; margin-top:23px; color:#55405f; font-size:22px; line-height:1.55; }
.detail-description { max-width:580px; margin-top:23px; font-size:16px; line-height:1.85; }
.detail-features { display:grid; grid-template-columns:1fr 1fr; gap:14px 16px; margin-top:27px; color:#796088; font-size:13px; }
.detail-features>span { display:flex; align-items:center; gap:9px; }
.detail-features svg { width:19px; height:19px; padding:2px; border-radius:50%; background:#f1e5f8; color:#a171bc; }
.detail-actions { display:flex; flex-wrap:wrap; gap:11px; margin-top:33px; }
.detail-actions .button { min-width:0; padding:15px 22px; gap:11px; font-size:14px; white-space:normal; text-align:center; }
.demo-note { margin-top:19px; color:#7f668e; font-size:12px; }
.detail-cover { padding:18px; border:1px solid var(--preview-border); border-radius:var(--preview-radius); background:color-mix(in srgb,var(--model-accent) 8%,#f5edf9); }
.detail-cover .mini-browser { height:35px; }
.detail-cover>img { width:100%; aspect-ratio:1.5; object-fit:contain; border:0; border-radius:0 0 4px 4px; }
.page-gallery { border-block:1px solid #ece4f2; background:#f9f6fb; }
.page-gallery .section-heading h2 { font-size:42px; }
.page-tabs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; margin-bottom:32px; }
.page-tabs button { display:grid; grid-template-columns:auto 1fr; align-items:center; gap:15px 9px; padding:15px; border:1px solid #e2d6ec; border-radius:14px; background:#fff; color:#7f668e; text-align:left; font-size:14px; font-weight:550; transition:box-shadow .2s,border-color .2s; }
.page-tabs button[aria-selected=true] { border-color:#a578c8; color:#67467c; box-shadow:0 0 0 1px #a578c8,0 7px 20px #9460b00c; }
.page-tabs button:hover { border-color:#b990d2; }
.tab-number { color:#756883; font-size:12px; font-weight:400; }
.page-tabs img { grid-column:1/-1; width:100%; aspect-ratio:1.5; object-fit:contain; border:1px solid #eee7f3; border-radius:5px; }
.preview-panel { border:1px solid #dfd1e9; border-radius:18px; overflow:hidden; background:#fff; box-shadow:0 12px 40px #3e264508; }
.preview-toolbar { display:flex; align-items:center; justify-content:space-between; gap:22px; padding:19px 24px; border-bottom:1px solid var(--line); background:#fff; color:#7f668e; font-size:13px; }
.preview-toolbar i { width:6px; height:6px; margin-right:4px; }
.preview-toolbar .text-link { font-size:13px; }
.preview-panel img { width:100%; max-height:none; object-fit:contain; }
.page-gallery-note { display:flex; align-items:center; gap:11px; margin-top:24px; color:#7f668e; font-size:12px; }
.page-gallery-note svg { width:19px; height:19px; }
.page-gallery-note>span { margin-left:auto; color:#7f668e; }
.included-grid { display:grid; grid-template-columns:1.2fr 1fr; align-items:center; gap:85px; }
.included-grid h2 { margin-top:18px; font-size:40px; }
.included-grid p { margin-top:25px; font-size:15px; }
.included-grid ul { margin:0; padding:0; list-style:none; color:#7f668e; font-size:16px; }
.included-grid li { display:flex; align-items:center; gap:14px; padding:18px 0; border-bottom:1px solid var(--line); }
.included-grid svg { width:19px; height:19px; color:#9b6cb6; }
.related { border-top:1px solid var(--line); background:#faf8fc; }
.related h2 { font-size:38px; }
.model-grid.related-grid { max-width:none; grid-template-columns:repeat(2,minmax(0,1fr)); }
.about-grid { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:85px; }
.about-grid h2 { margin-top:19px; font-size:41px; }
.about-grid p { margin-top:25px; font-size:16px; line-height:1.85; }
.about-image { padding:18px 18px 0; border:1px solid var(--preview-border); border-radius:var(--preview-radius); overflow:hidden; background:#f3e8f5; }
.about-image img { border:0; border-radius:4px; }
.about-image>span { display:flex; align-items:center; justify-content:center; gap:10px; padding:21px; color:#7f668e; font-size:13px; }
.about-image svg { width:20px; height:20px; }
.about-pills { display:flex; flex-wrap:wrap; gap:9px; margin-top:28px; }
.about-pills span { padding:8px 14px; border:1px solid var(--line); border-radius:99px; color:#7f668e; font-size:12px; }
.narrow { max-width:900px; }
.faq-full { padding-top:39px; }
.faq-full summary { padding:29px 0; font-size:17px; }
.faq-full details p { font-size:16px; }
.faq-tail { display:flex; align-items:center; justify-content:space-between; gap:23px; margin-top:44px; }
.faq-tail p { font-size:16px; }
.contact-section { padding-top:72px; }
.contact-grid { display:grid; grid-template-columns:.8fr 1.4fr; grid-template-areas:"aside form"; gap:110px; }
.contact-grid aside { grid-area:aside; padding-top:20px; }
.contact-grid aside h2 { font-size:44px; }
.contact-grid aside>p { margin-top:26px; font-size:16px; line-height:1.85; }
.contact-checklist { display:grid; gap:23px; padding:0; margin:39px 0; list-style:none; color:#7f668e; font-size:15px; }
.contact-checklist li { display:flex; align-items:center; gap:15px; }
.contact-checklist span { padding:6px 9px; border-radius:6px; background:#f7effb; color:#765a82; font-size:12px; }
.contact-aside-note { margin-top:48px; padding-top:25px; border-top:1px solid var(--line); color:#7f668e; font-size:14px; line-height:1.85; }
.contact-aside-note svg { width:20px; height:20px; margin-right:6px; vertical-align:middle; }
.contact-direct { display:flex; align-items:center; gap:10px; margin-bottom:20px; color:#7f668e; font-size:16px; overflow-wrap:anywhere; }
.offer-form { grid-area:form; padding:42px; border:1px solid #e8d6ee; border-radius:23px; background:#fff; box-shadow:0 15px 40px #51254c04; }
.offer-form h2 { font-size:29px; letter-spacing:-.03em; }
.form-intro { margin-top:14px; margin-bottom:31px; font-size:15px; }
.offer-form label { display:flex; flex-wrap:wrap; gap:0 5px; margin-bottom:24px; color:#7f668e; font-size:14px; font-weight:500; }
.offer-form label>span { color:#805e90; }
.offer-form input,.offer-form select,.offer-form textarea { width:100%; min-height:52px; margin-top:10px; padding:13px 15px; border:1px solid #e5d0eb; border-radius:10px; background:#fdfbfe; color:var(--ink); font-size:16px; transition:border-color .2s,box-shadow .2s; }
.offer-form textarea { resize:vertical; line-height:1.7; }
.offer-form input::placeholder,.offer-form textarea::placeholder { color:#7f668e; font-size:14px; }
.offer-form input:focus,.offer-form select:focus,.offer-form textarea:focus { border-color:#bf85cb; outline:3px solid #f6e7fa; outline-offset:1px; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.form-privacy { margin-bottom:26px; font-size:13px; line-height:1.85; }
.form-privacy a { text-decoration:underline; text-underline-offset:3px; }
.offer-form>.button { width:100%; }
.offer-form #form-status { margin-top:23px; padding:22px; border-radius:11px; background:#f8ecfb; font-size:14px; }
.offer-form #form-status p { margin-bottom:13px; color:#7f668e; line-height:1.85; }
.prose h2 { margin-bottom:20px; font-size:29px; }
.prose p { margin-bottom:39px; font-size:16px; line-height:1.9; }
.not-found { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; min-height:560px; padding-block:78px; }
.not-found h1 { margin-top:24px; }
.not-found p { margin-top:28px; font-size:18px; }
.not-found .button { margin-top:34px; }

/* Inner-page palette shares the homepage hero's navy, violet and lavender. */
body.inner {
  --ink:#f8f7ff; --muted:#aca9bd; --line:#ffffff17;
  --surface:#171626; --surface-raised:#201b30; --accent:#c3a7ff;
  color-scheme:dark; background:var(--night);
}
.inner .site-header { background:var(--night); border-color:var(--line); }
.inner .header-inner nav { background:var(--night); }
.inner .header-inner nav a { color:#aeabba; }
.inner .header-inner nav a:hover,.inner .header-inner nav a[aria-current] { color:#d5c1ff; }
.inner .skip { color:#1b192c; }
.inner .page-intro { border-color:var(--line); background:radial-gradient(ellipse at 80% 54%,#59308226,transparent 48%),radial-gradient(ellipse at 65% 100%,#21335933,transparent 44%),var(--night); }
.inner .detail-hero { background:radial-gradient(ellipse at 85% 45%,#59308226,transparent 55%),var(--night); }
.inner :is(.catalog,.page-gallery,.related,.faq-section) { background:#111120; border-color:var(--line); }
.inner :is(.process,.cta-section,.site-footer) { background:var(--night); border-color:var(--line); }
.inner :is(.eyebrow.purple,.text-link,.breadcrumb a:hover) { color:var(--accent); }
.inner :is(.breadcrumb,.breadcrumb a,.catalog-count,.catalog-tail>span,.search,.card-meta,.card-bottom>span,.demo-note,.page-gallery-note,.page-gallery-note>span,.included-grid ul,.about-image>span,.about-pills span,.contact-checklist,.contact-aside-note,.contact-direct,.offer-form label,.footer-links,.footer-note,.footer-bottom) { color:var(--muted); }
.inner :is(.catalog-tail>span svg,.included-grid svg,.faq-list summary>i,.detail-features svg) { color:var(--accent); }
.inner :is(.footer-links a:hover,.footer-bottom a:hover) { color:#d5c1ff; }
.inner :is(.filters button,.search input,.empty-state,.model-card,.page-tabs button,.preview-panel,.offer-form) { border-color:var(--line); background:var(--surface); color:var(--ink); }
.inner .filters button { color:#c2bdce; }
.inner .filters button.active { background:#7440e6; border-color:#9063f4; color:#fff; }
.inner :is(.filters button:hover,.model-card:hover,.page-tabs button:hover) { border-color:#9874ed; }
.inner .model-card { box-shadow:0 8px 28px #00000018; }
.inner .model-card:hover { box-shadow:0 16px 44px #0003; }
.inner :is(.card-visual,.detail-cover,.about-image) { background:var(--surface-raised); border-color:var(--line); }
.inner :is(.detail-cover,.about-image) { border-color:var(--preview-border); }
.inner .card-visual::before { background:linear-gradient(140deg,#29213b,#171626); }
.inner .mini-browser { background:#241e33; border-color:var(--line); }
.inner .mini-browser span { color:#b5a8c7; }
.inner .mini-browser i { background:#8f7ba9; }
.inner :is(.card-visual img,.detail-cover>img,.page-tabs img) { border-color:var(--line); }
.inner .card-meta>span:first-child { background:#a77cf51c; color:#c3a7ff; }
.inner .card-content>p { color:var(--muted); }
.inner :is(.card-bottom,.faq-list details,.included-grid li,.footer-bottom) { border-color:var(--line); }
.inner .card-bottom>a { background:#a77cf51c; color:#d5c1ff; }
.inner .card-bottom>a:hover { background:#a77cf530; }
.inner .outline-dark { background:#ffffff03; color:#f2edf9; border-color:#ffffff30; }
.inner .outline-dark:hover { background:#ffffff09; border-color:#9c7ed9; }
.inner .detail-tagline { color:#ddd5ed; }
.inner .detail-features { color:#bba5d3; }
.inner :is(.detail-features svg,.contact-checklist span) { background:#a77cf51c; color:var(--accent); }
.inner .page-tabs button { color:#c2bdce; }
.inner .page-tabs button[aria-selected=true] { background:#241d37; border-color:#a783fa; color:#e5d7ff; box-shadow:0 0 0 1px #a783fa,0 7px 20px #0002; }
.inner .tab-number { color:#b5a0d0; }
.inner .preview-toolbar { background:#201b30; color:#c2bdce; }
.inner .faq-list summary>span { color:#b5a0d0; }
.inner :is(.offer-form input,.offer-form select,.offer-form textarea) { background:#0f101f; border-color:#ffffff25; }
.inner .search input::placeholder,.inner .offer-form input::placeholder,.inner .offer-form textarea::placeholder { color:#9c97af; }
.inner :is(.search input:focus,.offer-form input:focus,.offer-form select:focus,.offer-form textarea:focus) { border-color:#ad87ff; outline:3px solid #a77cf533; }
.inner .offer-form label>span { color:#c3a7ff; }
.inner .offer-form #form-status { background:#251d36; border:1px solid #a77cf540; }
.inner .offer-form #form-status p { color:#c2bdce; }

.hero-offer { margin-top:22px; }
.hero-offer p { color:#eee6ff; font-size:16px; font-weight:600; line-height:1.65; }
.hero-offer a { display:inline-flex; align-items:center; gap:8px; min-height:44px; margin-top:4px; color:#d5c1ff; font-size:14px; text-decoration:underline; text-underline-offset:4px; }
.hero-offer svg { width:17px; height:17px; }
.hero h1 em { background:none; color:#bfa0ff; }
.inner .step-number { color:#b5a0d0; }
.filters button span { background:transparent; }
@media(min-width:1200px) {
  .model-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .card-content { padding:24px; }
  .card-content h3 { font-size:28px; }
  .card-bottom { flex-wrap:wrap; gap:12px; }
}

@media(min-width:1600px) {
  .hero-grid { min-height:730px; } .hero-art { min-height:510px; }
}
@media(max-width:1200px) {
  .container { width:calc(100% - 64px); } .header-inner { gap:23px; } .header-inner nav { gap:19px; }
  .hero-grid { gap:32px; min-height:590px; padding-block:58px; } .hero-art { min-height:375px; }
  .hero-copy>p { font-size:16px; } .hero-actions { flex-wrap:wrap; gap:10px; }
  .hero-actions .button { padding:14px 20px; font-size:14px; } .hero-caption { font-size:12px; }
  .floating-label { left:-12px; bottom:-4px; padding:13px 15px; } .floating-preview { bottom:-10px; right:-8px; }
  .benefits-grid>div { gap:12px; padding-inline:17px; } .benefits-grid span { font-size:13px; } .benefits-grid small { font-size:11px; }
  .catalog-toolbar { align-items:flex-start; } .catalog-count { padding-top:12px; }
  .search { flex-direction:column; align-items:flex-start; gap:7px; } .search input { width:205px; }
  .filters button { padding-inline:15px; } .model-grid { --model-gap:25px; } .card-content { padding:26px; }
  .detail-grid { gap:38px; } .detail-features { grid-template-columns:1fr; gap:10px; }
  .detail-actions .button { padding:14px 18px; font-size:13px; } .detail-tagline { font-size:21px; }
  .contact-grid { gap:65px; } .footer-note { display:none; }
}
@media(max-width:1024px) {
  .site-header { height:84px; } .brand { font-size:30px; } .header-inner { gap:18px; }
  .header-cta { margin-left:auto; } .menu-toggle { display:block; order:3; }
  .header-inner nav { display:none; position:absolute; top:84px; left:0; right:0; padding:20px 32px 28px; border-bottom:1px solid var(--line); background:#fff; box-shadow:0 15px 25px #0000000c; flex-direction:column; align-items:stretch; gap:0; }
  .header-inner nav.is-open { display:flex; } .header-inner nav a { padding:13px 7px; font-size:16px; }
  .header-inner nav a[aria-current]::after { display:none; } .on-dark nav { background:#181425; border-color:#ffffff10; }
  .hero-grid { min-height:530px; gap:29px; } .hero h1 { font-size:43px; } .hero-art { min-height:330px; }
  .hero-copy>p { font-size:15px; } .hero-caption { font-size:12px; } .floating-label b { font-size:12px; }
  .floating-label span,.floating-preview>span { font-size:10px; } .hero-browser-caption { font-size:10px; padding:12px; }
  .section { padding:78px 0; } .section-heading h2 { font-size:39px; } .section-heading>p { max-width:360px; font-size:14px; }
  .benefits-grid { grid-template-columns:1fr 1fr; gap:25px 20px; padding-block:28px; }
  .benefits-grid>div,.benefits-grid>div:first-child { padding-inline:0; border:0; }
  .benefits-grid span { font-size:14px; } .benefits-grid small { font-size:12px; }
  .card-content h3 { font-size:28px; } .card-meta { font-size:11px; }
  .card-bottom { gap:11px; } .card-bottom>span { font-size:12px; } .card-bottom>a { font-size:12px; gap:6px; padding-inline:10px; }
  .catalog-tail { align-items:flex-start; } .catalog-tail>span { max-width:50%; }
  .steps { gap:30px; } .steps h3 { font-size:23px; } .faq-grid { gap:45px; }
  .cta-panel { padding:43px; } .cta-panel h2 { font-size:35px; }
  .detail-grid { grid-template-columns:1fr 1fr; gap:30px; } .detail-hero h1 { font-size:47px; }
  .detail-description { font-size:15px; } .detail-cover { padding:13px; }
  .page-tabs { gap:12px; } .page-tabs button { padding:12px; font-size:13px; }
  .page-gallery .section-heading h2 { font-size:36px; } .included-grid { gap:40px; } .included-grid h2 { font-size:34px; }
  .about-grid { gap:45px; } .about-grid h2 { font-size:35px; }
  .contact-grid { grid-template-columns:.85fr 1.4fr; gap:35px; } .contact-grid aside h2 { font-size:37px; }
  .offer-form { padding:29px; } .offer-form h2 { font-size:27px; } .form-row { grid-template-columns:1fr; gap:0; }
}
@media(max-width:760px) {
  .container { width:calc(100% - 40px); } .section { padding:62px 0; }
  .site-header { height:78px; } .header-inner { gap:12px; } .brand { font-size:28px; }
  .header-cta { min-height:44px; padding:11px 15px; font-size:12px; } .header-inner nav { top:78px; padding-inline:20px; }
  .menu-toggle { width:44px; height:44px; padding:10px; } .eyebrow { font-size:11px; letter-spacing:.11em; }
  .hero-grid { grid-template-columns:1fr; gap:14px; padding-top:29px; padding-bottom:24px; }
  .hero-copy { max-width:600px; padding-bottom:0; } .hero-copy .eyebrow { margin-bottom:12px; }
  .hero h1 { font-size:clamp(39px,6.7vw,53px); line-height:1.15; }
  .hero-copy>p { font-size:15px; margin-top:15px; line-height:1.55; }
  .hero-actions { margin-top:18px; gap:10px; } .hero-actions .button { padding:14px 18px; font-size:13px; min-height:50px; }
  .hero-caption { margin-top:13px; font-size:12px; }
  .hero-art { width:80%; max-width:560px; height:auto; min-height:0; margin:7px auto 0; padding:0 0 25px; }
  .hero-browser { width:100%; margin-top:0; border-radius:12px; } .hero-browser-caption { font-size:10px; padding:11px; }
  .hero::after,.art-orbit,.art-spark { display:none; }
  .browser-bar { height:30px; padding-inline:10px; font-size:10px; }
  .floating-preview { width:39%; right:-5px; bottom:2px; border-radius:9px; } .floating-preview .mini-browser { height:21px; }
  .floating-preview>span { padding:8px 9px; font-size:9px; } .floating-preview svg { width:12px; height:12px; }
  .floating-label { left:-8px; bottom:3px; gap:8px; padding:10px 12px; border-radius:9px; }
  .floating-label>svg { width:23px; height:23px; } .floating-label b { font-size:11px; } .floating-label span { font-size:9px; }
  .benefits-grid { gap:16px 14px; padding-block:21px; } .benefits-grid>div { gap:10px; }
  .benefits-grid svg { width:23px; height:23px; } .benefits-grid span { font-size:12px; } .benefits-grid small { font-size:11px; line-height:1.6; }
  .section-heading { flex-direction:column; align-items:flex-start; gap:20px; margin-bottom:31px; }
  .section-heading h2 { font-size:35px; } .section-heading>p { max-width:none; font-size:15px; } .section-heading>p br { display:none; }
  .catalog-toolbar { flex-direction:column; gap:15px; } .filters { gap:7px; }
  .filters button { padding:10px 14px; min-height:44px; font-size:12px; } .catalog-count { padding-top:0; font-size:12px; }
  .model-grid { --model-gap:24px; grid-template-columns:1fr; } .model-card { width:100%; max-width:620px; margin-inline:auto; border-radius:18px; }
  .card-visual { padding:12px 12px 0; } .mini-browser { height:28px; padding-inline:9px; } .mini-browser span { font-size:9px; }
  .card-content { padding:25px 23px 20px; } .card-content h3 { font-size:29px; } .card-meta { margin-bottom:17px; font-size:11px; }
  .card-meta>span:first-child { padding:4px 7px; } .card-content>p { font-size:16px; line-height:1.8; }
  .card-bottom { margin-top:23px; padding-top:17px; gap:12px; } .card-bottom>span { font-size:12px; }
  .card-bottom>a { min-height:44px; font-size:12px; padding:10px; }
  .model-grid>.model-card:nth-last-child(1 of :not([hidden])):nth-child(odd of :not([hidden])) { grid-column:auto; width:100%; max-width:620px; }
  .catalog-tail { flex-direction:column; gap:17px; margin-top:28px; } .catalog-tail>span { max-width:none; align-items:flex-start; font-size:12px; }
  .catalog-tail>span svg { margin-top:2px; } .catalog-tail .text-link { font-size:13px; }
  .search { width:100%; flex-direction:row; align-items:center; gap:12px; margin-top:6px; font-size:12px; }
  .search input { flex:1; min-width:0; width:auto; font-size:16px; }
  .steps { grid-template-columns:1fr; gap:30px; margin-top:38px; }
  .steps article { display:grid; grid-template-columns:40px 1fr; gap:12px 16px; padding-top:25px; }
  .step-number { grid-row:1/3; margin:0; padding-top:4px; } .steps h3 { grid-column:2; margin:0; font-size:25px; }
  .steps p { grid-column:2; max-width:none; font-size:15px; line-height:1.85; }
  .faq-grid { grid-template-columns:1fr; gap:29px; } .faq-grid>div>p { margin-top:20px; font-size:16px; }
  .faq-grid>div>p br { display:none; } .faq-grid .text-link { margin-top:19px; }
  .faq-list summary { padding:24px 0; gap:13px; font-size:15px; } .faq-list summary>span { font-size:11px; }
  .faq-list details>p { padding-left:26px; padding-right:17px; font-size:15px; }
  .cta-section { padding:20px 0 50px; } .cta-panel { flex-direction:column; align-items:flex-start; gap:29px; padding:35px 27px; border-radius:18px; }
  .cta-panel h2 { font-size:32px; } .cta-panel p { font-size:14px; } .cta-panel p br { display:none; }
  .cta-panel::after { top:50px; right:-70px; } .cta-panel .button { min-height:52px; font-size:14px; }
  .site-footer { padding-top:39px; } .footer-top { flex-direction:column; gap:28px; } .footer-top p { font-size:14px; }
  .footer-links { width:100%; max-width:360px; grid-template-columns:repeat(2,minmax(0,1fr)); padding-top:0; gap:8px 24px; }
  .footer-links a { min-height:44px; }
  .footer-bottom { flex-wrap:wrap; gap:15px 24px; margin-top:30px; font-size:12px; } .footer-bottom>span:last-child { width:100%; }
  .page-intro { padding:49px 0; } .page-intro.contact-intro { padding:32px 0 29px; } .page-intro h1 { margin-top:20px; font-size:40px; } .page-intro p { margin-top:24px; font-size:16px; }
  .inner .catalog { padding-top:38px; } .breadcrumb { gap:10px; padding-top:24px; font-size:11px; }
  .detail-hero { padding:36px 0 53px; } .detail-grid { grid-template-columns:1fr; gap:35px; }
  .detail-hero h1 { margin-top:17px; font-size:47px; } .detail-tagline { margin-top:22px; font-size:20px; }
  .detail-description { max-width:none; font-size:16px; } .detail-features { grid-template-columns:1fr 1fr; gap:13px; font-size:12px; }
  .detail-actions { margin-top:29px; } .detail-actions .button { min-height:52px; padding:14px 18px; font-size:13px; }
  .demo-note { font-size:12px; } .detail-cover { margin-inline:2px; padding:11px; }
  .detail-cover .mini-browser { height:28px; } .page-gallery .section-heading h2 { font-size:33px; }
  .detail-cover { width:100%; max-width:260px; margin-inline:auto; }
  .model-grid.related-grid { grid-template-columns:1fr; }
  .page-tabs { grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; margin-bottom:25px; }
  .page-tabs button { padding:11px; font-size:12px; gap:12px 6px; border-radius:10px; } .tab-number { font-size:11px; }
  .preview-panel { border-radius:10px; } .preview-toolbar { padding:15px 13px; gap:13px; font-size:11px; }
  .preview-toolbar>span:first-child { display:none; } .preview-toolbar .text-link { font-size:11px; gap:6px; }
  .preview-toolbar svg { width:15px; height:15px; } .page-gallery-note { flex-wrap:wrap; gap:9px; font-size:12px; line-height:1.8; }
  .page-gallery-note>span { margin-left:28px; width:calc(100% - 28px); }
  .included-grid { grid-template-columns:1fr; gap:28px; } .included-grid h2 { font-size:34px; } .included-grid p { margin-top:24px; font-size:15px; }
  .included-grid ul { font-size:15px; } .related h2 { font-size:33px; }
  .about-grid { grid-template-columns:1fr; gap:38px; } .about-grid h2 { font-size:35px; } .about-grid p { font-size:16px; }
  .about-image { max-width:620px; margin-inline:4px; padding:11px 11px 0; } .about-image>span { font-size:12px; } .about-pills span { font-size:12px; }
  .faq-full { padding-top:25px; } .faq-full summary { font-size:16px; } .faq-full details p { font-size:15px; }
  .faq-tail { flex-direction:column; align-items:flex-start; gap:21px; }
  .contact-section { padding-top:42px; }
  .contact-grid { grid-template-columns:1fr; grid-template-areas:"form" "aside"; gap:26px; } .contact-grid aside { padding-top:0; }
  .contact-grid aside h2 { font-size:37px; } .contact-grid aside>p { margin-top:24px; font-size:16px; }
  .contact-checklist { margin-block:29px; gap:18px; font-size:14px; } .contact-aside-note { display:none; }
  .offer-form { padding:24px 20px; border-radius:17px; } .offer-form h2 { font-size:27px; }
  .offer-form label { margin-bottom:18px; font-size:14px; } .form-intro { margin-bottom:22px; font-size:15px; } .form-privacy { font-size:13px; }
  .offer-form input,.offer-form select,.offer-form textarea { margin-top:8px; }
  .prose h2 { font-size:27px; } .prose p { font-size:16px; } .not-found { min-height:490px; } .not-found h1 { font-size:40px; }
}
@media(max-width:400px) {
  .container { width:calc(100% - 32px); } .brand { font-size:26px; } .header-inner { gap:10px; }
  .header-cta { padding-inline:11px; font-size:11px; } .menu-toggle { width:43px; height:43px; }
  .hero h1 { font-size:37px; } .hero-copy>p { font-size:16px; }
  .hero-actions .button { padding:13px 14px; font-size:12px; gap:9px; } .hero-caption { font-size:11px; gap:8px; }
  .hero-art { width:78%; } .floating-preview { width:38%; } .floating-label { left:-2px; padding:9px 10px; }
  .floating-label b { font-size:10px; } .floating-label span { font-size:9px; }
  .benefits-grid { gap:21px 12px; } .benefits-grid>div { gap:9px; }
  .benefits-grid span { font-size:12px; } .benefits-grid small { font-size:10px; } .filters button { padding-inline:12px; font-size:12px; }
  .card-content { padding:24px 20px 19px; }
  .card-content h3 { font-size:28px; } .card-meta { font-size:11px; gap:7px; }
  .card-bottom>span { font-size:11px; } .card-bottom>a { font-size:12px; gap:6px; }
  .page-intro h1 { font-size:36px; } .detail-hero h1 { font-size:42px; }
  .detail-actions .button { width:100%; flex-basis:100%; padding-inline:12px; font-size:12px; gap:9px; } .page-tabs button { font-size:12px; padding:10px; }
  .preview-toolbar { flex-wrap:wrap; } .preview-toolbar .text-link { font-size:12px; }
  .cta-panel { padding-inline:24px; } .cta-panel h2 { font-size:30px; } .desktop-only { display:none; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { transition:none!important; animation:none!important; }
  .button:hover,.model-card:hover { transform:none!important; }
  .button:hover svg { transform:none!important; }
  .model-card:hover .card-overlay,.card-visual:focus-visible .card-overlay { transform:none; }
}

/* Offer summary and contact form refinements. */
.offer-summary { border-block:1px solid #ece6f3; background:#faf8fc; }
.offer-summary .section-heading { margin-bottom:30px; }
.offer-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.offer-grid article { min-width:0; padding:27px; border:1px solid #e8e0ed; border-radius:16px; background:#fff; }
.offer-grid h3 { font-size:22px; }
.offer-grid p:not(.offer-price):not(.offer-note) { margin-top:12px; color:#706b80; font-size:14px; line-height:1.75; }
.offer-grid .offer-price { color:#4e326f; }
.offer-grid .offer-price small { color:#6f647b; }
.offer-note { margin-top:21px; padding:16px 19px; border-left:3px solid #8d64de; border-radius:0 10px 10px 0; background:#f2ecfa; color:#59466a; font-size:14px; line-height:1.75; }
.offer-price { display:flex; align-items:baseline; flex-wrap:wrap; gap:7px 10px; margin-block:14px 19px; color:#4e326f; font-family:var(--font-display); font-size:clamp(38px,4.5vw,54px); font-weight:800; letter-spacing:-.06em; line-height:1; }
.offer-price small { color:#6f647b; font-family:var(--font-body); font-size:14px; font-weight:600; letter-spacing:0; }

.selected-model-note { margin:-8px 0 24px; padding:13px 15px; border:1px solid #e4d6f1; border-radius:10px; background:#f8f3fc; color:#625170; font-size:14px; line-height:1.65; }
.contact-intro { padding-block:43px 39px; }
.page-intro.contact-intro h1 { margin-top:15px; }
.page-intro.contact-intro p { margin-top:17px; }
.offer-form #form-status :is(a,.button) { display:inline-flex; max-width:100%; white-space:normal; overflow-wrap:anywhere; }

.inner .offer-summary { border-color:var(--line); background:#111120; }
.inner .offer-grid article { border-color:var(--line); background:var(--surface); }
.inner .offer-grid p:not(.offer-price):not(.offer-note) { color:var(--muted); }
.inner .offer-note { border-color:#a783fa; background:#a77cf51c; color:#d0c7dd; }
.inner .offer-grid .offer-price { color:#d5c1ff; }
.inner .offer-grid .offer-price small { color:var(--muted); }
.inner .selected-model-note { border-color:#a77cf540; background:#a77cf51c; color:#d0c7dd; }

@media(max-width:1024px) {
  .offer-grid article { padding:23px; }
}
@media(max-width:760px) {
  .offer-grid { grid-template-columns:1fr; gap:13px; }
  .offer-grid article { padding:21px; }
  .offer-note { font-size:13px; }
}

/* Functional labels remain readable at every breakpoint. */
.header-cta,.hero-actions .button,.detail-actions .button,.card-bottom>a,.filters button { font-size:14px; }
.catalog-count,.search,.card-meta,.card-bottom>span,.catalog-tail>span,.catalog-tail .text-link,.demo-note,.detail-features,.page-gallery-note,.page-gallery-note>span,.preview-toolbar,.preview-toolbar .text-link,.page-tabs button,.breadcrumb,.benefits-grid small,.hero-caption { font-size:14px; }
.benefits-grid span { font-size:15px; }
.hero-actions .button { white-space:normal; }
.card-bottom { flex-wrap:wrap; }
.footer-bottom,.form-privacy,.filters button span { font-size:14px; }
@media(max-width:760px) {
  .hero-art { width:60%; padding-bottom:12px; }
  .hero-browser { transform:none; }
  .hero-browser>img { aspect-ratio:2; }
  .hero-caption,.hero-browser-caption,.floating-label,.floating-preview { display:none; }
}

/* Commercial hierarchy: real models and comparable information lead. */
.brand i{display:none}
.hero{background:var(--night)}
.hero::after,.cta-panel::after{display:none}
.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);min-height:560px;padding-block:56px;gap:56px}
.hero-copy{padding:0}
.hero h1{font-size:clamp(42px,4.1vw,62px);letter-spacing:-.035em;line-height:1.12;text-wrap:balance}
.hero h1 em{color:#c3a7ff}
.hero-copy>p{font-size:17px;line-height:1.7;max-width:48ch;margin-top:24px}
.hero-offer{margin-top:24px}
.hero-actions{margin-top:24px}
.hero-example{margin:0;min-width:0;border:1px solid var(--preview-border);border-radius:var(--preview-radius);overflow:hidden;background:#191525}
.hero-example>a{display:block}
.hero-example img{width:100%;aspect-ratio:1.5;object-fit:cover;object-position:top}
.hero-example figcaption{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 20px;color:#e9e2f5;font-size:14px}
.hero-example strong{display:block;font-size:16px;font-weight:600}
.hero-example span{display:block;color:#bcb1cb;margin-top:4px}
.hero-example figcaption>a{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:#d5c1ff;text-decoration:underline;text-underline-offset:4px}
.hero-example svg{width:17px;height:17px}
.primary{background:#7041d8;box-shadow:none}
.button{border-radius:6px}
.button:hover{transform:none}
.benefits-grid{padding-block:24px}
.benefits-grid>div{padding-inline:20px}
.section{padding-block:80px}
.section-heading{margin-bottom:32px}
h1,h2{letter-spacing:-.035em}
.card-visual{padding:12px;background:#ede8f3}
.card-visual::before{display:none}
.card-visual img{aspect-ratio:1.5;border:0;border-radius:4px;box-shadow:none;object-fit:cover;object-position:top}
.model-card{border-radius:10px;box-shadow:none}
.model-card:hover{transform:none;box-shadow:none}
.card-meta{align-items:flex-start;gap:12px;margin-bottom:18px}
.card-meta>span:first-child{background:transparent;border-radius:0;padding:0;color:#685471}
.card-meta>span:last-child{white-space:nowrap}
.card-content{padding:24px}
.card-content>p{flex:none;min-height:3.5em;margin-top:12px}
.model-comparison{margin:24px 0 0;padding:0;border-top:1px solid var(--line);font-size:14px;line-height:1.6}
.model-comparison>div{padding:14px 0;border-bottom:1px solid var(--line)}
.model-comparison dt{color:#685471;font-weight:600;font-size:14px}
.model-comparison dd{margin:5px 0 0;color:var(--ink);font-size:15px}
.inner .model-comparison dt,.inner .card-meta>span:first-child{color:#bcb1cb}
.inner .model-comparison dd{color:#eee7f8}
.card-bottom{margin-top:auto;padding-top:24px;border:0;gap:10px 18px}
.card-bottom>a{background:#f0e9f7;border-radius:5px;min-height:44px;font-size:14px}
.card-bottom>a.demo-link{background:transparent;padding-inline:0;text-decoration:underline;text-underline-offset:4px}
.inner .card-bottom>a.demo-link{background:transparent}
.offer-grid article{border:0;border-radius:0;background:transparent;padding:0 24px 0 0}
.offer-grid article+article{border-left:1px solid var(--line);padding-left:24px}
.offer-note{border:0;border-radius:0;background:transparent;padding:0;color:#59466a}
.offer-note+.offer-note{padding-top:16px;border-top:1px solid var(--line)}
.cta-panel{border:0;border-radius:8px;background:#21172f;padding:48px 56px}
.cta-panel h2{margin-top:0}
.inner .offer-grid article{background:transparent}
@media(max-width:1024px){.hero-grid{gap:32px}.hero-example figcaption{align-items:flex-start;flex-direction:column;gap:8px}.hero h1{font-size:44px}}
@media(max-width:760px){.hero-grid{grid-template-columns:1fr;min-height:0;padding-block:32px;gap:28px}.hero h1{font-size:clamp(36px,7vw,48px)}.hero-copy>p{font-size:16px;line-height:1.65;margin-top:20px}.hero-example{width:100%;max-width:520px;margin-inline:auto}.hero-example img{aspect-ratio:2.5}.hero-example figcaption{padding:12px 16px;flex-direction:row;align-items:center;gap:12px}.hero-example figcaption span{display:none}.hero-example figcaption>a{font-size:14px}.hero-example strong{font-size:15px}.benefits-grid{padding-block:20px;gap:18px}.benefits-grid>div{padding:0}.section{padding-block:56px}.card-content{padding:24px}.card-content>p{min-height:0}.card-bottom{margin-top:20px}.model-comparison{margin-top:20px}.offer-grid article{padding:0}.offer-grid article+article{border-left:0;border-top:1px solid var(--line);padding:22px 0 0}.offer-grid{gap:22px}.cta-panel{padding:32px 24px}}
@media(max-width:400px){.hero-example figcaption{flex-wrap:wrap;gap:4px}.hero-example strong{font-size:15px}}
@media(max-width:760px){
  .hero-grid{gap:12px;padding-block:14px}
  .hero-copy>p{margin-top:16px}
  .hero-offer,.hero-actions{margin-top:20px}
  .hero-example img{aspect-ratio:2.4}
  .hero-example figcaption{padding-block:0}
}
.detail-actions .preview-shortcut{flex-basis:100%;min-height:44px;text-decoration:underline;text-underline-offset:4px}
#tab-index{scroll-margin-top:28px}
.quick-comparison{display:none}
.model-card{scroll-margin-top:28px}
@media(max-width:760px){
  .quick-comparison{display:block;padding:0;margin:0 0 32px}
  .quick-comparison h3{font-size:20px;margin:0 0 14px}
  .quick-comparison ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
  .quick-comparison li{border-bottom:1px solid var(--line)}
  .quick-comparison a{display:block;min-height:44px;padding:14px 0}
  .quick-comparison strong{display:block;color:var(--ink);font-size:16px;font-weight:650;text-decoration:underline;text-underline-offset:4px}
  .quick-comparison span{display:block;margin-top:4px;color:var(--muted);font-size:14px;line-height:1.6}
}
