@import"https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;1,9..144,400&family=Noto+Sans:wght@400;500;600&family=Noto+Sans+Mono:wght@400;500&display=swap";.mahalo-hub{--ink:#0b0e13;--raised:#12161d;--surface:#1a202a;--hair:#303a49;--text:#e7eaf0;--muted:#8a94a6;--lagoon:#2fb8a6;--coral:#ff7a59;--orchid:#9c7bff;min-height:100vh;padding:0 clamp(20px,5vw,72px);background:radial-gradient(circle at 88% 4%,rgba(47,184,166,.08),transparent 30%),radial-gradient(circle at 8% 58%,rgba(156,123,255,.06),transparent 28%),var(--ink);color:var(--text);font-family:Noto Sans,sans-serif}.mahalo-hub *{box-sizing:border-box}.mahalo-hub__nav{height:88px;border-bottom:1px solid rgba(48,58,73,.55);display:flex;align-items:center;justify-content:space-between}.mahalo-hub__brand{color:var(--text);text-decoration:none;display:flex;align-items:center;gap:10px}.mahalo-hub__brand-icon{width:23px;color:var(--lagoon)}.mahalo-hub__brand-name{font:400 23px/1 "Instrument Serif",serif}.mahalo-hub__version{color:var(--muted);font:10px Noto Sans Mono,monospace;letter-spacing:.14em}.mahalo-hub__hero{min-height:670px;padding:72px 0 80px;display:grid;grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);gap:72px;align-items:center}.mahalo-hub__kicker{margin:0 0 22px;color:var(--lagoon);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.mahalo-hub__title{max-width:780px;margin:0;font:400 clamp(54px,6.4vw,94px)/.98 "Fraunces",serif;letter-spacing:-.052em;text-wrap:balance}.mahalo-hub__intro{max-width:650px;margin:30px 0 0;color:var(--muted);font-size:18px;line-height:1.65}.mahalo-hub__aurora{position:relative;isolation:isolate;aspect-ratio:1.12;overflow:hidden;border-radius:28px 10px 28px 28px;background:linear-gradient(125deg,#123a44,#1e9184 30%,#2fb8a6 50%,#6f7fe0 74%,#9c7bff);box-shadow:inset 0 0 0 1px #ffffff29}.mahalo-hub__aurora:before{content:"";position:absolute;width:72%;height:72%;left:-18%;top:-25%;border-radius:50%;background:#ffffff1f;filter:blur(3px)}.mahalo-hub__aurora-word{position:absolute;z-index:2;left:34px;bottom:30px;font:italic 400 28px Fraunces,serif}.mahalo-hub__aurora-dome{position:absolute;left:-10%;right:-10%;bottom:-30%;height:55%;border-radius:50% 50% 0 0;background:#0b0e1347}.mahalo-hub__projects{padding:36px 0 80px;border-top:1px solid rgba(48,58,73,.55);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.mahalo-project{position:relative;min-height:560px;padding:30px;overflow:hidden;border:1px solid rgba(48,58,73,.65);border-radius:28px 10px 28px 28px;color:var(--text);text-decoration:none;background:var(--surface);display:flex;flex-direction:column;transition:border-color .16s ease,transform .16s ease}.mahalo-project:hover{border-color:#2fb8a6b8;transform:scale(.995)}.mahalo-project--kai{background:linear-gradient(150deg,rgba(47,184,166,.12),var(--surface) 45%)}.mahalo-project--embrace{background:linear-gradient(155deg,rgba(156,123,255,.12),var(--surface) 52%)}.mahalo-project__top{display:flex;justify-content:space-between;align-items:center}.mahalo-project__index{color:var(--lagoon);font:11px Noto Sans Mono,monospace}.mahalo-project__arrow{width:36px;height:36px;padding:9px;border-radius:50%;background:#e7eaf014}.mahalo-project__content{max-width:560px;margin-top:auto}.mahalo-project__icon{width:30px;color:var(--lagoon)}.mahalo-project__title{margin:18px 0 0;font:400 48px/1 Fraunces,serif;letter-spacing:-.035em}.mahalo-project__description{margin:18px 0 0;color:var(--muted);line-height:1.62}.mahalo-project__theme-row{margin-top:30px;display:flex;gap:10px}.mahalo-project__theme{height:46px;padding:0 15px;border-radius:999px;display:flex;align-items:center;gap:8px;font-size:12px}.mahalo-project__theme--ink{background:var(--ink);border:1px solid var(--hair)}.mahalo-project__theme--dawn{background:#f7f5f0;color:#1b2430}.mahalo-project__theme-icon{width:15px}.mahalo-project__phones{height:220px;margin-top:28px;display:flex;justify-content:center;align-items:end;gap:18px}.mahalo-project__phone{width:118px;height:210px;padding:10px;border:4px solid var(--hair);border-radius:28px;background:var(--ink);display:flex;align-items:end}.mahalo-project__phone--dawn{height:190px;background:#f7f5f0;border-color:#e8e4dc}.mahalo-project__phone-card{width:100%;height:100px;border-radius:18px 7px 18px 18px;background:linear-gradient(25deg,#ff7a59,#e85d8a)}.mahalo-project__phone--dawn .mahalo-project__phone-card{background:#ffffffc7;box-shadow:0 6px 24px #1b243014}.mahalo-hub__system-line{padding:42px 0;border-top:1px solid rgba(48,58,73,.55);border-bottom:1px solid rgba(48,58,73,.55);display:grid;grid-template-columns:44px 1fr;gap:18px;align-items:center}.mahalo-hub__system-icon{width:26px;color:var(--lagoon)}.mahalo-hub__system-text{max-width:920px;margin:0;font:400 27px/1.32 Fraunces,serif}.mahalo-hub__footer{padding:76px 0 42px;display:flex;justify-content:space-between;align-items:end;gap:24px}.mahalo-hub__footer-title{font:400 36px/1 "Instrument Serif",serif;letter-spacing:-.02em}.mahalo-hub__footer-meta{color:var(--muted);font:11px Noto Sans Mono,monospace}.mahalo-hub__footer-meta strong{font:400 20px/1 "Instrument Serif",serif;color:var(--text)}.mahalo-hub__projects{grid-template-columns:repeat(3,minmax(0,1fr))}.mahalo-project--embrace-v1{background:#141922}.mahalo-project--embrace-v1 .mahalo-project__phone-card{background:linear-gradient(25deg,#2fb8a6,#6f7fe0)}@media(max-width:1100px){.mahalo-hub__projects{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.mahalo-hub__hero{grid-template-columns:1fr;gap:42px}.mahalo-hub__aurora{aspect-ratio:1.65}.mahalo-hub__projects{grid-template-columns:1fr}.mahalo-project{min-height:500px}}@media(max-width:600px){.mahalo-hub{padding:0 20px}.mahalo-hub__version{display:none}.mahalo-hub__hero{min-height:auto;padding:64px 0}.mahalo-hub__title{font-size:54px}.mahalo-hub__intro{font-size:16px}.mahalo-hub__aurora{aspect-ratio:1}.mahalo-project{min-height:530px;padding:24px}.mahalo-project__title{font-size:40px}.mahalo-hub__system-text{font-size:22px}.mahalo-hub__footer{align-items:flex-start;flex-direction:column}.mahalo-hub__footer-title{font-size:28px}}
