/* Kindaya OS public concept and product-suite pages */
.os-hero{
  overflow:hidden;padding:clamp(70px,9vw,118px) 0;
  background:
    radial-gradient(circle at 8% 92%,rgba(113,186,59,.13),transparent 28rem),
    linear-gradient(135deg,#f7fbfa 0%,#fff 54%,#eef6f5 100%)
}
.os-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center}
.os-hero h1{font-size:clamp(2.5rem,5.5vw,4.25rem);max-width:740px}
.os-system-map{position:relative;min-height:490px}
.os-system-map::before{
  content:"";position:absolute;inset:44px;border:1px dashed rgba(0,121,136,.28);
  border-radius:50%;animation:os-orbit 40s linear infinite
}
.system-core{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:164px;height:164px;border-radius:38px;display:grid;place-items:center;
  align-content:center;gap:8px;background:var(--navy);color:#fff;
  box-shadow:0 24px 60px rgba(30,49,79,.23);z-index:2
}
.system-core img{height:60px;width:auto}
.system-core span{font-family:'Fraunces',Georgia,serif;font-size:1.08rem}
.system-node{
  position:absolute;width:154px;padding:16px 18px;border:1px solid var(--line);
  border-radius:14px;background:rgba(255,255,255,.94);box-shadow:0 13px 34px rgba(30,49,79,.1)
}
.system-node small{display:block;color:var(--orange);font-weight:700;font-size:.65rem;letter-spacing:.14em}
.system-node strong,.system-node span{display:block}
.system-node strong{color:var(--navy);margin:3px 0}
.system-node span{font-size:.76rem;color:var(--muted)}
.node-direction{left:1%;top:10%}.node-operations{right:1%;top:12%}
.node-clinical{right:3%;bottom:10%}.node-knowledge{left:2%;bottom:8%}
@keyframes os-orbit{to{transform:rotate(360deg)}}
.os-intro{border-top:1px solid var(--line)}
.os-intro .two-col{align-items:center}
.os-intro .two-col>div:last-child{font-size:1.08rem;color:var(--muted)}
.os-product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:38px}
.os-product-card{
  min-height:460px;padding:32px;border-radius:18px;display:flex;flex-direction:column;
  color:#e7eef1;position:relative;overflow:hidden
}
.os-product-card::after{
  content:"";position:absolute;width:210px;height:210px;border:1px solid rgba(255,255,255,.13);
  border-radius:50%;right:-95px;bottom:-88px
}
.os-card-navy{background:var(--navy)}.os-card-teal{background:#006f7c}.os-card-green{background:#456f31}
.os-product-number{font-family:'Fraunces',Georgia,serif;font-size:3rem;line-height:1;color:rgba(255,255,255,.23)}
.os-product-card .card-eyebrow{color:#f6ce8a;margin-top:24px}
.os-product-card h3{color:#fff;font-size:1.55rem}
.os-product-card p{font-size:.94rem;color:#e0e9ea}
.os-product-card ul{list-style:none;padding:0;margin:auto 0 0;display:grid;gap:10px;font-size:.88rem}
.os-product-card li{padding-top:10px;border-top:1px solid rgba(255,255,255,.16)}
.os-principles{display:grid;grid-template-columns:1fr 1fr;gap:0 42px;margin-top:38px}
.os-principles article{display:grid;grid-template-columns:56px 1fr;gap:16px;padding:27px 0;border-top:1px solid var(--line)}
.os-principles article>span{font-family:'Fraunces',Georgia,serif;color:var(--orange);font-size:1.35rem}
.os-principles h3{margin:0 0 6px}.os-principles p{color:var(--muted);margin:0}
.os-cta-section{padding-top:10px}
.os-cta{
  display:flex;justify-content:space-between;align-items:center;gap:50px;
  background:var(--tint);border:1px solid var(--line);border-radius:20px;padding:50px
}
.os-cta>div{max-width:700px}.os-cta p:last-child{color:var(--muted);margin:0}
.os-cta .btn{flex-shrink:0}
.os-footer{margin-top:30px}

/* Product suite */
.suite-body{background:#f5f8f7}
.suite-header{
  min-height:72px;padding:12px clamp(18px,4vw,48px);display:grid;grid-template-columns:1fr auto 1fr;
  align-items:center;gap:24px;background:rgba(255,255,255,.95);border-bottom:1px solid var(--line)
}
.suite-brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--navy);font-family:'Fraunces',Georgia,serif;font-size:1.25rem}
.suite-brand img{width:38px;height:43px;object-fit:contain}.suite-brand strong{color:var(--teal);font-weight:500}
.suite-header nav{display:flex;gap:8px}.suite-header nav a{padding:8px 12px;border-radius:8px;text-decoration:none;color:var(--navy);font-size:.88rem;font-weight:600}
.suite-header nav a:hover{background:var(--teal-tint);color:var(--teal)}
.suite-signout{justify-self:end;border:0;background:none;color:var(--teal);font:inherit;font-size:.88rem;font-weight:600;cursor:pointer}
.suite-hero{text-align:center;padding:clamp(72px,9vw,118px) 0 66px;background:#fff}
.suite-hero .wrap{max-width:960px}.suite-hero h1{font-size:clamp(2.8rem,7vw,5.4rem);line-height:1.02;letter-spacing:-.035em}
.suite-hero .lede{margin:24px auto 0}
.suite-products{display:grid;grid-template-columns:repeat(3,1fr);max-width:1240px;margin:0 auto;padding:0 24px 82px;gap:1px}
.suite-products article{padding:34px;background:var(--navy);color:#dce7ea;border-right:1px solid rgba(255,255,255,.13)}
.suite-products article:first-child{border-radius:18px 0 0 18px}.suite-products article:last-child{border-radius:0 18px 18px 0;border:0}
.suite-products article:nth-child(2){background:#006f7c}.suite-products article:nth-child(3){background:#456f31}
.suite-products h2{color:#fff;margin-top:24px}.suite-products p{font-size:.92rem;min-height:92px}
.suite-label{display:flex;justify-content:space-between;align-items:center}.suite-label span{font-family:'Fraunces',Georgia,serif;font-size:1.9rem;color:#fff}
.suite-label small{font-size:.67rem;text-transform:uppercase;letter-spacing:.17em;color:#f4cf91;font-weight:700}
.suite-output{border-top:1px solid rgba(255,255,255,.17);padding-top:16px;margin-top:24px;font-weight:700;font-size:.83rem}
.suite-access-section{padding:82px 0;background:#eef5f4;border-top:1px solid var(--line)}
.suite-access-section .wrap{display:grid;grid-template-columns:1fr 430px;gap:76px;align-items:center}
.suite-access-copy{max-width:650px}.suite-access-copy>p{color:var(--muted)}
.suite-boundary{display:grid;gap:3px;margin-top:26px;padding:15px 17px;background:#fff8e7;border:1px solid #edd59f;border-radius:11px;color:#6b542a;font-size:.84rem}
.suite-boundary.compact{margin:22px 0 28px}
.suite-login-card{padding:34px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 20px 55px rgba(30,49,79,.1)}
.suite-login-card>img{display:block;margin-bottom:16px}.suite-login-card h2{font-size:1.6rem}
.suite-login-card form{display:grid;gap:13px;margin-top:22px}
.suite-login-card label{font-size:.83rem;font-weight:650}
.suite-login-card input{display:block;width:100%;margin-top:5px;padding:11px 12px;border:1px solid #cbd8d6;border-radius:10px;font:inherit}
.suite-login-card input:focus{outline:3px solid rgba(0,121,136,.17);border-color:var(--teal)}
.suite-login-card .btn{width:100%;margin-top:8px;cursor:pointer}
.suite-text-button{display:block;margin:13px auto 0;border:0;background:none;color:var(--teal);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer}
.suite-message{min-height:1.4em;margin:10px 0 0;font-size:.83rem;color:#a13922}.suite-message.success{color:#276c36}
.suite-setup-notice{display:grid;gap:3px;margin-top:18px;padding:13px;background:#fff8e7;border:1px solid #edd59f;border-radius:10px;font-size:.82rem}
.suite-setup-notice span{color:var(--muted)}
.private-tools-section{padding:80px 0 94px;background:#fff}
.private-tools-heading{display:flex;justify-content:space-between;align-items:end;gap:28px}
.private-tools-heading .eyebrow span{font-weight:600;letter-spacing:normal;text-transform:none}
.private-tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.private-tool-card{display:flex;flex-direction:column;min-height:330px;padding:26px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 10px 30px rgba(30,49,79,.06)}
.private-tool-card h3{font-size:1.35rem}.private-tool-card>p:not(.card-eyebrow){color:var(--muted);font-size:.91rem}
.private-tool-card .tool-status{align-self:flex-start;padding:5px 10px;margin-bottom:20px;border-radius:999px;background:#edf3f2;color:var(--muted);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em}
.private-tool-card.connected .tool-status{background:#e9f5e6;color:#39732d}
.private-tool-card .tool-open{margin-top:auto;text-align:center;cursor:pointer}
.private-tool-card .tool-open:disabled{background:#9ba8ae;cursor:not-allowed;transform:none}
.private-tools-note{text-align:center;margin:24px 0 0;color:var(--muted);font-size:.82rem}
.private-tools-note code{background:#eef4f3;color:var(--teal);border-radius:5px;padding:2px 5px}
.suite-preview-dialog{width:min(1180px,calc(100% - 28px));height:min(820px,calc(100vh - 28px));padding:0;border:0;border-radius:17px;overflow:hidden;box-shadow:0 28px 90px rgba(19,35,55,.28)}
.suite-preview-dialog::backdrop{background:rgba(22,37,60,.68);backdrop-filter:blur(3px)}
.suite-preview-heading{height:58px;padding:10px 18px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}
.suite-preview-heading button{width:36px;height:36px;border:0;border-radius:50%;background:#edf3f2;color:var(--navy);font-size:1.45rem;cursor:pointer}
.suite-preview-warning{padding:9px 18px;background:#fff8e8;color:#6c5528;font-size:.78rem}
#suite-preview-frame{display:block;width:100%;height:calc(100% - 94px);border:0;background:#fff}
.suite-footer{display:flex;justify-content:center;gap:28px;flex-wrap:wrap;padding:28px;background:var(--navy);color:#bfcbd1;font-size:.8rem}
.suite-footer a{color:#fff;text-decoration:none}
@media (max-width:940px){
  .os-hero-grid,.suite-access-section .wrap{grid-template-columns:1fr}
  .os-system-map{max-width:600px;width:100%;margin:0 auto}
  .os-product-grid,.private-tool-grid{grid-template-columns:1fr}
  .os-product-card{min-height:380px}
  .suite-products{grid-template-columns:1fr}
  .suite-products article,.suite-products article:first-child,.suite-products article:last-child{border-radius:0;border-right:0;border-bottom:1px solid rgba(255,255,255,.13)}
  .suite-products article:first-child{border-radius:18px 18px 0 0}.suite-products article:last-child{border-radius:0 0 18px 18px}
  .suite-products p{min-height:0}
}
@media (max-width:720px){
  .os-system-map{min-height:560px}.system-core{width:145px;height:145px}
  .node-direction{left:0;top:5%}.node-operations{right:0;top:6%}.node-clinical{right:0;bottom:5%}.node-knowledge{left:0;bottom:4%}
  .os-principles{grid-template-columns:1fr}
  .os-cta,.private-tools-heading{align-items:stretch;flex-direction:column}
  .suite-header{grid-template-columns:1fr auto}.suite-header nav{display:none}
  .suite-hero h1{font-size:clamp(2.5rem,13vw,4rem)}
  .suite-login-card{padding:26px 22px}
}
