/* Moka public pages: shared sizing, colour and spacing. */
:root{--navy:#071b30;--blue:#2868c5;--blue-hover:#1d53a2;--ink:#182c42;--muted:#607086;--line:#dce5ee;--pale:#edf4fc;--surface:#fff;--radius:16px;--content:1160px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:20px}
body{margin:0;background:#f4f7fb;color:var(--ink);font:15px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button,input,textarea{font:inherit}button,a{touch-action:manipulation}
a:focus-visible,button:focus-visible,video:focus-visible{outline:3px solid #67b8f5;outline-offset:4px}
h1,h2,h3,p{margin-top:0}h1{font-size:36px;line-height:1.15;letter-spacing:-1.1px;margin-bottom:12px}h2{font-size:23px;line-height:1.25;letter-spacing:-.5px;margin-bottom:12px}h3{font-size:17px;line-height:1.35;margin-bottom:8px}p{margin-bottom:16px}
.shell,.wrap{width:min(var(--content),calc(100% - 40px));margin:0 auto}.shell{padding-bottom:24px}
.top{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px;padding:14px 20px;margin-bottom:30px;background:var(--navy);border-radius:0 0 var(--radius) var(--radius);color:#fff}
.brand{display:flex;align-items:center;gap:10px;font-size:16px;line-height:1.2;font-weight:750;letter-spacing:1.6px}.brand:hover{text-decoration:none}.brand-icon{display:block;width:42px;height:42px;object-fit:cover;border-radius:12px}.brand-sub{display:block;margin-top:4px;color:#abc6e0;font-size:9px;letter-spacing:1.8px;font-weight:600}
.tag{border:1px solid #38526c;border-radius:99px;padding:5px 10px;color:#c3d6e8;font-size:10px;letter-spacing:.7px;white-space:nowrap}
.eyebrow{font-size:10px;line-height:1.5;letter-spacing:1.5px;font-weight:750;color:var(--blue);margin-bottom:10px}.muted,.description,.intro,.lead,.card p{color:var(--muted)}.small{font-size:12px}.text-link,.back{color:var(--blue);font-size:13px;font-weight:650}
.button,button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:10px 17px;border:1px solid var(--blue);border-radius:10px;background:var(--blue);color:#fff;font-size:14px;font-weight:700;line-height:1.5;text-decoration:none;cursor:pointer}
.button:hover,button:hover,.btn:hover{background:var(--blue-hover);border-color:var(--blue-hover);text-decoration:none}.btn.secondary{background:#fff;border-color:#bfd0e3;color:var(--blue)}.btn.secondary:hover{background:var(--pale)}
.panel,.card,.download-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;min-width:0;box-shadow:0 3px 12px #193b5c04}
.catalog-heading{margin:36px 0 24px}.catalog-heading .muted{margin-bottom:0}.catalog-heading h1{font-size:36px}
.app-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px;align-items:stretch}
.app-card{display:grid;grid-template-rows:60px 2.5em 4.8em auto 44px 44px;gap:10px;padding:18px;align-content:start}
.tile-icon{width:60px;height:60px;border-radius:16px;object-fit:contain;display:block;background:var(--navy)}
.app-card h2{font-size:19px;line-height:1.25;margin:2px 0 0;letter-spacing:-.5px}.app-card h2 a:hover{color:var(--blue)}
.card-description{align-self:start;max-height:4.8em;font-size:13px;line-height:1.6;margin:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.release{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 12px;font-size:12px;color:var(--muted);margin:18px 0}.release.compact{justify-content:flex-start;margin:4px 0;font-size:11px;gap:8px}.pill{display:inline-block;padding:3px 9px;border-radius:99px;background:var(--pale);color:#295887;font-size:11px;white-space:nowrap}
.app-card .button{font-size:13px;padding:10px 8px;width:100%}.install-link{font-size:12px;display:flex;align-items:center;min-height:44px}.coming-soon{background:#edf2f8}.coming-soon-cta{display:flex;align-items:center;justify-content:center;min-height:44px;border:1px dashed #bdcbd9;border-radius:10px;font-size:13px;color:var(--muted);font-weight:700}.coming-soon-note{font-size:12px;color:var(--muted);align-self:center;margin:0}
.public-footer,footer{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding:20px 0;margin-top:30px;color:var(--muted);font-size:12px}
.download-hero{max-width:840px;margin:0 auto;text-align:center;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px 28px}.back-link{display:block;text-align:left;min-height:44px;line-height:24px;margin:0 0 12px}.app-icon{display:block;object-fit:contain;width:72px;height:72px;border-radius:19px;margin:0 auto 16px;background:var(--navy)}.download-hero h1{font-size:34px}.download-hero>.description{max-width:650px;margin:0 auto 16px;font-size:15px}.download-hero>form{margin:0 auto 22px;max-width:340px}.download-button{width:100%;justify-content:space-between;min-height:46px}.download-button span{font-size:20px}.download-hero>.small{margin:16px 0}
.download-next,.install-guide,.install-visual-guide{text-align:left;margin-top:20px;background:#f7f9fc;box-shadow:none}.download-next h2,.install-guide h2,.install-visual-guide h2{font-size:19px}.download-next p:last-child{margin:0;color:var(--muted);font-size:14px}.install-guide ol{margin:0;padding-left:22px;font-size:14px;color:var(--muted)}.install-guide li{padding:3px 0}.install-visual-guide{border:1px solid var(--line);border-radius:var(--radius);padding:20px}.install-note{font-size:14px}.install-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.install-gallery figure{margin:0;min-width:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.install-gallery figure>a{display:block}.install-gallery img{display:block;width:100%;height:auto}.install-gallery figcaption{padding:10px;font-size:12px;color:var(--muted);line-height:1.5}.install-gallery strong,.install-gallery span{display:block}.install-gallery strong{color:var(--ink);margin-bottom:6px}
.app-overview{text-align:left;margin-top:28px;border-top:1px solid var(--line);padding-top:24px}.app-overview>h2{font-size:22px}.app-overview .features{margin-top:16px}.app-overview .card{padding:16px;background:#f7f9fc;box-shadow:none}.app-overview .card h3{font-size:16px}.app-overview .card p{font-size:14px}.app-overview .intro{font-size:14px}
.hero{max-width:840px;margin:0 auto;padding:24px 28px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}.hero h1{font-size:34px}.hero .hero-slogan{font-size:21px;line-height:1.35;letter-spacing:-.4px;margin-bottom:14px;color:var(--ink);font-weight:700}.hero-slogan span{color:var(--blue)}.hero .eyebrow{margin-top:0}.lead{font-size:15px;max-width:680px;margin:0 auto}.cta{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:22px 0 14px}.versions{font-size:12px;line-height:1.6;color:var(--muted)}
.video-shell{max-width:840px;margin:18px auto 10px;padding:8px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.video-shell video{display:block;width:100%;max-height:460px;border-radius:10px;background:#07151b}
.section{padding:30px 0}.section>.wrap{max-width:1000px}.section h2{font-size:24px}.intro{font-size:15px;max-width:780px;margin-bottom:0}.steps,.features,.usecases,.faq,.downloads{display:grid;gap:14px;margin-top:20px;grid-template-columns:repeat(2,minmax(0,1fr))}.steps{grid-template-columns:repeat(3,minmax(0,1fr))}.card p{font-size:14px;margin:0}.num{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:var(--pale);color:var(--blue);font-weight:750;margin-bottom:12px}.example{margin-top:18px;padding:18px 20px;border-left:3px solid var(--blue);background:#eaf1fa;border-radius:0 12px 12px 0;font-size:14px;color:#405c78}.local{display:flex;gap:12px;margin:20px 0 0;padding:18px;background:#e9f3ef;border:1px solid #cde3d9;border-radius:12px;font-size:14px;color:#385c50}.local b{color:#245942}.download{background:#eaf0f8;border-block:1px solid var(--line)}.download-card{display:flex;flex-direction:column}.download-card h3{font-size:20px}.download-card p,.download-card li{font-size:14px;color:var(--muted)}.download-card ul{padding-left:20px;margin-top:0;margin-bottom:18px;flex:1}.download-card li{padding-bottom:5px}.download-card .btn{width:100%}.note{font-size:12px;line-height:1.65;color:var(--muted);background:#f4f7fb;border:1px solid var(--line);border-radius:10px;padding:12px 14px;margin-top:14px}.bottom-cta{text-align:center;padding:32px 0 16px}.bottom-cta h2{font-size:24px}.bottom-cta p{max-width:680px;margin:0 auto;color:var(--muted)}.klik-page>footer{max-width:1160px;width:calc(100% - 40px);margin:25px auto 0;text-align:center}.notice{padding:14px 18px;border:1px solid #bed4eb;border-radius:12px;background:var(--pale);margin-bottom:20px}.error{background:#fff0eb;border-color:#e5b7a9;color:#8c3c24}.empty{text-align:center;padding:30px}.spaced{margin-top:20px}
@media(min-width:1400px){.catalog-heading{margin-top:40px}}
@media(max-width:1050px){.app-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:780px){.app-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.steps{grid-template-columns:1fr}.section>.wrap{max-width:840px}.install-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.top{margin-bottom:24px}.catalog-heading{margin-top:26px}}
@media(max-width:560px){.shell,.wrap{width:calc(100% - 28px)}.top{min-height:68px;padding:12px;gap:8px;margin-bottom:20px}.brand{font-size:14px;gap:8px;letter-spacing:1.1px}.brand-icon{width:36px;height:36px;border-radius:10px}.brand-sub{font-size:8px;letter-spacing:1.4px}.tag{font-size:8px;letter-spacing:0;padding:5px 7px}.catalog-heading{margin:24px 0 20px}.catalog-heading h1{font-size:29px}.catalog-heading>.muted{font-size:14px}.app-grid{grid-template-columns:1fr;gap:12px}.app-card{grid-template-columns:52px minmax(0,1fr);grid-template-rows:auto auto auto 44px 36px;column-gap:14px;row-gap:8px;padding:16px}.app-card .tile-icon{width:52px;height:52px;border-radius:14px;grid-column:1;grid-row:1 / 3}.app-card h2{grid-column:2;grid-row:1;align-self:center;font-size:19px;margin:0}.app-card .release{grid-column:2;grid-row:2;margin:0}.app-card .card-description{grid-column:1 / -1;grid-row:3;margin:5px 0 7px}.app-card .button,.app-card .coming-soon-cta{grid-column:1 / -1;grid-row:4}.app-card .install-link,.app-card .coming-soon-note{grid-column:1 / -1;grid-row:5;min-height:36px}.download-hero,.hero{padding:18px 16px}.download-hero h1,.hero h1{font-size:29px}.app-icon{width:64px;height:64px;border-radius:17px;margin-bottom:14px}.hero .hero-slogan{font-size:19px}.hero .eyebrow{font-size:9px;letter-spacing:.7px}.hero .lead,.download-hero>.description{font-size:14px}.cta{display:grid;grid-template-columns:1fr;margin:18px 0 12px}.cta .btn{width:100%}.versions{font-size:11px}.video-shell{margin-top:14px;max-width:360px}.video-shell video{max-height:440px;object-fit:contain}.section{padding:24px 0}.section h2{font-size:22px}.features,.usecases,.faq,.downloads{grid-template-columns:1fr;gap:12px;margin-top:16px}.card,.download-card{padding:17px}.intro{font-size:14px}.download-next,.install-guide,.install-visual-guide{padding:16px}.download-next h2,.install-guide h2,.install-visual-guide h2{font-size:18px}.install-gallery{gap:8px}.install-gallery figcaption{padding:9px;font-size:11px}.bottom-cta h2{font-size:22px}.klik-page>footer{width:calc(100% - 28px)}.public-footer,footer{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
