/* Public landing page: compact glass surfaces on the original star background. */
html:has(.public-home){background:#071a2b;color:#edf7fc}
body.portal:has(.public-home){background-color:#071a2b;background-image:radial-gradient(circle at 17% 24%,#6dafb955 1px,transparent 1.5px),radial-gradient(circle at 63% 68%,#6dafb944 1px,transparent 1.5px),radial-gradient(circle at 81% 13%,#6dafb955 1px,transparent 1.5px);background-size:240px 260px,310px 350px,430px 410px;min-height:100vh;color:#edf7fc}
body.portal:has(.public-home)>.topbar{min-height:88px;padding:16px max(5vw,24px);background:#071a2b99;border-color:#7dded520;color:#edf7fc}
body.portal:has(.public-home)>.topbar .brand{color:#edf7fc;font-size:25px;gap:14px;letter-spacing:-.8px}
body.portal:has(.public-home)>.topbar .brand-image{width:66px;height:66px;max-width:66px;object-fit:contain}
body.portal:has(.public-home)>footer{padding:18px;color:#9ebbc9;border-color:#7dded520}
.portal main:has(.public-home){max-width:1200px;padding:22px 30px 36px}
.public-home{color:#edf7fc}
.public-home .public-nav{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-bottom:18px;border-bottom:1px solid #7dded520;font-size:14px}
.public-home .public-nav a,.public-home .button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 16px;border:1px solid #7dded536;border-radius:12px;background:linear-gradient(135deg,#63cbd014,#63cbd008);color:#ddf8f4;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:background .15s,border-color .15s,box-shadow .15s}
.public-home .public-nav a:hover,.public-home .button:hover{background:#63cbd023;border-color:#7dded580;box-shadow:0 0 20px #63cbd012;text-decoration:none}
.public-home a:focus-visible{outline:2px solid #7dded5;outline-offset:4px}
.public-home .public-intro{max-width:960px;padding:26px 0 24px}
.public-home .eyebrow{color:#63cbd0;font-size:12px;letter-spacing:1.8px;font-weight:700}
.public-home .public-intro h1{font-size:clamp(32px,4vw,49px);line-height:1.12;letter-spacing:-1.6px;max-width:900px;margin:12px 0}
.public-home p{font-size:15px;line-height:1.6;color:#bcd0dd}
.public-home .public-intro>p{font-size:16px;max-width:920px;margin:10px 0 0}
.public-home .public-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.public-home :is(.service-card,.founder,.public-note){background:linear-gradient(135deg,#21495980,#14304380);border:1px solid #7dded530;border-radius:20px;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:inset 0 1px 0 #d4fff80a,0 8px 24px #00000016}
.public-home .service-card{padding:20px;min-width:0;min-height:172px;cursor:default;transition:border-color .15s,background .15s}
.public-home .service-card:hover{transform:none;border-color:#7dded560;box-shadow:inset 0 1px 0 #d4fff812,0 8px 24px #00000016}
.public-home .service-heading{display:flex;align-items:center;gap:14px}
.public-home .service-icon{width:40px;height:40px;flex:0 0 40px;object-fit:contain;margin:0;background:transparent;border-radius:12px}
.public-home .service-card h2{color:#edf7fc;font-size:21px;line-height:1.25;margin:0;overflow-wrap:anywhere;letter-spacing:-.4px}
.public-home .service-card p{color:#bcd0dd;max-width:none;margin:12px 0 0;font-size:14px;line-height:1.6}
.public-home .public-note{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px;margin:24px 0 12px}
.public-home .public-note h2{font-size:19px;color:#edf7fc;margin:0 0 6px}
.public-home .public-note p{margin:0;color:#bcd0dd;max-width:760px;font-size:14px}
.public-home .public-note .button{flex:none;font-size:14px}
.public-home .public-about{padding:8px 0 16px}
.public-home .public-about>.public-intro{padding:22px 0 20px}
.public-home .public-about h2{font-size:32px;letter-spacing:-1px;color:#edf7fc;margin:10px 0}
.public-home .founder-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.public-home .founder{overflow:hidden;min-width:0}
.public-home .founder>img{display:block;width:100%;height:260px;object-fit:contain;object-position:center;background:#0b2030}
.public-home .founder>div{padding:20px}
.public-home .founder h3{font-size:21px;color:#edf7fc;margin:0}
.public-home .founder p{font-size:14px;color:#bcd0dd;margin:8px 0;line-height:1.6}
.public-home .founder .founder-role{color:#7dded5;font-size:13px;font-weight:600}
@media(max-width:650px){body.portal:has(.public-home)>.topbar{min-height:74px;padding:12px 18px}body.portal:has(.public-home)>.topbar .brand{font-size:20px;gap:10px}body.portal:has(.public-home)>.topbar .brand-image{width:50px;height:50px;max-width:50px}.portal main:has(.public-home){padding:16px 18px 28px}.public-home .public-nav{gap:8px;padding-bottom:14px}.public-home .public-nav a{font-size:13px;padding:8px 13px}.public-home .public-intro{padding:22px 0}.public-home .public-intro h1{font-size:34px;letter-spacing:-1px}.public-home .public-intro>p{font-size:15px}.public-home .public-features,.public-home .founder-grid{grid-template-columns:1fr;gap:12px}.public-home .service-card{padding:18px;min-height:0}.public-home .service-card h2{font-size:20px}.public-home .public-note{align-items:flex-start;flex-direction:column;padding:18px;gap:14px}.public-home .public-about h2{font-size:28px}.public-home .founder>img{height:235px}.public-home .founder>div{padding:18px}}
@media(prefers-reduced-motion:reduce){.public-home :is(a,.service-card){transition:none}}
