:root{--bg:#050918;--surface:#0c1230;--surface-2:#131a3e;--text:#f2f4ff;--muted:#a7b1d8;--border:#212a56;--line-blue:rgba(100,142,248,0.25);--accent:#ff4f8b;--accent-2:#ff8a4c;--accent-ink:#ffffff;--gradient:linear-gradient(90deg,var(--accent),var(--accent-2));--ok:#6cc18f;--warn:#e8b44f;--radius:14px;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:radial-gradient(1000px 600px at 80% 40%,rgba(80,70,220,.12),transparent 70%),var(--bg);background-repeat:no-repeat;overflow-x:clip;color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.55}a{color:inherit}a:hover{color:var(--accent)}.container{max-width:1320px;margin:0 auto;padding:0 16px}header.site{border-bottom:1px solid var(--border);background:rgba(5,9,24,.72);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:-webkit-sticky;position:sticky;top:0;z-index:10}header.site .container{justify-content:space-between;gap:16px;min-height:60px}header.site .container,header.site nav{display:flex;align-items:center;flex-wrap:wrap}header.site nav{gap:18px}header.site nav a:not(.button){text-decoration:none;color:var(--muted);font-size:15px}header.site nav a:not(.button):hover{color:var(--text)}header.site .nav-main{margin-right:auto;margin-left:20px}@media (max-width:640px){header.site .nav-main{margin-left:0}}.logo{font-weight:800;font-size:20px;text-decoration:none;letter-spacing:-.02em}.logo span,footer.site .dot{color:var(--accent)}main{padding:32px 0 64px}footer.site{border-top:1px solid var(--border);color:var(--muted);font-size:14px;padding:120px 0 40px;background:linear-gradient(180deg,var(--bg) 0,rgba(5,9,24,0) 35%,rgba(5,9,24,.55) 100%),url(/assets/kodeby-panorama.webp) top /cover no-repeat}h1{font-size:clamp(28px,5vw,42px);line-height:1.15;letter-spacing:-.02em;margin:0 0 12px}h2{font-size:22px;margin:36px 0 14px}h3{margin:0 0 4px}.lead,h3{font-size:18px}.lead{max-width:640px;margin:0 0 20px}.lead,.muted{color:var(--muted)}.small{font-size:14px}.grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}.card{border:1px solid var(--border);border-radius:var(--radius);padding:18px;display:flex;flex-direction:column;gap:8px;text-decoration:none}a.card:hover{border-color:var(--accent);color:inherit}.card .thumb,.hero-shot{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:top;border-radius:8px;background:var(--border)}.hero-shot{border-radius:12px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-block;border:1px solid var(--border);border-radius:999px;padding:4px 12px;font-size:14px;text-decoration:none;background:var(--surface)}.chip.active{border-color:var(--accent);color:var(--accent)}.badge{display:inline-block;font-size:12px;font-weight:600;padding:2px 8px;border-radius:999px;border:1px solid}.badge.ok{color:var(--ok)}.badge.warn{color:var(--warn)}.badge.muted{color:var(--muted)}.button{display:inline-flex;align-items:center;gap:8px;background:var(--gradient);border:0;border-radius:10px;padding:12px 20px;font-weight:700;font-size:16px;text-decoration:none;cursor:pointer}.button,.button:hover{color:var(--accent-ink)}.button:hover{filter:brightness(1.05)}.button:disabled{opacity:.6;cursor:progress}.button.secondary{background:transparent;color:var(--text);border:1px solid #3a4580;background:rgba(5,9,24,.4)}.button.secondary:hover{border-color:var(--accent)}.button.small{padding:6px 12px;font-size:14px}.layout-2{display:grid;grid-gap:32px;gap:32px;grid-template-columns:minmax(0,2fr) minmax(0,1fr)}@media (max-width:760px){.layout-2{grid-template-columns:1fr}}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px}form.stack{display:grid;grid-gap:14px;gap:14px;max-width:640px}label{display:grid;grid-gap:6px;gap:6px;font-weight:600;font-size:15px}label .hint{font-weight:400;color:var(--muted);font-size:13px}input,select,textarea{color-scheme:dark;font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:10px 12px;width:100%}textarea{min-height:110px}fieldset{border:1px solid var(--border);border-radius:var(--radius);padding:16px;display:grid;grid-gap:14px;gap:14px}legend{font-weight:700;padding:0 6px}.check{display:flex;gap:10px;align-items:flex-start;font-weight:400}.check input{width:auto;margin-top:4px}table{width:100%;border-collapse:collapse;font-size:15px}td,th{text-align:left;padding:10px 8px;border-bottom:1px solid var(--border);vertical-align:top}th{font-size:13px;color:var(--muted);font-weight:600}.table-wrap{overflow-x:auto}.stats{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px}.stat .value{font-size:24px;font-weight:800}.stat .label{font-size:13px;color:var(--muted)}.mono,code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px}pre{border:1px solid var(--border);border-radius:8px;padding:12px;overflow-x:auto}.notice,pre{background:var(--surface)}.notice{border-left:3px solid var(--accent);padding:8px 14px;border-radius:4px}.prose p{margin:0 0 12px;white-space:pre-line}.icon-inline{flex:none}.gradient-text{background:var(--gradient);-webkit-background-clip:text;background-clip:text;color:transparent}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-2);margin-bottom:10px}.text-link{color:var(--muted);font-weight:600;text-decoration:none}.checks{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:10px 22px}.checks li{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:14px}.check-icon{color:var(--accent);flex:none}.tag{display:inline-block;font-size:12px;padding:3px 10px;border-radius:999px;border:1px solid var(--border);color:var(--muted);background:var(--surface-2)}.avatar{display:inline-grid;place-items:center;border-radius:50%;flex:none;font-weight:800;color:#fff;background:var(--gradient)}.byline{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);text-decoration:none}.band{margin-inline:calc(50% - 50vw);padding-inline:calc(50vw - 50%);position:relative}.hero-band{margin-top:-32px;padding-top:40px;padding-bottom:24px;background:linear-gradient(90deg,rgba(5,9,24,.85) 0,rgba(5,9,24,.35) 55%,rgba(5,9,24,.15) 100%),linear-gradient(180deg,rgba(5,9,24,0) 60%,var(--bg) 100%),url(/assets/kodeby-hero-bg.webp) center 30% /cover no-repeat}.hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);grid-gap:24px;gap:24px;align-items:center}@media (max-width:900px){.hero{grid-template-columns:1fr}}.slogan{display:grid;grid-gap:2px;gap:2px;font-size:clamp(34px,5.2vw,60px);line-height:1.06;margin-bottom:18px}.slogan .slogan-last{font-size:.46em;line-height:1.3;margin-top:10px;color:var(--text);font-weight:700}.hero .lead{color:#c3cbec}.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:22px}.text-link{display:inline-flex;align-items:center;gap:6px}.checks li{color:#c3cbec}.hero-art{position:relative}.hero-art img{display:block;width:100%;height:auto;object-fit:contain;filter:drop-shadow(0 20px 50px rgba(60,90,255,.35))}@media (max-width:900px){.hero-art{max-width:520px;margin:0 auto;width:100%}}.note{position:absolute;font-family:Caveat,Segoe Print,Bradley Hand,cursive;font-size:21px;line-height:1.1;color:#d4dbff;max-width:130px;z-index:1;text-shadow:0 2px 8px rgba(0,0,0,.6)}.note-1{left:0;top:2%;transform:rotate(-6deg)}.note-2{right:0;top:-2%;transform:rotate(7deg)}.note-3{right:-1%;top:84%;transform:rotate(-4deg)}@media (max-width:520px){.note{display:none}}.category-row{display:flex;gap:10px;overflow-x:auto;padding:4px 0 12px;scrollbar-width:thin}.category-chip{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;flex:none;padding:12px 18px;border-radius:12px;border:1px solid var(--border);background:var(--surface);text-decoration:none;font-size:14px;color:var(--muted)}.category-chip .cat-icon{color:var(--accent)}.category-chip.active,.category-chip:hover{border-color:var(--accent-2);color:var(--text)}.category-chip.active{background:linear-gradient(180deg,rgba(255,138,76,.12),rgba(255,79,139,.06))}.section{margin-top:40px}.section-head{display:flex;align-items:flex-start;gap:14px;margin-bottom:16px}.section-head>div{flex:1 1;min-width:0}.section-head h2{margin:0}.section-head p{margin:2px 0 0}.section-icon{font-size:24px;line-height:1.2;color:var(--accent-2);width:26px;text-align:center;flex:none}.section-link{margin-left:auto;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;color:var(--accent-2);text-decoration:none;font-weight:600;font-size:14px;padding-top:6px}@media (max-width:640px){.section-head{flex-wrap:wrap}.section-head>div{flex-basis:calc(100% - 40px)}.section-link{margin-left:40px;padding-top:0}}.card{background:var(--surface)}.app-card{flex-direction:row;align-items:flex-start;gap:14px;padding:14px}.app-card-body{display:grid;grid-gap:6px;gap:6px;min-width:0}.app-card h3{font-size:17px;margin:0}.app-card .thumb-small{width:88px;flex:none;aspect-ratio:1;border-radius:12px}.thumb-empty{display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#1c2660,#121a44)}.thumb-empty .cat-icon{width:30%;height:30%;color:var(--accent)}.featured-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);grid-gap:28px;gap:28px;align-items:center;background:linear-gradient(135deg,rgba(80,110,255,.08),rgba(255,79,139,.04)),var(--surface);border:1px solid var(--border);border-radius:18px;padding:22px}@media (max-width:760px){.featured-card{grid-template-columns:1fr}}.featured-shot .thumb{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:top;border-radius:12px;display:grid;place-items:center}.featured-shot .thumb-empty .cat-icon{width:18%;height:18%}.featured-body{display:grid;grid-gap:10px;gap:10px;align-content:start}.featured-body h3{font-size:26px;margin:0}.featured-body h3 a{text-decoration:none}.featured-tagline{font-size:17px;color:var(--muted);margin:0}.why{margin:0;padding:10px 14px;border-left:3px solid var(--accent-2);background:var(--surface-2);border-radius:6px;font-size:15px}.pick-badge{justify-self:start;display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:#ffc46b;border:1px solid rgba(255,196,107,.4);border-radius:999px;padding:4px 12px}.featured-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:4px}.home-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;grid-gap:28px;gap:28px;align-items:start}.home-aside{position:-webkit-sticky;position:sticky;top:84px;margin-top:40px}@media (max-width:1060px){.home-grid{grid-template-columns:1fr}.home-aside{position:static}}.vision-card{position:relative;overflow:hidden;isolation:isolate;min-height:440px;border:1px solid var(--line-blue);border-radius:14px;background-color:#080f29;background-image:linear-gradient(180deg,rgba(4,8,27,.15),rgba(5,10,30,.08) 55%,rgba(2,5,22,.4)),url(/assets/kodeby-vision-card-bg.webp);background-position:50%,bottom;background-size:cover,cover}.vision-card-content{position:relative;z-index:1;padding:34px 26px;max-width:34ch}.vision-card-eyebrow{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#b6c5fd}.vision-card-content h2{font-size:clamp(22px,2vw,29px);line-height:1.14;margin:18px 0 12px;color:#fff}.vision-card-content p{color:#c5d3f7;line-height:1.6;font-size:14px;margin:0}.vision-card-content a{display:inline-flex;align-items:center;gap:8px;color:#69cbff;margin-top:19px;font-weight:600;text-decoration:none}.vision-card-content a:hover{color:#b3edff}.story-band{margin-top:56px;padding-top:48px;padding-bottom:40px;background:linear-gradient(180deg,var(--bg) 0,rgba(5,9,24,.55) 30%,rgba(5,9,24,.7) 70%,var(--bg) 100%),url(/assets/kodeby-section-atmosphere.webp) 50% /cover no-repeat}.vision{text-align:center;margin-bottom:28px}.vision-line{font-size:clamp(22px,3.2vw,34px);font-weight:800;line-height:1.22;letter-spacing:-.01em;margin:0 auto 10px;max-width:860px}.vision .muted{max-width:620px;margin:0 auto}.story-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);grid-gap:18px;gap:18px}@media (max-width:960px){.story-grid{grid-template-columns:1fr}}.story-panel{background:rgba(10,15,40,.72);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--line-blue);border-radius:16px;padding:20px}.creators{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.creator{display:flex;align-items:center;gap:12px;padding:14px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);text-decoration:none}.creator:hover{border-color:var(--accent);color:inherit}.signature{font-family:Caveat,Segoe Print,cursive;font-size:24px;color:var(--accent-2);margin:14px 0 0}.levels{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.level{display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:12px;background:var(--surface);border:1px solid var(--border)}.how-icon,.level-icon{flex:none;width:42px;height:42px;border-radius:10px;display:grid;place-items:center;color:#b6c5fd;background:var(--surface-2);border:1px solid var(--border)}.level strong{display:block;margin:2px 0 4px}.how{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:40px;gap:40px}.how-step{position:relative;display:flex;gap:14px;align-items:flex-start;padding:18px;background:var(--surface);border:1px solid var(--border);border-radius:14px}.how-step+.how-step:before{content:"→";position:absolute;left:-30px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:20px}.how-num{flex:none;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;font-weight:800;background:rgba(255,79,139,.14);color:var(--accent);border:1px solid rgba(255,79,139,.35)}.how-icon{color:var(--accent-2)}.how-step strong{display:block;margin-bottom:4px}@media (max-width:900px){.how{grid-template-columns:1fr;gap:12px}.how-step+.how-step:before{display:none}}@media (max-width:520px){.how-icon{display:none}}.step{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px}.step h3{margin:0 0 6px}.step p{margin:0}.step-num{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-2)}.about-band{margin-top:-32px;padding-top:72px;padding-bottom:72px;background:linear-gradient(180deg,rgba(5,9,24,.3) 0,rgba(5,9,24,.55) 60%,var(--bg) 100%),url(/assets/kodeby-hero-bg.webp) center 40% /cover no-repeat}.about-hero{max-width:820px}.about-title{font-size:clamp(32px,4.6vw,54px);line-height:1.1;margin:0 0 18px}.about-hero .lead{color:#c3cbec;max-width:680px}.statements{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin-top:8px}.statement{padding:20px;border-radius:14px;border:1px solid var(--line-blue);background:rgba(12,18,48,.8)}.statement p{margin:8px 0 0;font-size:18px;font-weight:700;line-height:1.35}.principles{list-style:none;padding:0;margin:0;display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr))}.principles li{display:flex;gap:12px;align-items:flex-start;padding:16px;border-radius:12px;background:var(--surface);border:1px solid var(--border)}.principles strong{display:block;margin-bottom:4px}.about-later{display:grid;grid-template-columns:minmax(0,1fr) 340px;grid-gap:28px;gap:28px;align-items:start}@media (max-width:1060px){.about-later{grid-template-columns:1fr}}.later{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.creator-banner{margin-top:56px;display:grid;grid-template-columns:auto minmax(0,1.3fr) minmax(0,1fr) auto;grid-gap:24px;gap:24px;align-items:center;padding:26px;border-radius:18px;border:1px solid rgba(255,138,76,.35);background:linear-gradient(120deg,rgba(255,79,139,.14),rgba(255,138,76,.08) 55%,rgba(12,18,48,.6))}.creator-banner h2{margin:0 0 6px;font-size:26px}.creator-banner p{margin:0}.banner-icon{width:56px;height:56px;border-radius:14px;display:grid;place-items:center;color:var(--accent);background:rgba(255,79,139,.12)}.banner-checks{display:grid;grid-gap:8px;gap:8px}@media (max-width:960px){.creator-banner{grid-template-columns:1fr}.banner-icon{display:none}.creator-banner .button{justify-self:start}}