.home-item-media{display:block;width:100%;max-height:240px;object-fit:cover;border-radius:12px;margin:0 0 18px;grid-column:1/-1}
.eco-card:has(.home-item-media){flex-wrap:wrap}.eco-card .home-item-media{max-height:120px}
.home-brand-image{display:block;width:auto;height:42px;max-width:min(240px,55vw);object-fit:contain}.pf-logo .home-brand-image{height:48px}
.pf-hero:not(:has(.pf-newsletter-card)){grid-template-columns:1fr}

/* Apply the palette before body initialization, avoiding a dark flash in day mode. */
html[data-osp-theme="light"]{
 --bg:#f4f7fc;--bg2:#fff;--panel:rgba(255,255,255,.9);--panel2:#f2f6fd;
 --text:#101d33;--muted:#465773;--dim:#5d6c84;--line:rgba(35,65,110,.13);--line2:rgba(35,65,110,.23);
 --shadow:0 28px 70px -40px rgba(31,64,120,.24);color-scheme:light;
}
html[data-osp-theme="dark"]{color-scheme:dark}
.landing-page{
 --dim:#9caec9;
 --showcase-bg:linear-gradient(145deg,#111e34,#0b1325);
 --showcase-card:rgba(255,255,255,.035);--showcase-feature:linear-gradient(120deg,rgba(34,211,238,.1),rgba(139,92,246,.13));
 --showcase-heading:#f0f5ff;--showcase-muted:#acbbd3;--showcase-accent:#70e6fa;--showcase-success:#64e8b8;--showcase-line:rgba(141,177,238,.18);
}
.landing-page.light,html[data-osp-theme="light"] .landing-page{
 --text:#101d33;--muted:#465773;--dim:#5d6c84;
 --cyan:#007f99;--green:#087650;--violet:#7444c4;--pink:#a934a4;--amber:#8a5a08;
 --showcase-bg:linear-gradient(145deg,#fff,#eef4ff);
 --showcase-card:rgba(255,255,255,.85);--showcase-feature:linear-gradient(115deg,#e7f8ff,#f0edff);
 --showcase-heading:#142640;--showcase-muted:#52647f;--showcase-accent:#007d99;--showcase-success:#087650;--showcase-line:rgba(58,99,164,.19);
}
.landing-page .ecosystem{
 background:var(--showcase-bg);border-color:var(--showcase-line);
 box-shadow:0 30px 80px -45px rgba(50,89,194,.45),inset 0 1px 0 rgba(255,255,255,.12);
 transition:background .4s ease,border-color .4s ease,box-shadow .35s ease,transform .7s var(--ease),opacity .7s var(--ease);
}
.landing-page .ecosystem-top h3,.landing-page .eco-card strong{color:var(--showcase-heading)}
.landing-page .eco-kicker{color:var(--showcase-accent)}
.landing-page .eco-card{background:var(--showcase-card);border-color:var(--showcase-line);transition:transform .25s ease,background .35s ease,border-color .25s ease,box-shadow .25s ease}
.landing-page .eco-card.primary-card{background:var(--showcase-feature)}
.landing-page .eco-card small,.landing-page .eco-footer{color:var(--showcase-muted)}
.landing-page .eco-card span,.landing-page .eco-live{color:var(--showcase-success)}
.landing-page .eco-live{background:color-mix(in srgb,var(--showcase-success) 8%,transparent);border-color:color-mix(in srgb,var(--showcase-success) 24%,transparent)}
.landing-page .eco-mini{background:color-mix(in srgb,var(--showcase-accent) 7%,transparent);border-color:var(--showcase-line)}
.landing-page.light .eco-mini.cyan{color:#007b93}.landing-page.light .eco-mini.violet{color:#6c3dc7}.landing-page.light .eco-mini.pink{color:#aa329d}.landing-page.light .eco-mini.green{color:#087650}
.landing-page .eco-card small{font-size:.55rem;letter-spacing:.09em}.landing-page .eco-card strong{font-size:.77rem}.landing-page .eco-card span{font-size:.58rem}
.landing-page :is(.btn,.pill,.eco-kicker,.eco-live,.eco-mini,.eco-card small,.eco-card span,.eco-footer,.trust,.eyebrow){font-family:Inter,"Segoe UI",system-ui,sans-serif}
.landing-page :is(.eco-card strong,.stat strong,.control-head strong,.control-item strong){font-family:Sora,Inter,"Segoe UI",system-ui,sans-serif}
.landing-page .ecosystem-top{border-color:var(--showcase-line)}
.landing-page.light .control-visual,.landing-page.light .code{background:linear-gradient(145deg,#fff,#f0f5ff);border-color:#d2dff1}
.landing-page.light .control-kicker,.landing-page.light .control-item small,.landing-page.light .file{color:#536581}
.landing-page.light .control-item{background:rgba(255,255,255,.8)}
.landing-page.light .control-item strong,.landing-page.light .control-head strong{color:#142640}
.landing-page.light .codebody{color:#405574}.landing-page.light .codebody .cm{color:#566984}.landing-page.light .codebody .k{color:#7335ad}.landing-page.light .codebody .v{color:#2458b5}.landing-page.light .codebody .s{color:#067148}.landing-page.light .codebody .f{color:#8b5b0c}.landing-page.light .codebody .n{color:#ad3457}
.landing-page:not(.light) .codebody .cm{color:#a7b5cd}
.landing-page.light .gradient{background-image:linear-gradient(105deg,#007e9d,#245cdb 50%,#8a3cce)}
.landing-page .btn.primary{background:linear-gradient(115deg,#087fa2,#2563eb 55%,#7446d6);color:#fff}
.landing-page .card,.landing-page .stat,.landing-page .control-visual,.landing-page .code,.landing-page .cta{transition:background .4s ease,color .4s ease,border-color .3s ease,box-shadow .3s ease,transform .65s var(--ease),opacity .65s var(--ease)}
.landing-page .btn{transition:transform .22s ease,box-shadow .22s ease,background .3s ease,border-color .3s ease}
.landing-page .btn:focus-visible,.landing-page #theme:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.landing-page #theme{position:relative;overflow:hidden;transition:background .3s ease,box-shadow .3s ease,transform .25s ease}
.landing-page.theme-changing #theme .osp-vector{animation:home-theme-turn .55s ease both}
.landing-page .eco-live i{animation:home-status-pulse 3s ease-in-out infinite}
.landing-page .ecosystem:before{animation:home-aura 9s ease-in-out infinite alternate}
.landing-page .ecosystem-grid>.eco-card:nth-child(2){transition-delay:20ms}.landing-page .ecosystem-grid>.eco-card:nth-child(3){transition-delay:40ms}
@keyframes home-theme-turn{from{transform:rotate(-75deg) scale(.65);opacity:.3}to{transform:rotate(0) scale(1);opacity:1}}
@keyframes home-status-pulse{0%,100%{opacity:1;box-shadow:0 0 0 0 transparent}50%{opacity:.8;box-shadow:0 0 0 4px color-mix(in srgb,var(--showcase-success) 12%,transparent)}}
@keyframes home-aura{from{transform:translate(0,0);opacity:.4}to{transform:translate(-35px,30px);opacity:.8}}
@media(hover:hover) and (pointer:fine){
 .landing-page .eco-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--showcase-accent) 45%,transparent);box-shadow:0 12px 28px -20px rgba(42,92,180,.5)}
 .landing-page .card:hover{transform:translateY(-5px);box-shadow:0 22px 42px -30px rgba(48,94,193,.5)}
 .landing-page .btn:hover{transform:translateY(-2px)}.landing-page #theme:hover{transform:rotate(8deg);box-shadow:0 0 0 4px rgba(80,132,240,.1)}
}
@media(max-width:620px){.landing-page .eco-card small{font-size:.48rem}.landing-page .eco-card strong{font-size:.66rem}.landing-page .eco-card span{font-size:.5rem}}
@media(prefers-reduced-motion:reduce){
 .landing-page,.landing-page *,.landing-page *:before,.landing-page *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 .landing-page .reveal{opacity:1!important;transform:none!important}
}
