
:root{--paper:#FAF9F1;--paper2:#F3EEE5;--white:#FFFFFF;--ink:#10141B;--ink2:#353A43;--muted:#5B606A;--line:#E2DCD0;
--aegean:#1F5FAF;--sun:#F6B800;--deep:#0B2545;--copper:#B87333;--patina:#5BA8A0;--olive:#6E7F3A;--terra:#C4643A}
body{margin:0;background:#FAF9F1}
.cn-root{font-family:'Instrument Sans',system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--ink);background:var(--paper);font-size:18px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:clip}
.cn-root a{color:inherit}
.wrap{max-width:1240px;margin:0 auto;padding-left:40px;padding-right:40px;box-sizing:border-box}

.cn-root .eyebrow{font:500 12px/1.3 'JetBrains Mono',ui-monospace,monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0}
.serif{font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-weight:400;letter-spacing:0}
/* round 14 (owner): every section title takes the hero title's formula — the heading family (canvas prop, Poppins by default,
   Instrument Sans to compare), 500, capitals TYPED in the markup (no text-transform, so the canvas edits them as written),
   the accent words in Instrument Serif italic; one size for all of them */
.cn-root{--hf:'Poppins',sans-serif;--h2s:50px}
.cn-root.hf-is{--hf:'Instrument Sans',sans-serif}
.h2{margin:14px 0 0;font:500 var(--h2s)/1.06 var(--hf);letter-spacing:-.035em;text-wrap:balance}
.h2 .serif{font-size:1.12em;line-height:1;letter-spacing:-.01em}
.lead{margin:16px 0 0;font-size:19px;color:var(--ink2);max-width:52ch}
.btn{display:inline-flex;align-items:center;gap:10px;height:52px;padding:0 24px;border-radius:999px;border:1px solid var(--ink);font:600 14px/1 'Instrument Sans',sans-serif;letter-spacing:.07em;text-transform:uppercase;text-decoration:none;white-space:nowrap;box-sizing:border-box;transition:transform .2s ease,background .2s ease}
.btn svg{width:16px;height:16px}
.btn-solid{background:var(--ink);color:#FAF9F1 !important}
.btn-ghost{background:rgba(255,255,255,.35);color:var(--ink)}
.btn:hover{transform:translateY(-1px)}
.btn-cream{background:#F4F1EA;color:var(--ink) !important;border-color:#F4F1EA}
.pill{display:inline-flex;align-items:center;height:38px;padding:0 16px;border:1px solid var(--ink);border-radius:999px;font:500 12.5px/1 'Instrument Sans',sans-serif;letter-spacing:.07em;text-transform:uppercase;text-decoration:none;color:var(--ink);background:transparent;white-space:nowrap}
.pill.solid{background:var(--ink);color:#FAF9F1}
.tag{display:inline-block;font:600 11px/1 'JetBrains Mono',monospace;letter-spacing:.08em;text-transform:uppercase;background:var(--ink);color:#FFFFFF;padding:6px 8px;border-radius:3px}

/* nav — owner's header (2026-10-26): no bar at the top, the menu floats on the hero; the glass appears on scroll;
   the full-width COMPENDIUM NOTE lock-up shrinks into the centre of the bar and the promo makes room for it */
.nav{position:fixed;top:0;left:0;right:0;z-index:50}
.nav::before{content:"";position:absolute;inset:0;background:rgba(250,249,241,.8);-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2);border-bottom:1px solid rgba(16,20,27,.07);opacity:0;transition:opacity .45s ease}
.is-scrolled .nav::before{opacity:1}
/* round 13 (owner, 10-28): the blue frame of rounds 10–11 is removed — it did not work on phones */
.nav-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:18px;height:70px}
.navlinks{display:flex;gap:8px;align-items:center}
.navlinks.left{grid-column:1;justify-self:start}
.navlinks.right{grid-column:3;justify-self:end}
.promo{grid-column:2;margin:0;text-align:center;white-space:nowrap;font:500 11.5px/1.2 'JetBrains Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--ink2);transition:opacity .35s ease,transform .45s ease}
.promo b{font-weight:600;color:var(--ink)}
.is-scrolled .promo{opacity:0;transform:translateY(-8px);pointer-events:none}
.brandmark{position:fixed;z-index:55;top:84px;left:50%;width:min(1160px,calc(100vw - 80px));transform:translateX(-50%);display:flex;align-items:center;justify-content:space-between;text-decoration:none;color:var(--ink);transition:width .6s cubic-bezier(.2,.75,.2,1),top .6s cubic-bezier(.2,.75,.2,1)}
.brandmark .mark{width:19.5%;height:auto;display:block;flex:none;transform:translateY(-15%)}
.brandmark .wm{width:75.4%;height:auto;display:block;flex:none}
.is-scrolled .brandmark{top:18.2px;width:283px}   /* round 18 (owner): +20 % (was 236) */
.hero .wrap.mast{min-height:0;display:block}
.masthead{width:100%;aspect-ratio:8.55;margin-top:14px}
.cn-root [id]{scroll-margin-top:90px}
.mark .eyes{transform-box:fill-box;transform-origin:center;animation:cnBlink 9s infinite}
@keyframes cnBlink{0%,95%,100%{transform:scaleY(1)}97%{transform:scaleY(.08)}}

/* hero */
.hero{position:relative;overflow:hidden;padding-top:70px;background:radial-gradient(55% 70% at 80% 26%,#FFF1D2 0%,rgba(255,241,210,0) 62%),radial-gradient(45% 55% at 6% 0%,#E5EDF8 0%,rgba(229,237,248,0) 62%),linear-gradient(180deg,#FFFFFF 0%,#FDFCF8 70%,#FAF9F1 100%)}
.hero .wrap{position:relative;min-height:820px;display:flex;align-items:flex-start}
.hero-copy{position:relative;z-index:3;max-width:610px;padding:30px 0 84px}
.chip{display:inline-flex;align-items:center;gap:10px;height:36px;padding:0 16px 0 6px;border:1px solid rgba(16,20,27,.22);border-radius:999px;background:rgba(255,255,255,.66);font:500 11.5px/1 'JetBrains Mono',monospace;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;color:var(--ink)}
.chip .coin{width:26px;height:26px}
.hero-h1{position:relative;z-index:4;width:max-content;max-width:none;margin:28px 0 0;font:500 var(--h2s)/1.04 var(--hf);letter-spacing:-.037em;white-space:nowrap}
.hero-h1 .serif{font-size:1.12em;letter-spacing:-.01em}
/* round 14: the owner's canvas edit — Poppins 50 px, one weight (the bold run removed); the capitals are typed */
.hero-sub{margin:22px 0 0;font:600 25px/1.15 'Instrument Sans',sans-serif;font-stretch:80%;letter-spacing:.02em;text-transform:uppercase;color:var(--aegean)}
.hero-sub .serif{text-transform:none;color:var(--ink);font-size:30px;font-stretch:100%;margin-right:6px}
.hero-desc{margin:16px 0 0;max-width:44ch;font-size:18px;color:var(--ink2)}
.hero-desc .tea{white-space:nowrap;font-family:'Noto Color Emoji','Apple Color Emoji','Segoe UI Emoji',sans-serif;font-size:1em;letter-spacing:.06em}   /* round 14 (owner): the tea row, at the letters' size */
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.hero-free{margin:18px 0 0;font-size:15px;color:var(--muted)}
.hero-free a{font-weight:600;color:var(--ink);text-underline-offset:3px}
.talk3{list-style:none;margin:46px 0 0;padding:0;display:grid;grid-template-columns:minmax(0,512fr) minmax(0,512fr) minmax(0,542fr);gap:24px;max-width:570px}
.talk3 li{display:flex;flex-direction:column;gap:10px;cursor:default;border-left:1px solid rgba(16,20,27,.16);padding-left:16px}
.talk3 .ic{width:54px;height:54px;color:var(--ink)}
.talk3 .ic.ic-wide{width:74px}
.talk3 span b{font-weight:700;color:var(--ink)}
.talk3 span{font-size:13.5px;line-height:1.35;color:var(--ink2)}
.g-move{animation:cnMove 2.4s cubic-bezier(.45,0,.3,1) infinite alternate}
@keyframes cnMove{from{transform:translate(0,0)}to{transform:translate(11px,15px)}}
.g-bars{transform-box:fill-box;transform-origin:center}
.g-bars{animation:cnBars .52s ease-in-out infinite alternate}
@keyframes cnBars{to{transform:scaleY(.5)}}
.g-caret{animation:cnCaret 1.3s steps(1) infinite}
@keyframes cnCaret{50%{opacity:0}}
.g-draw{stroke-dasharray:1;stroke-dashoffset:0}
.g-draw{animation:cnDraw 2.9s ease-in-out infinite}
@keyframes cnDraw{0%{stroke-dashoffset:1}55%,100%{stroke-dashoffset:0}}
.hero-athene{position:absolute;right:-34px;bottom:0;height:760px;margin:0;z-index:2;pointer-events:none}
.hero-athene img{height:100%;width:auto;display:block;transform:scaleX(-1);-webkit-mask-image:linear-gradient(180deg,#000 84%,transparent 100%);mask-image:linear-gradient(180deg,#000 84%,transparent 100%)}
.hero-left .hero-athene{right:auto;left:-34px}
.hero-left .hero-athene img{transform:none}
/* round 16 (owner, 11-01): the app's own splash on a layer of its own in front of Athene — before her belly and her right
   side, the open book about a book's size against her, covering little. The art is the owner's plain splash (no redesign);
   the captions are SVG text over it, so the logo and the lines can change without a new image. */
/* round 17 (owner): +10 % and 25 px lower (at 1280: 3.29 % of the 760-px figure) */
/* round 18 (owner, 11-01): +15 % more, grown from its bottom-left corner, then 20 px right (20 / 887 of the 1280 figure) */
.hero-splash{position:absolute;left:46%;top:auto;bottom:.23%;width:44.275%;aspect-ratio:790/755;z-index:3;margin:0;pointer-events:none}
.hero-athene .hero-splash img,.hero-athene .hero-splash .sp-cap{position:absolute;left:0;top:0;width:100%;height:100%;display:block;transform:none;-webkit-mask-image:none;mask-image:none}
.hero-athene .hero-splash img{filter:drop-shadow(0 14px 16px rgba(16,20,27,.18))}
.sp-cap text{font-family:'Noto Sans',sans-serif;font-stretch:75%;text-anchor:middle}
.hero-left .hero-splash{left:auto;right:46%}
@media (max-width:860px){.hero-splash{width:50.6%;left:43.25%;top:auto;bottom:0}.hero-left .hero-splash{left:auto;right:43.25%}}
/* round 8 (owner): a small line up and to the right of Athene's head */
.ath-note{position:absolute;left:78.1%;top:35.1%;margin:0;font:500 13.5px/1.32 'Instrument Sans',sans-serif;letter-spacing:.005em;color:var(--ink2);white-space:nowrap}
.ath-note i{font:italic 400 16px/1 'Instrument Serif',Georgia,serif;letter-spacing:0}
.ath-note b{font-weight:700;color:var(--ink)}
.hero-left .ath-note{left:auto;right:78.1%;text-align:right}
@media (max-width:1180px){.ath-note{left:61%;top:-3%}.hero-left .ath-note{left:auto;right:61%}}
@media (max-width:980px){.ath-note{left:52%;top:-4%}.hero-left .ath-note{left:auto;right:52%}}
@media (max-width:860px){.ath-note,.hero-left .ath-note{left:13%;right:auto;top:3%;text-align:left;font-size:12.5px}.ath-note i{font-size:15px}}
.hero-left .hero-copy{margin-left:auto}
.weave{position:absolute;left:50%;bottom:10px;width:1440px;height:120px;transform:translateX(-50%);z-index:1;pointer-events:none;color:var(--ink);overflow:visible}
.weave-top{z-index:4}
.weave-m{display:none}
.rm-link{cursor:pointer}
.rm-hit{pointer-events:all}
.rm-label{font:500 11.5px 'JetBrains Mono',monospace;letter-spacing:.14em;fill:var(--muted);stroke:#FAF9F1;stroke-width:4px;paint-order:stroke;stroke-linejoin:round;pointer-events:none}
.rm-link:hover .rm-label{fill:var(--ink)}
.rm-link:focus-visible .rm-hit{stroke:var(--aegean);stroke-width:2}

/* friends */
.friends{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.friends .wrap{display:flex;align-items:center;gap:28px;height:76px}
.friends-label{flex:none;margin:0;font:500 11.5px/1.35 'JetBrains Mono',monospace;letter-spacing:.125em;text-transform:uppercase;color:var(--muted)}
.friends-label .fl-1{display:block;color:var(--ink);font-weight:600;letter-spacing:.12em}
.friends-label .fl-2{display:block;margin-top:1px;font:italic 400 16px/1.15 'Instrument Serif',Georgia,serif;letter-spacing:0;text-transform:none;color:var(--ink2)}
.marquee{flex:1;min-width:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.track{display:flex;width:max-content;animation:cnMarq 80s linear infinite}
.track span{display:flex;align-items:center;gap:30px;padding-right:30px;font:500 19px/1 'Instrument Sans',sans-serif;color:var(--ink2);white-space:nowrap}
.track span::after{content:"";width:5px;height:5px;border-radius:50%;background:var(--sun)}
.marquee:hover .track{animation-play-state:paused}
.track a{color:inherit;text-decoration:none;text-underline-offset:4px}
.track a:hover,.track a:focus-visible{color:var(--ink);text-decoration:underline}
.track .ghost{display:flex}
@keyframes cnMarq{to{transform:translateX(-50%)}}

/* olympos */
.oly{position:relative;background-color:#F2E8DD;background-image:url('img/bg.webp');background-size:cover;background-position:center 58%}
.oly::before{content:"";position:absolute;left:0;right:0;top:0;height:150px;background:linear-gradient(180deg,#FAF9F1,rgba(250,249,241,0))}
.oly::after{content:"";position:absolute;left:0;right:0;bottom:0;height:120px;background:linear-gradient(0deg,#FAF9F1,rgba(250,249,241,0))}
.oly .wrap{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:32px;align-items:center;min-height:880px;padding-top:90px;padding-bottom:110px}
.oly-can{position:relative;display:flex;justify-content:center}
.oly-can .bob{position:relative;z-index:3}
/* round 12: the pen on the screenshot (above it, under the can); the can 50 px to the left — the screenshot stays */
.oly-can .oly-pen{position:absolute;left:342px;top:4px;width:170px;height:296px;z-index:2;pointer-events:none;overflow:visible}
@media (min-width:861px){.oly-can .bob{left:-50px}}
.oly-can .oly-shot{position:absolute;left:-95px;top:50%;width:528px;z-index:1;border-radius:10px;transform:translateY(-58%) rotate(-5deg);box-shadow:0 30px 60px -28px rgba(16,20,27,.55),0 0 0 1px rgba(16,20,27,.12)}
.oly-shot img{display:block;width:100%;height:auto}
.bob{animation:cnBob 7s ease-in-out infinite alternate}
@keyframes cnBob{from{transform:translateY(-12px) rotate(-1.2deg)}to{transform:translateY(12px) rotate(1.2deg)}}
.oly-h2{margin:14px 0 0;font:500 50px/1.08 'Poppins',sans-serif;letter-spacing:-.02em;text-transform:none;text-wrap:balance}
.oly-h2 .serif{font-size:1.12em;letter-spacing:-.01em}
.oly-myth{margin:20px 0 0;max-width:none;font:italic 400 24px/1.3 'Instrument Serif',Georgia,serif;color:var(--ink2)}
.ing{margin-top:30px;padding:10px;border-radius:6px;background:rgba(250,249,241,.48);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);border:1px solid rgba(255,255,255,.72);box-shadow:0 24px 60px -36px rgba(70,45,20,.45)}
.ing-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px}
.ing-tab{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:9px;min-height:88px;padding:13px 4px 10px;border:0;border-radius:4px;background:transparent;color:var(--ink);font:600 10.5px/1.15 'Instrument Sans',sans-serif;letter-spacing:.07em;text-transform:uppercase;text-align:center;cursor:pointer}
.ing-tab .ig{width:30px;height:30px}
.ing-tab.is-on{background:#FFFFFF;box-shadow:0 1px 2px rgba(16,20,27,.06)}
.ing-panel{padding:16px 14px 8px}
.ing-panel h3{margin:0;font:600 17px/1.2 'Instrument Sans',sans-serif;letter-spacing:.05em;text-transform:uppercase}
.ing-panel h3{color:#0000FF;font-weight:700}   /* v9.1 (owner): every tab heading as "Free for everyone" */
.ing-panel p{margin:8px 0 0;max-width:58ch;font-size:16.5px;color:var(--ink2)}
.oly-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}

/* flavours */
.interlude{padding:70px 24px 0;text-align:center}
.interlude p{margin:0 auto;max-width:1100px;font:italic 400 68px/1.08 'Instrument Serif',Georgia,serif;letter-spacing:-.01em;color:rgba(16,20,27,.22);text-wrap:balance}
.interlude b{font-weight:400;color:rgba(16,20,27,.42)}
.calm3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:1160px;margin:44px auto 0;text-align:left}
.calm-card{margin:0}.calm-card .zoom{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in;border-radius:20px;overflow:hidden}
.calm-card img{display:block;width:100%;height:auto}
.calm-card figcaption{margin:14px 4px 0;font:400 16px/1.45 'Instrument Sans',sans-serif;color:var(--ink2)}
.calm-card figcaption b{font-weight:600;color:var(--ink)}
@media (max-width:860px){.calm3{grid-template-columns:1fr;max-width:520px;gap:30px}}
/* round 12 (owner): the interlude's voice, 30 % smaller, centred under the Moon's JOIN THE HUB button; the owner's
   sentence, without the attribution he proposed (no source found for it) — see the reply #20 */
/* round 13 (owner): the Moon station is gone; the JOIN THE HUB button and the quote are centred on the page under the roadmap */
.road-foot{display:flex;flex-direction:column;align-items:center;text-align:center}
.moon-quote{margin:46px auto 0;max-width:1100px;text-align:center;font:italic 400 47.6px/1.08 'Instrument Serif',Georgia,serif;letter-spacing:-.01em;color:rgba(16,20,27,.22);text-wrap:balance}
.interlude s{text-decoration-line:line-through;text-decoration-color:rgba(246,184,0,.9);text-decoration-thickness:4px}
.flav .wrap{padding-top:70px;padding-bottom:30px}
.flav-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));margin-top:44px;border:1px solid var(--ink);background:var(--ink);gap:1px}
.flav-card{display:flex;flex-direction:column;gap:14px;padding:22px 24px 26px;background:#FFFFFF}
.chips{display:flex;gap:6px;flex-wrap:wrap}
.flav-stage{position:relative;height:330px;display:flex;align-items:flex-end;justify-content:center}
.flav-stage img{height:322px;width:auto;position:relative;z-index:2;margin-left:-58px}
.flav-stage .glass{position:relative;z-index:1;width:158px;height:auto;flex:none;margin-bottom:-4px}
.tumbler{position:relative;z-index:1;width:112px;height:150px;margin-bottom:14px;clip-path:polygon(3% 0,97% 0,89% 100%,11% 100%);background:linear-gradient(90deg,rgba(255,255,255,.75),rgba(255,255,255,.18) 26%,rgba(255,255,255,0) 58%,rgba(255,255,255,.55)),linear-gradient(180deg,#EEF2F7,#DCE3EC)}
.tumbler .liquid{position:absolute;left:9%;right:9%;top:26%;bottom:5%;clip-path:polygon(0 0,100% 0,95% 100%,5% 100%);background:linear-gradient(180deg,#0400E4 0 15%,#F6F3EC 15% 100%)}
.tumbler .liquid i{position:absolute;left:12%;right:12%;height:5px;border-radius:3px;background:#DED7C9}
.tumbler .liquid i:nth-child(1){top:26%}.tumbler .liquid i:nth-child(2){top:40%;right:30%}.tumbler .liquid i:nth-child(3){top:54%}.tumbler .liquid i:nth-child(4){top:68%;right:40%}
.tumbler::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.55),rgba(255,255,255,0) 22%,rgba(255,255,255,0) 78%,rgba(255,255,255,.35))}
.tumbler-note{position:absolute;left:0;right:46%;bottom:0;text-align:center;font:500 9.5px/1.2 'JetBrains Mono',monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.flav-card h3{margin:0;font:500 27px/1.1 'Instrument Sans',sans-serif;letter-spacing:-.015em}
.flav-card p{margin:0;font-size:16.5px;color:var(--ink2)}
.flav-card .chips{margin-top:auto;padding-top:6px}   /* round 12: text on top; the spare height sits above the chips, so drinks and screenshots line up */
.flav-card .pair{margin-top:0;font:500 11px/1.4 'JetBrains Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.flav-card .pair a[href]{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}   /* v8.2.2: no href in the design; the live layer adds it when the APK is out (download-apk) */
.comp{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(380px,100%),1fr));gap:32px;align-items:center;padding:30px;border:1px solid var(--ink);border-top:0;background:var(--paper2)}
.comp-main{display:flex;align-items:flex-start;gap:30px}
.comp-shot{flex:none;width:92px;margin:0;padding:3px;border-radius:14px;background:#10141B;box-shadow:0 10px 24px -10px rgba(16,20,27,.45)}
.comp-shot img{display:block;width:100%;height:auto}
.comp-shot .zoom{border-radius:11px}
.shot{margin:0}
.shot img{display:block;width:100%;height:auto;background:#FFFFFF}
.shot .zoom{border:1px solid var(--line);border-radius:8px;box-shadow:0 14px 30px -18px rgba(16,20,27,.4)}
.zoom{position:relative;display:block;width:100%;padding:0;margin:0;border:0;background:none;cursor:zoom-in;overflow:hidden;font:inherit;color:inherit}
.zoom::before,.hub-pill::before{content:'';position:absolute;inset:0;z-index:1;background:rgba(255,255,255,.15);opacity:0;transition:opacity .18s ease;pointer-events:none}
.zoom::after,.hub-pill::after{content:'';position:absolute;top:-10%;bottom:-10%;left:-70%;width:45%;z-index:2;background:linear-gradient(100deg,rgba(255,255,255,0),rgba(255,255,255,.6),rgba(255,255,255,0));transform:skewX(-18deg);opacity:0;pointer-events:none}
.zoom:hover::before,.zoom:focus-visible::before,.hub-pill:hover::before,.hub-pill:focus-visible::before{opacity:1}
.zoom:hover::after,.zoom:focus-visible::after,.hub-pill:hover::after,.hub-pill:focus-visible::after{animation:cnSweep .7s cubic-bezier(.3,.6,.3,1)}
@keyframes cnSweep{0%{left:-70%;opacity:1}100%{left:130%;opacity:1}}
.zoom:focus-visible{outline:2px solid var(--aegean);outline-offset:3px}
.lb{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:5vh 4vw;box-sizing:border-box;background:rgba(10,11,14,.84);backdrop-filter:blur(4px);cursor:zoom-out;animation:cnFade .2s ease}
.lb-img{max-width:100%;max-height:100%;width:auto;height:auto;border-radius:10px;box-shadow:0 30px 80px rgba(0,0,0,.6);background:#FFFFFF;cursor:default}
.lb-x{position:fixed;top:18px;right:18px;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.55);background:rgba(0,0,0,.45);color:#FFFFFF;font:400 28px/1 'Instrument Sans',sans-serif;cursor:pointer}
@keyframes cnFade{from{opacity:0}to{opacity:1}}
.shot figcaption{margin-top:10px;text-align:center;font:500 10.5px/1.45 'JetBrains Mono',monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.flav-shot{margin-top:2px}
.comp h3{margin:10px 0 0;font:500 30px/1.12 'Instrument Sans',sans-serif;letter-spacing:-.02em}
.comp p{margin:10px 0 0;font-size:16.5px;color:var(--ink2)}
.perm{margin:8px 0 0;padding:14px 16px;border:1px solid var(--line);border-radius:6px;background:#FFFFFF;font:500 13.5px/1.5 'JetBrains Mono',monospace;color:var(--ink);white-space:pre-wrap;overflow-x:auto}

/* first steps — the tutorial carousel (round 7) */
.learn{position:relative;overflow:hidden;background:#15171C;color:#F4F1EA}
.learn .wrap{padding-top:110px;padding-bottom:96px}
/* round 13 (owner): the kicker and the title take the type of 'What it does' and 'Write, draw or talk with IQ*' (.eyebrow, .h2) */
.learn .eyebrow.learn-kicker{color:rgba(244,241,234,.72)}
.learn h2.h2{color:#FFFFFF}
.learn-intro{margin:26px 0 0;max-width:46ch;font:500 22px/1.42 'Instrument Sans',sans-serif;color:rgba(244,241,234,.6)}
.learn-fine{margin:14px 0 0;font:500 17px/1.4 'Instrument Sans',sans-serif;color:rgba(244,241,234,.5)}
.lc-viewport{position:relative;margin-top:56px}
.lc-track{display:flex;gap:28px;transition:transform .6s cubic-bezier(.22,.61,.36,1)}
.lc-track.at-1{transform:translateX(calc(-100% - 28px))}
.lc-track.at-2{transform:translateX(calc(-200% - 56px))}
.lc-track.at-3{transform:translateX(calc(-300% - 84px))}
.lc-track.at-4{transform:translateX(calc(-400% - 112px))}.lc-track.at-5{transform:translateX(calc(-500% - 140px))}
@media (prefers-reduced-motion:reduce){.lc-track{transition:none}}
.lc-slide{flex:0 0 100%;display:grid;grid-template-columns:1.84fr 1fr;gap:22px;align-items:start;transition:opacity .45s ease}
.lc-slide[aria-hidden="true"]{opacity:.35}
.lc-card{margin:0}
.lc-card .lc-img{display:block;width:100%;padding:0;border:0;border-radius:26px;overflow:hidden;background:#22252C;cursor:zoom-in}
.lc-card img{display:block;width:100%;height:auto}
.lc-card figcaption{margin:22px 18px 0;max-width:46ch;font:500 18px/1.42 'Instrument Sans',sans-serif;color:rgba(244,241,234,.58)}
.lc-card figcaption b{font-weight:600;color:#FFFFFF}
.lc-nav{display:flex;align-items:center;gap:24px;margin-top:40px}
.lc-label{margin:0;font:500 12px/1.3 'JetBrains Mono',monospace;letter-spacing:.14em;text-transform:uppercase;color:rgba(244,241,234,.55)}
.lc-dots{display:flex;gap:10px;margin-left:auto}
.lc-dot{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:rgba(244,241,234,.28);cursor:pointer;transition:background .2s,transform .2s}
.lc-dot.is-on{background:#F6B800;transform:scale(1.25)}
.lc-dot:focus-visible,.lc-btn:focus-visible{outline:2px solid #8EA2FF;outline-offset:3px}
.lc-btns{display:flex;gap:14px}
.lc-btn{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.14);color:#FFFFFF;cursor:pointer;transition:background .2s,opacity .2s}
.lc-btn:hover{background:rgba(255,255,255,.24)}
.lc-btn svg{width:22px;height:22px}
.lc-btn.is-off{opacity:.38;cursor:default}
.lc-btn.is-off:hover{background:rgba(255,255,255,.14)}
.learn-note{margin:28px 0 0;font:500 11px/1.4 'JetBrains Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:rgba(244,241,234,.4)}
@media (max-width:860px){.learn .wrap{padding-top:80px;padding-bottom:70px}.learn-intro{font-size:19px}.lc-slide{grid-template-columns:1fr;gap:28px}.lc-card .lc-img{border-radius:20px}.lc-card figcaption{margin:16px 6px 0;font-size:17px}.lc-tall{max-width:420px}.lc-nav{flex-wrap:wrap;gap:16px}.lc-label{flex:1 0 100%}.lc-dots{margin-left:0}.lc-btns{margin-left:auto}}
/* features */
.feat .wrap{padding-top:120px;padding-bottom:120px}
.feat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:44px;border-top:1px solid var(--ink);border-left:1px solid var(--ink)}
.feat-item{position:relative;display:flex;flex-direction:column;gap:10px;min-height:206px;padding:22px 22px 24px;background:#FFFFFF;box-sizing:border-box;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.feat-item .fav{position:absolute;top:-16px;right:10px;width:80px;height:auto;transform:rotate(12deg);filter:drop-shadow(0 3px 3px rgba(16,20,27,.22));z-index:2;pointer-events:none}
@media (max-width:1149px){.feat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.feat-extra{grid-column:1/-1}}
@media (max-width:759px){.feat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feat-extra{grid-column:auto}}
@media (max-width:519px){.feat-grid{grid-template-columns:minmax(0,1fr)}}
.feat-item .ic{width:46px;height:46px;color:var(--ink)}
.feat-item.is-coming .ic{color:#8B8F97}
.feat-item h3{margin:6px 0 0;font:600 19px/1.2 'Instrument Sans',sans-serif;letter-spacing:-.005em}
.feat-item p{margin:0;font-size:15.5px;color:var(--ink2)}
.st{align-self:flex-start;margin-top:auto;font:600 10.5px/1 'JetBrains Mono',monospace;letter-spacing:.1em;text-transform:uppercase;padding:5px 7px;border-radius:3px}
.st.av{background:#E4EFE7;color:#1C5734}
.st.ip{background:#FFF1CC;color:#5F4500}
.st.co{background:#FFFFFF;color:#5B606A;border:1px dashed #9A9EA6}
.st-stack{align-self:flex-start;margin-top:auto;display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.st-stack .st{margin-top:0}
.feat-extra{background:var(--paper2)}
.feat-shots{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));gap:32px;margin-top:44px}
.feat-extra p{font-size:15px}
.iq-note{margin:18px 0 0;font:italic 400 20px/1.35 'Instrument Serif',Georgia,serif;color:var(--ink2)}
.iq-note{font-size:26px}.iq-note b{color:#0000FF;font-weight:700}
.iq-note .iq-rest{font:inherit;font-weight:400;color:var(--ink2)}   /* v9.1 (owner): one face, +2 px; the second sentence plain */   /* round 14 (owner): the type of 'Read it the way you’d read a can.' */

/* voices */
.voices{position:relative;background-color:#F0E6DA;background-image:url('img/bg.webp');background-size:cover;background-position:center 86%}
.voices::before{content:"";position:absolute;left:0;right:0;top:0;height:160px;background:linear-gradient(180deg,#FAF9F1,rgba(250,249,241,0))}
.voices::after{content:"";position:absolute;left:0;right:0;bottom:0;height:160px;background:linear-gradient(0deg,#FAF9F1,rgba(250,249,241,0))}
.voices .wrap{position:relative;z-index:2;padding-top:130px;padding-bottom:140px}
.voices .eq{position:absolute;left:0;right:0;top:230px;height:360px;z-index:1;pointer-events:none;opacity:.38}
.voices .eq svg{display:block;width:100%;height:100%}
.eqbar{transform-box:fill-box;transform-origin:center;animation:eqA 9s cubic-bezier(.45,.05,.55,.95) infinite alternate}
.eqbar.eq-b{animation-name:eqB}.eqbar.eq-c{animation-name:eqC}
@keyframes eqA{0%{transform:scaleY(.22)}45%{transform:scaleY(.9)}70%{transform:scaleY(.55)}100%{transform:scaleY(1)}}
@keyframes eqB{0%{transform:scaleY(.6)}35%{transform:scaleY(.18)}75%{transform:scaleY(.95)}100%{transform:scaleY(.4)}}
@keyframes eqC{0%{transform:scaleY(1)}50%{transform:scaleY(.3)}100%{transform:scaleY(.75)}}
@media (prefers-reduced-motion: reduce){.eqbar{animation:none;transform:scaleY(.6)}}
@media (max-width:860px){.voices .eq{top:240px;height:300px}}
/* round 14 (owner): the phone-wrapped page, everything ~25 % smaller (tablet widths ~15 %). CSS zoom scales type, spacing and
   images together, so the mobile rules below stay valid as written; form fields are lifted back to 16 px effective so phones do
   not zoom in on focus */
@media (max-width:600px){.cn-root{zoom:.75}.cn-root :is(input:not([type=radio]):not([type=checkbox]),select,textarea){font-size:21.4px}.cn-root:not(.is-scrolled) .brandmark{width:calc(100vw / .75 - 40px)}}
@media (min-width:601px) and (max-width:860px){.cn-root{zoom:.85}.cn-root :is(input:not([type=radio]):not([type=checkbox]),select,textarea){font-size:18.9px}.cn-root:not(.is-scrolled) .brandmark{width:calc(100vw / .85 - 40px)}}
/* (100vw is not zoom-aware: the full-width lock-up divides by the zoom to span the zoomed gutters) */
/* v8.2.1 (the site CC's preview test, 10-31): the field rule must out-rank the forms' own font rules (.join-form input[type=text] is
   0,2,1 and sets 16px, which zoom turned into 12px effective). :is(input:not(radio):not(checkbox),select,textarea) under .cn-root is 0,3,1 */
.vgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:18px;margin-top:40px}
.vcard{display:flex;flex-direction:column;gap:18px;padding:26px;border-radius:6px;background:rgba(250,249,241,.6);-webkit-backdrop-filter:blur(16px) saturate(1.1);backdrop-filter:blur(16px) saturate(1.1);border:1px solid rgba(255,255,255,.75)}
.vcard .ic{width:44px;height:44px;color:var(--ink)}
.vcard blockquote{margin:0;font:400 22px/1.35 'Instrument Sans',sans-serif;letter-spacing:-.008em}
.vmeta{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:auto}
.vname{font-weight:600;font-size:16px}

/* wisdom facts */
.facts .wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));gap:56px;align-items:start;padding-top:110px;padding-bottom:110px}
.onway{position:relative;overflow:hidden;background:radial-gradient(60% 50% at 50% 30%,#1B1E26 0%,#0A0B0E 70%);color:#F4F1EA;padding:96px 0 40px}
.onway .dao{position:absolute;left:50%;top:10px;transform:translateX(-50%);font:400 420px/1 serif;color:rgba(255,255,255,.035);pointer-events:none;user-select:none}
.onway-head{position:relative;text-align:center;padding:0 24px}
.onway-kicker{margin:0;font:600 22px/1.2 'Instrument Sans',sans-serif;letter-spacing:-.01em;color:#F4F1EA}
.onway h2{color:#FFFFFF}
.onway h2 s{text-decoration-line:line-through;text-decoration-color:#F6B800;text-decoration-thickness:6px;color:rgba(255,255,255,.55)}
.onway-sub{margin:18px 0 0;font:400 20px/1.4 'Instrument Sans',sans-serif;color:rgba(244,241,234,.66)}
.onway-stage{position:relative;width:min(1280px,100%);aspect-ratio:1280/790;margin:40px auto 0}
.onway-stage img{position:absolute;height:auto;filter:drop-shadow(0 30px 40px rgba(0,0,0,.55))}
.onway-stage img.ow-acc{filter:none}
.ow-laptop{left:-5%;top:3.5%;width:52%}
.ow-tablet{left:66.625%;top:3%;width:36.5%}   /* round 18 (owner): +40 px right */
.ow-phone{position:absolute;left:49.2%;top:30%;width:14.2%}
/* round 11: the Companion settings sheet (the owner's screenshot) slides up over the home screen, the glass flashes once —
   the screenshots' hover glint —, it rests, slides away, and the loop starts again (10 s) */
.onway-stage .ow-phone img.ow-phone-img{position:relative;display:block;width:100%}
.ow-screen{position:absolute;left:2.791%;top:1.333%;width:94.419%;height:97.341%;border-radius:10.1% / 4.68%;overflow:hidden;pointer-events:none;isolation:isolate}
.ow-dim{position:absolute;inset:0;background:rgba(12,14,20,.42);opacity:0;animation:owDim 10s ease-in-out infinite}
.onway-stage .ow-screen img.ow-sheet{position:absolute;left:0;bottom:0;width:100%;max-width:none;height:auto;filter:none;transform:translateY(101%);animation:owSheet 10s infinite}
.ow-glint{position:absolute;inset:0;overflow:hidden;opacity:0;animation:owGlint 10s linear infinite}
.ow-glint::before{content:'';position:absolute;inset:0;background:rgba(255,255,255,.15)}
.ow-glint::after{content:'';position:absolute;top:-10%;bottom:-10%;left:-70%;width:45%;background:linear-gradient(100deg,rgba(255,255,255,0),rgba(255,255,255,.6),rgba(255,255,255,0));transform:skewX(-18deg);animation:owSweep 10s cubic-bezier(.3,.6,.3,1) infinite}
@keyframes owSheet{0%,25%{transform:translateY(101%);animation-timing-function:cubic-bezier(.2,.8,.2,1)}31%,70%{transform:translateY(0);animation-timing-function:cubic-bezier(.45,0,.8,.35)}75%,100%{transform:translateY(101%)}}
@keyframes owDim{0%,25%{opacity:0}31%,70%{opacity:1}75%,100%{opacity:0}}
@keyframes owGlint{0%,31%{opacity:0}31.5%,38%{opacity:1}40%,100%{opacity:0}}
@keyframes owSweep{0%,31%{left:-70%}38%,100%{left:130%}}
@media (prefers-reduced-motion: reduce){.ow-dim,.onway-stage .ow-screen img.ow-sheet,.ow-glint,.ow-glint::after{animation:none}}
/* round 13: the owner's own photo, cut from its dark table with its own shadow; 60 px lower than round 12 (at 1280) */
.ow-glasses{left:71%;top:69.2%;width:27.5%}
.ow-cmd{position:relative;display:flex;justify-content:center;margin:18px 20px 34px}
.cmd{position:relative;display:flex;align-items:center;gap:12px;width:100%;max-width:600px;box-sizing:border-box;padding:10px 10px 10px 18px;border:1px solid rgba(244,241,234,.25);border-radius:8px;background:rgba(255,255,255,.05);font:500 13.5px/1.5 'JetBrains Mono',monospace;color:#F4F1EA;text-align:left;transition:border-color .2s ease}
.cmd .pr{color:rgba(244,241,234,.45);user-select:none}
.cmd code{flex:1;min-width:0;font:inherit;white-space:nowrap;overflow-x:auto}
.cmd .copy{flex:none;display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border-radius:8px;border:1px solid rgba(244,241,234,.3);background:transparent;color:#F4F1EA;cursor:pointer}
.cmd .copy:hover{background:rgba(255,255,255,.1)}
.cmd .copy:focus-visible{outline:2px solid #8EA2FF;outline-offset:2px}
.cmd .copy svg{width:19px;height:19px}
.cmd .i-ok{display:none}
.cmd.is-copied{border-color:#2FBF71}
.cmd.is-copied .copy{border-color:#2FBF71;color:#7EE2A8}
.cmd.is-copied .i-copy{display:none}
.cmd.is-copied .i-ok{display:block}
.cmd-msg{position:absolute;right:2px;top:calc(100% + 6px);font:500 11.5px/1.3 'JetBrains Mono',monospace;color:#7EE2A8}
.dl .cmd{max-width:none}
.onway-fine{position:relative;margin:10px 0 0;text-align:center;font:500 11px/1.4 'JetBrains Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:rgba(244,241,234,.45)}
@media (max-width:860px){.onway{padding-top:70px}.onway-sub{font-size:17px}.onway .dao{font-size:260px}.onway-stage{aspect-ratio:auto;display:grid;grid-template-columns:1fr 1fr;align-items:center;justify-items:center;gap:18px 12px;padding:0 20px;box-sizing:border-box}.onway-stage img{position:static;width:100%;max-width:520px;transform:none}.ow-laptop,.ow-tablet,.ow-phone{grid-column:1 / -1}.ow-phone{position:relative;left:auto;top:auto;width:100%;max-width:220px !important}.ow-glasses{grid-column:1 / -1;max-width:300px !important}}
.facts-shots{display:flex;flex-direction:column;gap:30px;margin-top:40px;max-width:560px}
.shot-ph{display:flex;align-items:center;justify-content:center;aspect-ratio:16/9;padding:24px;box-sizing:border-box;border:1.5px dashed rgba(16,20,27,.35);border-radius:8px;background:#FFFFFF;text-align:center;font:500 12px/1.5 'JetBrains Mono',monospace;letter-spacing:.06em;color:var(--muted)}
.wf{border:2px solid var(--ink);padding:14px 18px 16px;background:#FFFFFF;max-width:470px;font-size:15px;line-height:1.35}
.wf h3{margin:0;font:700 42px/1 'Instrument Sans',sans-serif;font-stretch:78%;letter-spacing:-.01em}
.wf .bar{height:10px;background:var(--ink);margin:8px 0 6px}
.wf .bar.thin{height:4px}
.wf .row{display:flex;justify-content:space-between;gap:16px;padding:5px 0;border-top:1px solid var(--ink)}
.wf .row:first-of-type{border-top:0}
.wf .row b{font-weight:700}
.wf .row .ok{font-weight:700;white-space:nowrap}
.wf .amt{font:700 13px/1 'Instrument Sans',sans-serif;text-transform:uppercase;letter-spacing:.04em;padding:6px 0 4px}
.wf .fine{margin:8px 0 0;font-size:12.5px;line-height:1.4;color:var(--ink2)}
.wf code{font:500 12px 'JetBrains Mono',monospace;background:var(--paper2);padding:1px 4px;border-radius:3px}

/* roadmap */
.road .wrap{padding-top:110px;padding-bottom:110px}
.road-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:24px;margin-top:40px;align-items:stretch}
.road-art{grid-column:span 2;border:1px solid var(--ink);background:linear-gradient(180deg,#E6EDF6,#FBF3E6 70%,#FAF9F1);position:relative;min-height:440px;overflow:hidden}
.road-art svg{position:absolute;inset:0;width:100%;height:100%}
.road-stations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 20px;margin-top:22px;grid-column:span 2}
.station ul{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.station li{font-size:14.5px;line-height:1.38;color:var(--ink2)}
.station strong{font-weight:700;color:var(--ink)}
@media (max-width:760px){.road-stations{grid-template-columns:minmax(0,1fr)}.road-art{min-height:0;aspect-ratio:960/540}}
/* round 8: the living roads */
.rd-dot{fill:#FFFFFF;stroke:#10141B;stroke-opacity:.38;stroke-width:.55}
.rd-bg .rd-dot{stroke-opacity:.22}
.rd-tip{position:absolute;left:0;top:0;z-index:3;max-width:290px;text-wrap:balance;padding:10px 14px 11px;border-left:3px solid var(--ink);border-radius:4px 10px 10px 4px;background:rgba(255,255,255,.96);box-shadow:0 14px 30px -14px rgba(16,20,27,.45),0 0 0 1px rgba(16,20,27,.08);font:500 14px/1.38 'Instrument Sans',sans-serif;color:var(--ink2);pointer-events:none;opacity:0;transition:opacity .25s ease;will-change:transform}
.rd-tip strong{font-weight:700;color:var(--ink)}
.road-art{touch-action:pan-y}
/* round 15: the faint Ψ over the temple — 1.6× on phones so it stays the letter at a third of the size */
@media (max-width:600px){.rd-psi-in{transform:scale(1.6)}}
.rb .rd-halo-c,.rb .rd-glow-c{fill:url(#cnRb1)} .rb .rd-halo-t,.rb .rd-glow-t{fill:url(#cnRb2)} .rb .rd-halo-b,.rb .rd-glow-b{fill:url(#cnRb3)}
.station b{display:flex;align-items:center;gap:10px;font:600 22px/1.1 'Instrument Sans',sans-serif;letter-spacing:-.015em}
.station b i{flex:none;width:22px;height:6px;border-radius:3px}
.station span{display:block;margin-top:6px;font-size:15px;color:var(--ink2)}
.vote{grid-row:span 2;align-self:start;border:1px solid var(--ink);background:#FFFFFF;padding:26px;display:flex;flex-direction:column;gap:16px}
.vote .vform{display:flex;flex-direction:column;gap:16px}
.vote .vq{margin:0;padding:0 0 4px;border:0;display:flex;flex-direction:column;gap:7px}
.vote legend{padding:0;margin:0 0 6px;font:500 19px/1.25 'Instrument Sans',sans-serif;letter-spacing:-.01em;color:var(--ink)}
.vote .vo{display:flex;align-items:center;gap:10px;min-height:42px;padding:0 14px;border:1px solid var(--line);border-radius:10px;font:400 15.5px/1.3 'Instrument Sans',sans-serif;cursor:pointer;transition:border-color .15s ease,background .15s ease}
.vote .vo:hover{border-color:var(--ink)}
.vote .vo:has(input:checked){border-color:var(--ink);background:#F4F1EA}
.vote .vo input{width:18px;height:18px;margin:0;accent-color:var(--ink);flex:none}
.vote .vbtn{display:inline-flex;align-items:center;height:46px;padding:0 20px;border-radius:999px;border:1px solid var(--ink);background:#FFFFFF;font:600 13px/1 'Instrument Sans',sans-serif;letter-spacing:.07em;text-transform:uppercase;color:var(--ink);text-decoration:none}
.vote .vmsg{margin:0;min-height:1.3em;font:normal 400 18px/1.3 'Instrument Sans',sans-serif;color:var(--ink2)}   /* v8.2.2 (owner, 10-30, via the hub #199): the results list in the card's sans; size and line height unchanged */
.vote h3{margin:0;font:500 28px/1.15 'Instrument Sans',sans-serif;letter-spacing:-.02em}
.vote .opts{display:flex;flex-wrap:wrap;gap:10px}
.vote button{height:46px;padding:0 20px;border-radius:999px;border:1px solid var(--ink);background:#FFFFFF;font:600 13px/1 'Instrument Sans',sans-serif;letter-spacing:.07em;text-transform:uppercase;color:var(--ink);cursor:pointer}
.vote button.yes{background:var(--ink);color:#FAF9F1}
.vote small{font-size:13px;color:var(--muted)}
.rb .lane-c{stroke:url(#cnRb1)} .rb .lane-t{stroke:url(#cnRb2)} .rb .lane-b{stroke:url(#cnRb3)}

/* community */
.comm{background:var(--paper2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.comm .wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));gap:56px;align-items:center;padding-top:110px;padding-bottom:110px}
.epi{margin:16px 0 0;font:italic 400 38px/1.18 'Instrument Serif',Georgia,serif;letter-spacing:-.005em;text-wrap:pretty}
.doors{display:grid;gap:12px}
.join{background:var(--paper)}
.join .wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));gap:56px;align-items:start;padding-top:110px;padding-bottom:110px}
/* round 8 (owner): a blue capsule under the heading */
.hub-pill{position:relative;overflow:hidden;display:flex;width:fit-content;min-height:80px;align-items:center;gap:12px;max-width:100%;box-sizing:border-box;margin:50px 0 0;padding:8px 28px 8px 20px;border-radius:999px;text-decoration:none;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background-color .12s ease;background:var(--aegean);color:#FFFFFF;font:500 15px/1.3 'Instrument Sans',sans-serif;box-shadow:0 12px 26px -16px rgba(31,95,175,.9),inset 0 1px 0 rgba(255,255,255,.18)}
.hub-pill .hp-k{display:block;flex:none;margin:0;padding:7px 11px 6px;border-radius:999px;background:rgba(255,255,255,.16);color:inherit;font:600 11px/1 'JetBrains Mono',monospace;letter-spacing:.12em}
.cn-root a.hub-pill{color:#FFFFFF}   /* the capsule is a link now: '.cn-root a{color:inherit}' would turn it ink */
.hub-pill .hp-t{display:block;margin:0;color:inherit;font:inherit}
.hub-pill .hp-t b{display:inline;font:inherit;font-weight:700;letter-spacing:inherit}
.hub-pill:active{transform:translateY(1px) scale(.985);background:#1A519A;box-shadow:0 6px 14px -10px rgba(31,95,175,.9),inset 0 2px 7px rgba(0,0,0,.22)}
.hub-pill:focus-visible{outline:2px solid var(--aegean);outline-offset:3px}
@media (max-width:560px){.hub-pill{flex-wrap:wrap;border-radius:22px;padding:10px 16px 12px 10px;gap:8px}}
.join-form{display:flex;flex-direction:column;gap:16px;padding:28px;border:1px solid var(--ink);background:#FFFFFF}
.join-form .fld{display:flex;flex-direction:column;gap:7px;font:600 13.5px/1.3 'Instrument Sans',sans-serif;letter-spacing:.02em;color:var(--ink)}
.join-form input[type=text],.join-form input[type=email],.join-form select,.join-form textarea{width:100%;box-sizing:border-box;min-height:48px;padding:12px 14px;border:1px solid #B9B3A7;border-radius:8px;background:#FFFFFF;font:400 16px/1.4 'Instrument Sans',sans-serif;color:var(--ink)}
.join-form textarea{resize:vertical}
.join-form input:focus,.join-form select:focus,.join-form textarea:focus{outline:2px solid var(--aegean);outline-offset:1px;border-color:var(--aegean)}
.join-form .chk{display:flex;align-items:flex-start;gap:10px;font-size:14.5px;line-height:1.4;color:var(--ink2)}
.join-form .chk input{flex:none;width:20px;height:20px;margin:1px 0 0;accent-color:var(--ink)}
.join-form .chk a{color:var(--aegean)}
.join-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px 18px;margin-top:4px}
.form-status{margin:0;min-height:1.3em;font:italic 400 17px/1.3 'Instrument Serif',Georgia,serif;color:var(--ink2)}
.join-actions small{font:500 11px/1.4 'JetBrains Mono',monospace;color:var(--muted)}
.door{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 24px;border:1px solid var(--ink);background:#FFFFFF;text-decoration:none;color:var(--ink)}
.door b{display:block;font:500 24px/1.15 'Instrument Sans',sans-serif;letter-spacing:-.015em}
.door span{display:block;margin-top:4px;font-size:15px;color:var(--ink2)}
.door svg{width:20px;height:20px;flex:none}
.support{margin:6px 0 0;font-size:16px}
.support a{font-weight:600;text-underline-offset:3px}

/* faq */
.faq .wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(330px,100%),1fr));gap:48px;padding-top:120px;padding-bottom:120px;align-items:start}
.faq-left h2{margin:0}
.ours{margin-top:30px;border-top:1px solid var(--ink)}
.ours a{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--line);text-decoration:none;font-size:16px;line-height:1.35}
.ours a svg{width:16px;height:16px;flex:none}
.faq-list{grid-column:span 2;border-top:1px solid var(--ink)}
.faq-list details{border:1px solid var(--ink);border-top:0;background:#FFFFFF}
.faq-list summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 24px;cursor:pointer;list-style:none;font:500 17px/1.3 'Instrument Sans',sans-serif;letter-spacing:.03em;text-transform:uppercase}
.faq-list summary::-webkit-details-marker{display:none}
.abox{flex:none;display:grid;place-items:center;width:38px;height:32px;border:1px solid var(--ink);transition:transform .25s ease}
.abox svg{width:16px;height:16px}
.faq-list details[open] .abox{transform:rotate(180deg)}
.faq-list .a{margin:0;padding:0 24px 22px;max-width:70ch;font-size:16.5px;color:var(--ink2)}
.faq-more{margin-top:22px}

/* persona */
.persona{background:var(--deep);color:#F4F1EA}
.persona .wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));gap:0;padding:0 40px}
.persona-art{min-height:640px;margin:0;display:flex;align-items:center;justify-content:center;padding:40px;box-sizing:border-box;border-left:1px solid rgba(244,241,234,.18);border-right:1px solid rgba(244,241,234,.18);background:radial-gradient(70% 60% at 50% 40%,rgba(246,184,0,.16),rgba(246,184,0,0) 70%)}
.persona-art{flex-direction:column;gap:14px}
.persona-art img{display:block;width:100%;max-width:400px;height:auto;aspect-ratio:825/1024;object-fit:cover;border-radius:10px;box-shadow:0 24px 50px -24px rgba(0,0,0,.6)}
.persona-art figcaption{font:500 10.5px/1.4 'JetBrains Mono',monospace;letter-spacing:.12em;text-transform:uppercase;color:rgba(244,241,234,.6)}
.persona-art div{width:100%;max-width:380px;aspect-ratio:4/5;border:1.5px dashed rgba(244,241,234,.45);border-radius:10px;display:flex;align-items:center;justify-content:center;text-align:center;padding:24px;box-sizing:border-box;font:500 12.5px/1.5 'JetBrains Mono',monospace;letter-spacing:.06em;color:rgba(244,241,234,.8)}
.persona-copy{padding:84px 0 84px 56px;display:flex;flex-direction:column;gap:22px;justify-content:center}
.persona .eyebrow{color:rgba(244,241,234,.72)}
.persona .eyebrow.persona-kick{color:#FF6A00}   /* round 12 (owner): orange — the Download flash's orange, 5.4 : 1 on the deep blue */
.persona-try{margin-left:18px;font:600 13px/1 'JetBrains Mono',monospace;letter-spacing:.16em;color:#F4F1EA;vertical-align:middle}
.persona blockquote{margin:0;font:400 27px/1.38 'Instrument Sans',sans-serif;letter-spacing:-.012em}
.persona blockquote .serif{font-size:1.12em}
.persona blockquote b{font-weight:600;color:#FFFFFF}
.persona blockquote u{text-decoration-thickness:1.5px;text-underline-offset:5px;text-decoration-color:rgba(244,241,234,.7)}
.pname{font:500 13px/1.5 'JetBrains Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:rgba(244,241,234,.8)}

/* download */
.dl{background:var(--ink);color:#F4F1EA}
.dl .wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));gap:48px;align-items:center;padding-top:110px;padding-bottom:110px}
.dl .eyebrow{color:rgba(244,241,234,.7)}

.dl .meta{margin:18px 0 0;font:500 13.5px/1.6 'JetBrains Mono',monospace;letter-spacing:.04em;color:rgba(244,241,234,.86)}
.dl .cta-row{margin-top:28px}
html{scroll-behavior:smooth}
.dl-main{background-size:300% 100%}
.dl-main.flash-a,.dl-main.flash-b{background-image:linear-gradient(100deg,#F4F1EA 0%,#F4F1EA 33%,#FF6A00 42%,#FFA040 50%,#FFFFFF 60%,#F4F1EA 67%,#F4F1EA 100%)}
.dl-main.flash-a{animation:cnFlashA 1.15s cubic-bezier(.25,.7,.25,1) both}
.dl-main.flash-b{animation:cnFlashB 1.15s cubic-bezier(.25,.7,.25,1) both}
@keyframes cnFlashA{0%{background-position:100% 0;box-shadow:0 0 0 0 rgba(255,106,0,.6)}70%{box-shadow:0 0 0 16px rgba(255,106,0,0)}100%{background-position:0% 0;box-shadow:0 0 0 0 rgba(255,106,0,0)}}
@keyframes cnFlashB{0%{background-position:100% 0;box-shadow:0 0 0 0 rgba(255,106,0,.6)}70%{box-shadow:0 0 0 16px rgba(255,106,0,0)}100%{background-position:0% 0;box-shadow:0 0 0 0 rgba(255,106,0,0)}}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.dl-main.flash-a,.dl-main.flash-b{animation:none;box-shadow:0 0 0 3px #FF6A00}}
.dl .btn-ghost{background:transparent;color:#F4F1EA;border-color:rgba(244,241,234,.6)}
.dl .side{display:grid;gap:12px}
.dl pre{margin:0;padding:16px 18px;border:1px solid rgba(244,241,234,.25);border-radius:6px;background:rgba(255,255,255,.04);font:500 13.5px/1.6 'JetBrains Mono',monospace;white-space:pre-wrap;color:#F4F1EA}
.dl .card{padding:16px 18px;border:1px solid rgba(244,241,234,.25);border-radius:6px;font-size:15.5px}
.dl .card a{font-weight:600;color:#F4F1EA}
.dl .ph{color:#FFD86B}

/* footer */
.foot{background:var(--paper)}
.foot .wrap{padding-top:70px;padding-bottom:200px}
.foot-end{margin-top:40px;padding-top:22px;border-top:1px solid var(--ink)}
.wm-big{display:block;width:100%;height:auto;color:var(--ink)}
.foot-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px 40px;margin-top:40px;padding-top:22px;border-top:1px solid var(--ink)}
.motto{margin:0;max-width:36ch;font:italic 400 22px/1.3 'Instrument Serif',Georgia,serif}
.foot nav{display:flex;flex-wrap:wrap;gap:6px 22px;font-size:15px}
.foot nav a{text-decoration:none;padding:6px 0}
.foot .foot-grid{display:grid;grid-template-columns:minmax(0,1fr) repeat(3,minmax(0,168px));gap:28px 36px;margin-top:40px;padding-top:26px;border-top:1px solid var(--ink)}
.foot .foot-col{display:flex;flex-direction:column;flex-wrap:nowrap;gap:2px;font-size:14px}
.foot .foot-col h4{margin:0 0 14px;font:600 17px/1.2 'Instrument Sans',sans-serif;letter-spacing:.03em;text-transform:uppercase}
.foot .foot-col a{padding:4px 0;font:600 14px/1.3 'Instrument Sans',sans-serif;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;color:var(--ink)}
.foot .foot-col a:hover{color:var(--aegean)}
.foot .foot-col a.foot-hot{color:#BF4E00}   /* orange that still reads at 4.6:1 on paper (14 px text needs 4.5:1) */
.foot .foot-col a.foot-hot:hover{color:var(--aegean)}
.foot .foot-col small{margin-top:10px;font:500 11px/1.4 'JetBrains Mono',monospace;color:var(--muted)}
.foot-first{display:flex;flex-direction:column;gap:26px}
.news{display:flex;flex-direction:column;gap:8px;max-width:420px}
.news label{font:600 13.5px/1.3 'Instrument Sans',sans-serif;letter-spacing:.02em}
.news-row{display:flex;gap:8px}
.news-row input{flex:1;min-width:0;height:48px;padding:0 14px;box-sizing:border-box;border:1px solid #B9B3A7;border-radius:999px;background:#FFFFFF;font:400 16px 'Instrument Sans',sans-serif;color:var(--ink)}
.news-row input:focus{outline:2px solid var(--aegean);outline-offset:1px}
.news-row .btn{height:48px;padding:0 20px}
.news small{font:500 11px/1.4 'JetBrains Mono',monospace;color:var(--muted)}
.legal-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px 24px;margin-top:0}
.legal-row .legal{width:auto;margin:0}
.cn-root a.patreon{display:inline-flex;align-items:center;gap:7px;font:600 15px/1.2 var(--bf,inherit);color:#BF4E00;text-decoration:none;border-bottom:1.5px solid currentColor;padding-bottom:2px}.cn-root a.patreon:hover{color:var(--aegean)}.patreon svg{width:16px;height:16px}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.foot .soc{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.foot .soc a{box-sizing:border-box;padding:0;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--ink);border-radius:999px;color:var(--ink);text-decoration:none;transition:background .2s ease,color .2s ease}
.foot .soc a:hover{background:var(--ink);color:#FAF9F1}
.soc svg{width:21px;height:21px}
.soc small{margin-left:4px;font:500 11px/1.4 'JetBrains Mono',monospace;color:var(--muted)}
.legal{width:100%;margin:34px 0 0;font:500 11.5px/1.6 'JetBrains Mono',monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}

/* weave divider + off badge */
.weave-div{display:block;width:1440px;max-width:none;height:70px;margin:0 auto;position:relative;left:50%;transform:translateX(-50%);color:var(--ink)}
.weave-holder{overflow:hidden}
.off{position:fixed;right:20px;bottom:0;z-index:160;display:flex;align-items:center;gap:12px;height:50px;padding:0 18px;border-radius:4px 4px 0 0;background:var(--ink);color:#FFFFFF !important;text-decoration:none;font:600 19px/1 'Instrument Sans',sans-serif;letter-spacing:.01em;box-shadow:0 14px 34px -14px rgba(0,0,0,.55)}
.off small{display:block;max-width:0;overflow:hidden;white-space:nowrap;font:500 10.5px/1 'JetBrains Mono',monospace;letter-spacing:.12em;text-transform:uppercase;opacity:.85;transition:max-width .45s ease}
.off:hover small,.off:focus-visible small{max-width:240px}

/* focus + motion + responsive */
.cn-root a:focus-visible,.cn-root button:focus-visible,.cn-root summary:focus-visible{outline:2px solid var(--aegean);outline-offset:3px}
@media (prefers-reduced-motion: reduce){.track,.bob,.mark .eyes,.cn-anim .cn-spin,.cn-anim .cn-f,.g-move,.g-bars,.g-caret,.g-draw,.rm-move{animation:none !important}.weave .mover{display:none}.brandmark,.promo,.nav::before{transition:none !important}}
@media (max-width:1180px){.promo{display:none}.hero-athene{height:660px;right:-120px}.oly-h2{font-size:44px}}
@media (max-width:980px){.foot .foot-grid{grid-template-columns:1fr 1fr}.foot .foot-first{grid-column:1/-1}}
@media (max-width:980px){.vote{grid-row:auto}.road-art,.road-stations,.faq-list{grid-column:auto}.hero-athene{right:-220px;opacity:.95}.navlinks.left{display:none}}
@media (max-width:860px){
 .wrap{padding-left:20px;padding-right:20px}
 .navlinks .pill:not(.solid){display:none}
 .brandmark{left:20px;transform:none;width:calc(100vw - 40px)}
 .is-scrolled .brandmark{width:180px;top:24.2px}
 .hero .wrap{flex-direction:column;min-height:0}
 .hero-copy{padding:56px 0 0}
 .hero-h1{font-size:min(calc(10vw - 2px),48px);width:auto;white-space:normal}.interlude p{font-size:34px}.moon-quote{font-size:23.8px;margin-top:30px}.oly-h2{font-size:34px}.comp-shot{width:76px}.comp-main{gap:20px}.hero-sub{font-size:21px}.hero-sub .serif{font-size:25px}
 .hero-athene{position:relative;right:auto;left:auto;height:auto;width:118%;margin:10px -9% 0}
 .hero-athene img{width:100%;height:auto}
 .weave{display:none}
 .weave-m{display:block;position:absolute;left:0;bottom:6px;width:100%;height:auto;z-index:4;pointer-events:none;color:var(--ink);overflow:visible}
 .talk3{gap:14px}
 .oly .wrap{grid-template-columns:1fr;min-height:0;padding-top:70px}
 .oly-can{transform:scale(.82);margin:-40px 0 -30px}
 .oly-can .oly-shot{width:330px;left:50%;transform:translate(-50%,-55%) rotate(-5deg)}
 .oly-can .oly-pen{display:none}
 .oly-h2{font-size:40px}.oly-myth{font-size:21px}
 .ing-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
 .h2{font-size:38px}
 .epi{font-size:29px}
 .persona .wrap{padding:0 20px}.persona-art{min-height:420px;border:0}.persona-copy{padding:40px 0 70px}
 .persona blockquote{font-size:22px}
 .friends .wrap{flex-direction:column;align-items:flex-start;gap:10px;height:auto;padding-top:16px;padding-bottom:16px}
 .friends .marquee{width:100%}
 .off{right:12px;bottom:0;height:42px;padding:0 14px;font-size:16px}
 .off small{display:none}
}
/* round 16 (owner, 11-01): the app icon in the download block */
.dl .dl-icon{display:block;width:72px;height:72px;margin:0 0 22px;filter:drop-shadow(0 12px 20px rgba(0,0,0,.4))}
/* round 16 (owner, 11-01): the languages band — the interface, dictation and read-aloud languages as three lists, every name
   in its own script and in the app splash's face (Noto Sans Condensed); a JOIN capsule for the translators */
.langs{background:var(--paper)}
.langs .wrap{padding-top:96px;padding-bottom:110px}
.lang-grid{display:grid;grid-template-columns:.95fr 1.4fr 1.05fr;gap:18px;margin-top:44px;align-items:stretch}
.lang-card{display:flex;flex-direction:column;padding:26px 26px 24px;border:1px solid var(--line);border-radius:6px;background:#fff}
/* round 18 (owner, 11-01): the names the numbers stand for — Interface, Dictation, Read aloud — read first */
.lang-card .lc-t{margin:0;font:600 30px/1.05 var(--hf);letter-spacing:-.02em;color:var(--ink);text-transform:none}
.lang-card .lc-t + .lc-k{margin-top:7px}
.lang-card .lc-k{margin:0;font:500 11.5px/1.3 'JetBrains Mono',monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.lang-card .lc-n{margin:12px 0 0;font:500 72px/1 var(--hf);letter-spacing:-.045em}
.lang-card .lc-n small{font:italic 400 25px/1 'Instrument Serif',Georgia,serif;letter-spacing:0;margin-left:10px;color:var(--ink2)}
.lang-big{margin:14px 0 0;font:700 44px/1.02 'Noto Sans',sans-serif;font-stretch:75%;letter-spacing:-.012em}
.lang-big span{display:block}
.lang-cloud{display:flex;flex-wrap:wrap;gap:3px 15px;margin:16px 0 0;padding:0;list-style:none}
.lang-cloud li{font:700 22px/1.3 'Noto Sans',sans-serif;font-stretch:75%;letter-spacing:-.004em;white-space:nowrap}
.lang-cloud li i{font:500 9.5px/1 'JetBrains Mono',monospace;font-style:normal;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);vertical-align:super;margin-left:3px}
.lang-cloud li.home{background:linear-gradient(180deg,transparent 58%,rgba(246,184,0,.55) 58%,rgba(246,184,0,.55) 90%,transparent 90%)}
.lang-card .lc-wait{margin:18px 0 0;font:700 19px/1.35 'Noto Sans',sans-serif;font-stretch:75%;color:var(--muted)}
.lang-card .lc-note{margin:auto 0 0;padding-top:18px;font-size:14.5px;line-height:1.45;color:var(--ink2)}
.langs .hub-pill{margin:40px auto 0}
@media (max-width:980px){.lang-grid{grid-template-columns:1fr}}
@media (max-width:860px){.langs .wrap{padding-top:70px;padding-bottom:80px}.lang-card .lc-t{font-size:27px}.lang-big{font-size:38px}.lang-card .lc-n{font-size:60px}.lang-cloud li{font-size:20px}}

/* round 17 (owner, 11-01): the final logo — the kit's colours and motion */
.cnl{overflow:visible}
.cnl-iris{fill:#ffb700}
.cnl-word{fill:var(--cnl-ink,#0b0b0c)}
.cnl-dot{fill:#0b0b0c}
.cnl-glint{fill:#fff}
.cnl-anim .cnl-pupil{transform-box:view-box;transform-origin:1031.11px -50px;animation:cnlLook 9s ease-in-out infinite,cnlBlink 5.2s infinite}
@keyframes cnlLook{0%,18%{translate:0 0}24%,38%{translate:13.56px -4.28px}46%,60%{translate:-12.85px 3.57px}68%,100%{translate:0 0}}
@keyframes cnlBlink{0%,93%,100%{scale:1 1}95.5%{scale:1 .06}}
@media (prefers-reduced-motion: reduce){.cnl-anim .cnl-pupil{animation:none}}

.cn-scene{perspective:1100px;width:270px;height:456px;display:flex;align-items:center;justify-content:center}
.cn-can{position:relative;width:180px;height:326px;transform-style:preserve-3d}
.cn-spin{position:absolute;inset:0;transform-style:preserve-3d}
.cn-f{position:absolute;left:84.95px;top:0;width:10.61px;height:326px;backface-visibility:hidden;display:block;
 background-image:linear-gradient(180deg,#eef1f4 0px,#b9c0c8 6px,#f4f6f8 11px,#c9cfd6 16px,rgba(0,0,0,0) 16px,rgba(0,0,0,0) 316px,#d4d8de 316px,#9aa2ac 326px),linear-gradient(180deg,rgba(0,0,0,.20) 0px,rgba(0,0,0,0) 26px,rgba(0,0,0,0) 304px,rgba(0,0,0,.24) 326px),linear-gradient(90deg,rgba(0,0,0,0.750) 0.00px,rgba(0,0,0,0.750) 11.79px,rgba(0,0,0,0.750) 23.59px,rgba(0,0,0,0.750) 35.38px,rgba(0,0,0,0.750) 47.17px,rgba(0,0,0,0.750) 58.97px,rgba(0,0,0,0.750) 70.76px,rgba(0,0,0,0.750) 82.55px,rgba(0,0,0,0.750) 94.35px,rgba(0,0,0,0.750) 106.14px,rgba(0,0,0,0.750) 117.93px,rgba(0,0,0,0.691) 129.73px,rgba(0,0,0,0.600) 141.52px,rgba(0,0,0,0.511) 153.31px,rgba(0,0,0,0.425) 165.11px,rgba(0,0,0,0.345) 176.90px,rgba(1,1,1,0.271) 188.69px,rgba(14,14,14,0.213) 200.49px,rgba(98,98,98,0.218) 212.28px,rgba(202,202,202,0.342) 224.07px,rgba(234,234,234,0.436) 235.87px,rgba(235,235,235,0.293) 247.66px,rgba(225,225,225,0.095) 259.45px,rgba(211,211,211,0.014) 271.25px,rgba(255,255,255,0.001) 283.04px,rgba(2,2,2,0.003) 294.83px,rgba(0,0,0,0.012) 306.63px,rgba(0,0,0,0.031) 318.42px,rgba(0,0,0,0.059) 330.21px,rgba(0,0,0,0.098) 342.01px,rgba(0,0,0,0.146) 353.80px,rgba(2,2,2,0.205) 365.59px,rgba(27,27,27,0.293) 377.39px,rgba(80,80,80,0.434) 389.18px,rgba(54,54,54,0.484) 400.97px,rgba(6,6,6,0.517) 412.77px,rgba(0,0,0,0.600) 424.56px,rgba(0,0,0,0.691) 436.35px,rgba(0,0,0,0.750) 448.15px,rgba(0,0,0,0.750) 459.94px,rgba(0,0,0,0.750) 471.73px,rgba(0,0,0,0.750) 483.53px,rgba(0,0,0,0.750) 495.32px,rgba(0,0,0,0.750) 507.11px,rgba(0,0,0,0.750) 518.91px,rgba(0,0,0,0.750) 530.70px,rgba(0,0,0,0.750) 542.49px,rgba(0,0,0,0.750) 554.29px,rgba(0,0,0,0.750) 566.08px),url('img/label.webp');
 background-size:100% 100%,100% 100%,566.08px 100%,566.08px 300px;
 background-repeat:no-repeat,no-repeat,repeat-x,repeat-x;
 background-position:0 0,0 0,var(--l0) 0,var(--lbl) 16px}
.cn-lid,.cn-foot{position:absolute;left:0;width:180px;height:180px;border-radius:50%}
.cn-lid{top:-90.0px;transform:rotateX(90deg);background:radial-gradient(circle at 50% 50%,#d9dde3 0 38%,#aab1ba 39% 41%,#e7eaee 42% 78%,#9aa2ac 80% 84%,#e9ecef 86% 100%)}
.cn-lid::after{content:"";position:absolute;left:38%;top:20%;width:24%;height:22%;border-radius:40%;background:linear-gradient(135deg,#f3f5f7,#a9b0b9);box-shadow:0 0 0 2px rgba(120,128,138,.35) inset}
.cn-foot{top:236.0px;transform:rotateX(90deg);background:radial-gradient(circle,#c3c8cf 0 70%,#8e96a1 72% 100%)}
.cn-anim .cn-spin{animation:cnSpin 22s linear infinite}
.cn-anim .cn-f{animation:cnLight 22s linear infinite}
@keyframes cnSpin{from{transform:rotateY(0deg)}to{transform:rotateY(-360deg)}}
@keyframes cnLight{from{background-position:0 0,0 0,var(--l0) 0,var(--lbl) 16px}to{background-position:0 0,0 0,calc(var(--l0) + 566.08px) 0,var(--lbl) 16px}}
@media (prefers-reduced-motion: reduce){.cn-anim .cn-spin,.cn-anim .cn-f{animation:none}}
.cn-spin>.cn-f:nth-child(1){transform:rotateY(0.0000deg) translateZ(89.85px);--lbl:-277.99px;--l0:-277.99px}
.cn-spin>.cn-f:nth-child(2){transform:rotateY(6.4286deg) translateZ(89.85px);--lbl:-288.09px;--l0:-288.09px}
.cn-spin>.cn-f:nth-child(3){transform:rotateY(12.8571deg) translateZ(89.85px);--lbl:-298.20px;--l0:-298.20px}
.cn-spin>.cn-f:nth-child(4){transform:rotateY(19.2857deg) translateZ(89.85px);--lbl:-308.31px;--l0:-308.31px}
.cn-spin>.cn-f:nth-child(5){transform:rotateY(25.7143deg) translateZ(89.85px);--lbl:-318.42px;--l0:-318.42px}
.cn-spin>.cn-f:nth-child(6){transform:rotateY(32.1429deg) translateZ(89.85px);--lbl:-328.53px;--l0:-328.53px}
.cn-spin>.cn-f:nth-child(7){transform:rotateY(38.5714deg) translateZ(89.85px);--lbl:-338.64px;--l0:-338.64px}
.cn-spin>.cn-f:nth-child(8){transform:rotateY(45.0000deg) translateZ(89.85px);--lbl:-348.75px;--l0:-348.75px}
.cn-spin>.cn-f:nth-child(9){transform:rotateY(51.4286deg) translateZ(89.85px);--lbl:-358.85px;--l0:-358.85px}
.cn-spin>.cn-f:nth-child(10){transform:rotateY(57.8571deg) translateZ(89.85px);--lbl:-368.96px;--l0:-368.96px}
.cn-spin>.cn-f:nth-child(11){transform:rotateY(64.2857deg) translateZ(89.85px);--lbl:-379.07px;--l0:-379.07px}
.cn-spin>.cn-f:nth-child(12){transform:rotateY(70.7143deg) translateZ(89.85px);--lbl:-389.18px;--l0:-389.18px}
.cn-spin>.cn-f:nth-child(13){transform:rotateY(77.1429deg) translateZ(89.85px);--lbl:-399.29px;--l0:-399.29px}
.cn-spin>.cn-f:nth-child(14){transform:rotateY(83.5714deg) translateZ(89.85px);--lbl:-409.40px;--l0:-409.40px}
.cn-spin>.cn-f:nth-child(15){transform:rotateY(90.0000deg) translateZ(89.85px);--lbl:-419.51px;--l0:-419.51px}
.cn-spin>.cn-f:nth-child(16){transform:rotateY(96.4286deg) translateZ(89.85px);--lbl:-429.61px;--l0:-429.61px}
.cn-spin>.cn-f:nth-child(17){transform:rotateY(102.8571deg) translateZ(89.85px);--lbl:-439.72px;--l0:-439.72px}
.cn-spin>.cn-f:nth-child(18){transform:rotateY(109.2857deg) translateZ(89.85px);--lbl:-449.83px;--l0:-449.83px}
.cn-spin>.cn-f:nth-child(19){transform:rotateY(115.7143deg) translateZ(89.85px);--lbl:-459.94px;--l0:-459.94px}
.cn-spin>.cn-f:nth-child(20){transform:rotateY(122.1429deg) translateZ(89.85px);--lbl:-470.05px;--l0:-470.05px}
.cn-spin>.cn-f:nth-child(21){transform:rotateY(128.5714deg) translateZ(89.85px);--lbl:-480.16px;--l0:-480.16px}
.cn-spin>.cn-f:nth-child(22){transform:rotateY(135.0000deg) translateZ(89.85px);--lbl:-490.27px;--l0:-490.27px}
.cn-spin>.cn-f:nth-child(23){transform:rotateY(141.4286deg) translateZ(89.85px);--lbl:-500.37px;--l0:-500.37px}
.cn-spin>.cn-f:nth-child(24){transform:rotateY(147.8571deg) translateZ(89.85px);--lbl:-510.48px;--l0:-510.48px}
.cn-spin>.cn-f:nth-child(25){transform:rotateY(154.2857deg) translateZ(89.85px);--lbl:-520.59px;--l0:-520.59px}
.cn-spin>.cn-f:nth-child(26){transform:rotateY(160.7143deg) translateZ(89.85px);--lbl:-530.70px;--l0:-530.70px}
.cn-spin>.cn-f:nth-child(27){transform:rotateY(167.1429deg) translateZ(89.85px);--lbl:-540.81px;--l0:-540.81px}
.cn-spin>.cn-f:nth-child(28){transform:rotateY(173.5714deg) translateZ(89.85px);--lbl:-550.92px;--l0:-550.92px}
.cn-spin>.cn-f:nth-child(29){transform:rotateY(180.0000deg) translateZ(89.85px);--lbl:-561.03px;--l0:-561.03px}
.cn-spin>.cn-f:nth-child(30){transform:rotateY(186.4286deg) translateZ(89.85px);--lbl:-5.05px;--l0:-5.05px}
.cn-spin>.cn-f:nth-child(31){transform:rotateY(192.8571deg) translateZ(89.85px);--lbl:-15.16px;--l0:-15.16px}
.cn-spin>.cn-f:nth-child(32){transform:rotateY(199.2857deg) translateZ(89.85px);--lbl:-25.27px;--l0:-25.27px}
.cn-spin>.cn-f:nth-child(33){transform:rotateY(205.7143deg) translateZ(89.85px);--lbl:-35.38px;--l0:-35.38px}
.cn-spin>.cn-f:nth-child(34){transform:rotateY(212.1429deg) translateZ(89.85px);--lbl:-45.49px;--l0:-45.49px}
.cn-spin>.cn-f:nth-child(35){transform:rotateY(218.5714deg) translateZ(89.85px);--lbl:-55.60px;--l0:-55.60px}
.cn-spin>.cn-f:nth-child(36){transform:rotateY(225.0000deg) translateZ(89.85px);--lbl:-65.71px;--l0:-65.71px}
.cn-spin>.cn-f:nth-child(37){transform:rotateY(231.4286deg) translateZ(89.85px);--lbl:-75.81px;--l0:-75.81px}
.cn-spin>.cn-f:nth-child(38){transform:rotateY(237.8571deg) translateZ(89.85px);--lbl:-85.92px;--l0:-85.92px}
.cn-spin>.cn-f:nth-child(39){transform:rotateY(244.2857deg) translateZ(89.85px);--lbl:-96.03px;--l0:-96.03px}
.cn-spin>.cn-f:nth-child(40){transform:rotateY(250.7143deg) translateZ(89.85px);--lbl:-106.14px;--l0:-106.14px}
.cn-spin>.cn-f:nth-child(41){transform:rotateY(257.1429deg) translateZ(89.85px);--lbl:-116.25px;--l0:-116.25px}
.cn-spin>.cn-f:nth-child(42){transform:rotateY(263.5714deg) translateZ(89.85px);--lbl:-126.36px;--l0:-126.36px}
.cn-spin>.cn-f:nth-child(43){transform:rotateY(270.0000deg) translateZ(89.85px);--lbl:-136.47px;--l0:-136.47px}
.cn-spin>.cn-f:nth-child(44){transform:rotateY(276.4286deg) translateZ(89.85px);--lbl:-146.57px;--l0:-146.57px}
.cn-spin>.cn-f:nth-child(45){transform:rotateY(282.8571deg) translateZ(89.85px);--lbl:-156.68px;--l0:-156.68px}
.cn-spin>.cn-f:nth-child(46){transform:rotateY(289.2857deg) translateZ(89.85px);--lbl:-166.79px;--l0:-166.79px}
.cn-spin>.cn-f:nth-child(47){transform:rotateY(295.7143deg) translateZ(89.85px);--lbl:-176.90px;--l0:-176.90px}
.cn-spin>.cn-f:nth-child(48){transform:rotateY(302.1429deg) translateZ(89.85px);--lbl:-187.01px;--l0:-187.01px}
.cn-spin>.cn-f:nth-child(49){transform:rotateY(308.5714deg) translateZ(89.85px);--lbl:-197.12px;--l0:-197.12px}
.cn-spin>.cn-f:nth-child(50){transform:rotateY(315.0000deg) translateZ(89.85px);--lbl:-207.23px;--l0:-207.23px}
.cn-spin>.cn-f:nth-child(51){transform:rotateY(321.4286deg) translateZ(89.85px);--lbl:-217.33px;--l0:-217.33px}
.cn-spin>.cn-f:nth-child(52){transform:rotateY(327.8571deg) translateZ(89.85px);--lbl:-227.44px;--l0:-227.44px}
.cn-spin>.cn-f:nth-child(53){transform:rotateY(334.2857deg) translateZ(89.85px);--lbl:-237.55px;--l0:-237.55px}
.cn-spin>.cn-f:nth-child(54){transform:rotateY(340.7143deg) translateZ(89.85px);--lbl:-247.66px;--l0:-247.66px}
.cn-spin>.cn-f:nth-child(55){transform:rotateY(347.1429deg) translateZ(89.85px);--lbl:-257.77px;--l0:-257.77px}
.cn-spin>.cn-f:nth-child(56){transform:rotateY(353.5714deg) translateZ(89.85px);--lbl:-267.88px;--l0:-267.88px}

/* v8.5 — real-life case studies (mini-ads), scattered between sections */
.case{padding:34px 0}
.case-row{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:40px;align-items:center;padding:34px 40px;border:1px solid var(--line,#D9D5CB);border-radius:18px;background:#fff;position:relative}
.case-row::before{content:"";position:absolute;left:28px;top:-9px;width:86px;height:18px;background:rgba(246,184,0,.55);transform:rotate(-2deg);border-radius:2px}
.case-k{margin:0;font:600 12px/1 'JetBrains Mono',monospace;letter-spacing:.12em;text-transform:uppercase;color:#BF4E00}
.case-h{margin:12px 0 0;font:500 32px/1.1 var(--hf);letter-spacing:-.03em;color:var(--ink)}
.case-h .serif{font-size:1.1em}
.case-steps{display:flex;flex-wrap:wrap;gap:8px 10px;margin:18px 0 0;padding:0;list-style:none}
.case-steps li{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 6px;border:1px solid var(--line,#D9D5CB);border-radius:999px;background:var(--paper);font-size:15px;line-height:1.2}
.case-n{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--ink);color:#fff;font:600 12px/1 'JetBrains Mono',monospace}
.case-p{margin:16px 0 0;color:var(--ink2,#3B4250)}
.case-tag{display:inline-block;margin:14px 0 0;padding:4px 10px;border-radius:6px;background:#EAF0F9;color:var(--aegean);font:600 12.5px/1.3 'JetBrains Mono',monospace;letter-spacing:.02em}
.case-fine{margin:10px 0 0;font-size:13px;color:var(--muted,#6B7280)}
.case-art{display:block;width:100%;height:auto}
.c1-hot{fill:#fff}
@media (prefers-reduced-motion:no-preference){
 /* each story plays twice and then rests on its last frame — the full story (the static state is the same) */
 .case-art *{transform-box:fill-box}
 .c1-sel{transform-origin:left center;animation:c1sel 9s 2 both}
 .c1-menu,.c1-hit{animation:c1menu 9s 2 both}
 .c1-cur{animation:c1cur 9s 2 both}
 .c1-clip{animation:c1clip 9s 2 both}
 .c1-arrow{animation:c1arr 9s 2 both}
 @keyframes c1sel{0%,6%{transform:scaleX(0)}18%,100%{transform:scaleX(1)}}
 @keyframes c1menu{0%,26%{opacity:0}30%,100%{opacity:1}}
 @keyframes c1cur{0%,6%{transform:translate(24px,140px)}18%{transform:translate(306px,176px)}26%{transform:translate(150px,176px)}40%,100%{transform:translate(262px,252px)}}
 @keyframes c1clip{0%,44%{opacity:0;transform:translateX(-60px)}54%,100%{opacity:1;transform:none}}
 @keyframes c1arr{0%,42%{opacity:0}48%,100%{opacity:1}}
 .c2-ring{animation:c2ring 1.25s ease-in-out 8 both}
 .c2-menu{animation:c2menu 10s 2 both}
 .c2-hit{animation:c2hit 10s 2 both}
 .c2-l{animation:c2l 10s 2 both}
 .c2-l1{animation-name:c2l1}.c2-l2{animation-name:c2l2}.c2-l3{animation-name:c2l3}
 .c2-rec{animation:c2rec 1s steps(2) 20 both}
 @keyframes c2ring{0%{opacity:1}50%{opacity:.25}100%{opacity:1}}
 @keyframes c2menu{0%,8%{opacity:0}14%,100%{opacity:1}}
 @keyframes c2hit{0%,20%{opacity:0}26%,100%{opacity:1}}
 @keyframes c2l{0%,32%{opacity:0}36%,100%{opacity:1}}
 @keyframes c2l1{0%,46%{opacity:0}50%,100%{opacity:1}}
 @keyframes c2l2{0%,60%{opacity:0}64%,100%{opacity:1}}
 @keyframes c2l3{0%,74%{opacity:0}78%,100%{opacity:1}}
 @keyframes c2rec{0%{opacity:.25}100%{opacity:1}}
}
@media (max-width:860px){
 .case{padding:22px 0}
 .case-row{grid-template-columns:1fr;gap:22px;padding:26px 20px}
 /* .cn-root is zoomed (.75 at 390 px): sizes here are the design sizes, on screen ×.75 */
 .case-k{font-size:14px}
 .case-h{font-size:32px}
 .case-steps li{font-size:18px;padding:7px 14px 7px 7px}.case-n{width:26px;height:26px;font-size:14px}
 .case-p{font-size:20px}
 .case-tag{font-size:15px}
 .case-fine{font-size:16px}
}

/* v8.5 — our own classic banners (the same frames as the GIF kit for other portals) */
.cn-strips{display:flex;flex-direction:column;align-items:flex-start;gap:16px;margin-top:34px}
.cn-strip{display:block;width:100%;max-width:728px;line-height:0;border-radius:4px;outline-offset:4px}
.cn-strip img{display:block;width:100%;height:auto;border-radius:4px;box-shadow:0 0 0 1px rgba(16,20,27,.08)}
@media (max-width:760px){.cn-strips{align-items:center}.cn-strip{width:400px;max-width:100%}}   /* .cn-root is zoomed to .75 on phones: 400 → 300 px on screen */

/* export: switched parts (ingredient panels, the vote) hide with the hidden attribute */
.cn-root [hidden]{display:none !important}

/* v8.8–v9.0 — the hero logo carries the app icon in the eye pair's place, close to the wordmark (owner, 11-05);
   the icon keeps its own rounded, bevelled corners (no clipping) */
.brandmark{justify-content:center;gap:2.2%}   /* v9.2 (owner): centred, the gap kept */
.brandmark .mark-app{width:9.6%;height:auto;aspect-ratio:1/1;transform:none;filter:drop-shadow(0 6px 10px rgba(16,20,27,.16))}
.is-scrolled .brandmark{width:340px;top:16px}
@media (max-width:860px){.is-scrolled .brandmark{width:216px;top:21px}}
/* v9.0 — crisper header type: whole-pixel size, a touch more weight */
.pill{font:600 13px/1 'Instrument Sans',sans-serif;letter-spacing:.06em}
.promo{font-size:12px}
/* v8.8–v9.0 — Edition switcher: two halves; „Edition” on the logo's iris gold, the editions unchanged */
.ed{display:inline-flex;align-items:stretch;height:38px;margin:0;padding:0;box-sizing:border-box;border:1px solid var(--ink);border-radius:999px;overflow:hidden;font:600 13px/1 'Instrument Sans',sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);white-space:nowrap}
.ed-k{display:flex;align-items:center;padding:0 12px 0 15px;background:#FFB700;color:var(--ink);border-right:1px solid var(--ink)}
.ed-v{display:flex;align-items:center;gap:7px;padding:0 15px 0 12px}
.ed i{font-style:normal;color:var(--muted)}
.ed a{color:inherit;text-decoration:none;padding:5px 1px 3px;border-bottom:2px solid transparent;transition:border-color .2s ease}
.ed a[aria-current]{font-weight:700;border-bottom-color:var(--sun)}
.ed a:not([aria-current]):hover{border-bottom-color:currentColor}
.ed a:focus-visible{outline:2px solid var(--aegean);outline-offset:3px;border-radius:2px}
@media (max-width:860px){.ed-k{padding:0 9px 0 11px}.ed-v{padding:0 11px 0 9px;gap:6px}}
/* v9.0 — the hero copy sits 50 px lower, the chip close to the headline (owner, 11-05) */
.hero-h1{margin-top:14px}
@media (min-width:861px){.hero-copy{padding-top:80px}}
/* v9.0 — the JOIN THE HUB capsules (→ The Linux Window) 30 % larger, type included (owner, 11-05) */
.hub-pill[href$="linux-window.html"]{min-height:104px;gap:15.6px;padding:10.4px 36.4px 10.4px 26px;font-size:19.5px}
.hub-pill[href$="linux-window.html"] .hp-k{padding:9.1px 14.3px 7.8px;font-size:14.3px}
@media (max-width:560px){.hub-pill[href$="linux-window.html"]{border-radius:28.6px;padding:13px 20.8px 15.6px 13px;gap:10.4px}}
/* v9.0 — the voices EQ talks: syllable-rate bars with a phrase envelope (bursts and short pauses), not a lava lamp */
@keyframes eqA{0%{transform:scaleY(.25)}9%{transform:scaleY(.92)}17%{transform:scaleY(.38)}26%{transform:scaleY(.7)}33%{transform:scaleY(.16)}44%{transform:scaleY(1)}52%{transform:scaleY(.46)}61%{transform:scaleY(.82)}69%{transform:scaleY(.22)}80%{transform:scaleY(.64)}90%{transform:scaleY(.3)}100%{transform:scaleY(.25)}}
@keyframes eqB{0%{transform:scaleY(.6)}8%{transform:scaleY(.2)}19%{transform:scaleY(.95)}27%{transform:scaleY(.35)}38%{transform:scaleY(.75)}46%{transform:scaleY(.14)}57%{transform:scaleY(.66)}66%{transform:scaleY(.9)}74%{transform:scaleY(.28)}86%{transform:scaleY(.8)}100%{transform:scaleY(.6)}}
@keyframes eqC{0%{transform:scaleY(.85)}11%{transform:scaleY(.3)}20%{transform:scaleY(.62)}31%{transform:scaleY(.12)}40%{transform:scaleY(.88)}49%{transform:scaleY(.5)}60%{transform:scaleY(.97)}71%{transform:scaleY(.24)}79%{transform:scaleY(.58)}91%{transform:scaleY(.4)}100%{transform:scaleY(.85)}}
.eqbar{animation-timing-function:cubic-bezier(.3,.7,.4,1);animation-direction:normal}
@keyframes eqPhrase{0%,100%{transform:scaleY(1)}14%{transform:scaleY(.86)}22%{transform:scaleY(1.06)}31%{transform:scaleY(.95)}36%{transform:scaleY(.32)}41%{transform:scaleY(.34)}46%{transform:scaleY(1)}58%{transform:scaleY(.9)}67%{transform:scaleY(1.08)}74%{transform:scaleY(.8)}79%{transform:scaleY(.28)}83%{transform:scaleY(.95)}92%{transform:scaleY(.88)}}
.eq-ph{transform-box:view-box;transform-origin:50% 50%;animation:eqPhrase 5.6s cubic-bezier(.4,0,.3,1) infinite}
@media (prefers-reduced-motion: reduce){.eqbar,.eq-ph{animation:none}.eqbar{transform:scaleY(.6)}}
/* v9.0 — Hindi, written in Hindi: next in line for dictation and reading aloud */
/* v9.0 — on phones the scrolled header has no room for both: the gold „Edition” half steps aside, the editions stay */
@media (max-width:860px){.is-scrolled .ed-k{display:none}.is-scrolled .ed-v{padding:0 12px}}

/* ---- v9.1 (owner, 11-06) ---- */
/* the site frame (owner: ~940 → 1000 px, measured at a ~1024-px window): the side margins give way down to 12 px,
   the content grows to at most 1234 px (1160 × 1000 / 940); the logo row follows the frame */
@media (min-width:861px){.wrap{max-width:1314px;padding-left:clamp(12px,calc(50vw - 500px),40px);padding-right:clamp(12px,calc(50vw - 500px),40px)}
 .persona .wrap{padding:0 clamp(12px,calc(50vw - 500px),40px)}
 .cn-root:not(.is-scrolled) .brandmark{width:min(1234px,calc(100vw - 2 * clamp(12px,calc(50vw - 500px),40px)))}}
/* hero: the stage 100 px taller — the figure stands lower, away from the three lines; the copy breathes a little */
.hero .wrap{min-height:920px}
@media (min-width:861px){.hero-copy{padding-top:90px}}
.talk3{margin-top:56px}
/* the splash: +10 % (from its bottom-left corner), then 30 px left (30 / 887 of the 1280 figure) */
.hero-splash{left:38.11%;width:48.70%}   /* v9.2 (owner): 40 px further left (40 / 887) */
.hero-left .hero-splash{right:38.11%}
@media (max-width:860px){.hero-splash{width:55.66%;left:35.36%}.hero-left .hero-splash{right:35.36%}}
/* the Draw screenshot floats over the open palm: 40 % of its size in the label section (560 → 224 px), 30 px above the palm */
.hero-athene .hero-palm{position:absolute;left:20.4%;bottom:18.9%;width:25.25%;z-index:3;display:block;animation:cnFloat 6s ease-in-out infinite}
.hero-athene .hero-palm img{width:100%;height:auto;display:block;transform:none;-webkit-mask-image:none;mask-image:none;border-radius:5px;box-shadow:0 18px 30px -12px rgba(16,20,27,.42),0 0 0 1px rgba(16,20,27,.10)}
.hero-left .hero-palm{left:auto;right:20.4%}
@keyframes cnFloat{0%,100%{transform:translateY(0) rotate(-1.2deg)}50%{transform:translateY(-9px) rotate(.6deg)}}
@media (prefers-reduced-motion: reduce){.hero-athene .hero-palm{animation:none}}
/* the Android line on the flavour cards */
.flav-card .pair a[href]{color:#0000FF;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
/* languages: हिन्दी in the lists; the self-recognising line with its tick */
.lang-cloud li[lang=hi]{font-family:'Noto Sans Devanagari','Noto Sans',sans-serif;font-stretch:100%}
.lc-note b{font-weight:700;color:var(--ink)}
.lc-note .ok-tick{display:inline-block;width:.95em;height:.95em;margin:0 .1em 0 .3em;vertical-align:-.12em;color:#0000FF}
/* phones, scrolled: the blog pill says BLOG, the small logo keeps clear of the edition switch */
.pl-x{margin-right:.32em}
/* narrow desktops (861–1239 px), scrolled: the three left pills step aside and the small logo sits at the left edge of the frame,
   clear of the edition switch (below ~1180 px it ran into it, since v8.x) */
@media (min-width:861px) and (max-width:1239px){.is-scrolled .navlinks.left{opacity:0;pointer-events:none;transition:opacity .3s ease}.is-scrolled .brandmark{left:clamp(12px,calc(50vw - 500px),40px);transform:none;width:300px}}
@media (max-width:600px){.is-scrolled .pl-x{display:none}.is-scrolled .brandmark{width:196px}}

/* ---- v9.2 (owner, 11-07) ---- */
/* the big logo row: centred (above), 40 px lower on desktop */
@media (min-width:861px){.cn-root:not(.is-scrolled) .brandmark{top:124px}}
/* the Olympos heading: "… ENERGY APP" on one line — the size follows the column (727 px of text at 50 px) */
@media (min-width:861px){.oly-copy{container-type:inline-size}.oly-h2{font-size:min(50px,6.8cqi)}.oly-h2 .oh-1{white-space:nowrap}}
/* "With Android Companion app" — the eyebrow's face, blue, an 8-bit robot in Android green and a pixel arrow */
.apk-go{display:inline-flex;align-items:center;gap:.55em;font:500 12px/1.3 'JetBrains Mono',ui-monospace,monospace;letter-spacing:.16em;text-transform:uppercase;color:#0000FF;text-decoration:none;white-space:nowrap}
.apk-go:hover{text-decoration:underline;text-underline-offset:3px}
.px-droid,.px-arrow{flex:none;width:12px;height:12px;display:inline-block;vertical-align:-1px}
.px-droid{color:#3DDC84}
.apk-go .px-arrow{margin-left:-.25em}
.oly-cta{align-items:center}
.oly-cta .apk-go{margin-left:10px}
.dl .cta-row{align-items:center}
.dl .apk-go{margin-left:10px;color:#8FB4FF}
.flav-card .pair a[href]{display:inline-flex;align-items:center;gap:6px;margin-top:2px}
.flav-card .pair .px-arrow{margin-left:-2px}
/* Interface: हिन्दी at the end of the waiting list */
.lang-card .lc-wait [lang=hi]{font-family:'Noto Sans Devanagari','Noto Sans',sans-serif;font-stretch:100%}

/* ---- v9.2 (owner, 11-07): the vote's results as bars behind the answers ----
   After a vote the live layer sets data-live-results on the form and --live-share (0–100 %) on each answer's label; the
   shares of one question add up to 100 %. Each answer has its own colour; the picked answers stay checked. */
@property --live-share{syntax:'<percentage>';inherits:false;initial-value:0%}
.vote .vq .vo:nth-of-type(1){--bar:rgba(246,184,0,.42)}
.vote .vq .vo:nth-of-type(2){--bar:rgba(31,95,175,.24)}
.vote .vq .vo:nth-of-type(3){--bar:rgba(110,127,58,.30)}
.vote .vq .vo:nth-of-type(4){--bar:rgba(200,100,59,.28)}
.vote .vq .vo:nth-of-type(5){--bar:rgba(124,77,180,.24)}
.vote .vq .vo:nth-of-type(6){--bar:rgba(32,150,140,.26)}
.vote[data-live-results] .vq .vo,.vote[data-live-results] .vq .vo:has(input:checked){background-image:linear-gradient(90deg,var(--bar) 0 var(--live-share),transparent var(--live-share));background-repeat:no-repeat;transition:--live-share 1.2s cubic-bezier(.2,.75,.2,1),border-color .15s ease}
.vote[data-live-results] .vq .vo:has(input:checked){font-weight:600}
@media (prefers-reduced-motion: reduce){.vote[data-live-results] .vq .vo{transition:none}}

/* ---- v9.3 (owner, 11-08) ---- */
/* the hero's second button: Marketplace, with our own line icon */
.btn-market svg{width:16px;height:16px}
/* the meme: a business card left on the table between the tablet and the sunglasses, ~17° (the glasses lie over its corner) */
.onway-stage img.ow-meme{left:65.8%;top:50.6%;width:10.8%;transform:rotate(17deg);transform-origin:50% 50%;
  filter:drop-shadow(0 10px 14px rgba(0,0,0,.45));border-radius:2px}
@media (max-width:860px){.onway-stage img.ow-meme{display:none}}
/* made with love 🍇 — the grape in proportion with the words */
.dl .grape{font-size:.82em;line-height:1;vertical-align:.04em}



/* ---- v9.3 (owner 11-08): the phone without zoom. Round 14's zoom .75 made half of the text smaller than 12 px; now a phone gets
   fewer sections at full size: hero, features, languages, the label, the roadmap in three lines, the hub, FAQ, download, footer ---- */
.road-mini{display:none}
@media (max-width:600px){
  .cn-root{zoom:1}
  .cn-root :is(input:not([type=radio]):not([type=checkbox]),select,textarea){font-size:16px}
  .cn-root:not(.is-scrolled) .brandmark{width:calc(100vw - 32px)}
  .friends,.oly,.flav,.case,.learn,.voices,.onway,.comm,.cn-strips,.persona,
  .road .road-art,.road .station,.road .stations,.road .vote,.join .join-form,
  .calm3 .calm-card:nth-child(n+2),.feat-grid .feat-item:nth-child(n+7),.feat-shots,.lang-grid .lang-card:nth-child(n+2),
  .facts-shots,.faq-left .ours,.hub-lang,.road-foot .hub-pill,.join .join-copy .lead{display:none}
  .cn-root .fine,.cn-root .legal,.cn-root small{font-size:13.5px;line-height:1.45}
  .cn-root .eyebrow,.cn-root .apk-go,.cn-root .cmd code{font-size:13px}
  .road-mini{display:grid;gap:12px;margin:22px 0 0;padding:0;list-style:none}
  .road-mini li{display:grid;grid-template-columns:12px 1fr;column-gap:12px;font-size:16px;line-height:1.45;color:var(--ink2,#3A3F48)}
  .road-mini i{grid-row:span 2;width:12px;height:12px;border-radius:50%;margin-top:6px}
  .road-mini b{font-weight:600;color:var(--ink,#10141B)}
}
