/* Companion pages: scoped additions preserve the public-beta site's styling. */
.companion .site-header{position:relative}
.cp-shell{width:min(100% - 3rem,1180px);margin:auto}
.cp-hero{padding:6rem 0 4rem;display:grid;grid-template-columns:.82fr 1.18fr;gap:3.5rem;align-items:center}
.cp-hero h1{font-size:clamp(3.5rem,5.5vw,5.7rem);line-height:1;letter-spacing:-.065em}
.cp-hero h1 em{display:block}
.cp-lead{font-size:1.18rem;color:#bbc3c6;max-width:37rem}
.cp-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.6rem 0}
.cp-small{font-size:.86rem;color:#aab2b6}
.cp-badge{display:inline-block;border:1px solid #665439;border-radius:999px;background:#211b13;color:#ffd27a;padding:.35rem .7rem;font-size:.76rem;letter-spacing:.06em;text-transform:uppercase}
.cp-screen{margin:0;min-width:0;border:1px solid #4c4234;border-radius:14px;overflow:hidden;background:#111518;box-shadow:0 24px 75px #0008}
.cp-screen img{display:block;width:100%;height:auto}
.cp-screen figcaption{padding:.8rem 1rem;font-size:.8rem;color:#b8c1c5;border-top:1px solid #303437}
.cp-strip{display:flex;flex-wrap:wrap;gap:.65rem;padding:1.2rem 0;border-block:1px solid #30363b}
.cp-strip span{background:#151a1d;border:1px solid #323a3e;padding:.4rem .8rem;border-radius:5px;font-size:.85rem;color:#c5cdcf}
.cp-section{padding:5rem 0;border-bottom:1px solid #252c30}
.cp-section h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.06;letter-spacing:-.045em;max-width:45rem}
.cp-section>p{max-width:44rem;color:#b6bfc3}
.cp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}
.cp-card{background:linear-gradient(145deg,#191e20,#101416);border:1px solid #343b3e;border-radius:12px;padding:1.5rem}
.cp-card h3{font-size:1.2rem;margin-bottom:.7rem}
.cp-card p{color:#afb9bd;margin-bottom:0}
.cp-number{color:#ffd27a;font-family:ui-monospace,monospace;font-size:.8rem;display:block;margin-bottom:1rem}
.cp-split{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}
.cp-list{padding-left:1.2rem;color:#bac3c7}
.cp-list li{padding:.4rem 0}
.cp-note{border-left:3px solid #d1a665;background:#1d1b17;padding:1rem 1.2rem;color:#d7d2c6}
.cp-download{border:1px solid #695435;background:linear-gradient(135deg,#211d16,#111719);border-radius:16px;padding:2rem}
.cp-download h3{font-size:1.7rem}
.cp-download button:disabled{background:#404747;color:#e1e5df;cursor:not-allowed;box-shadow:none}
.cp-download dl{display:grid;grid-template-columns:auto 1fr;gap:.5rem 1rem;font-size:.9rem}
.cp-download dt{color:#a7b2b7}
.cp-download dd{margin:0}
.cp-checksum{word-break:break-all;font: .77rem/1.6 ui-monospace,monospace;color:#b8c3c7}
.cp-faq{margin-top:2rem}
.cp-faq details{border-top:1px solid #343b3e;padding:.8rem 0}
.cp-faq summary{font-weight:650;cursor:pointer;padding:.5rem 0;min-height:44px}
.cp-faq p{max-width:48rem;color:#b3bdc1;margin:1rem 0}
.cp-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;padding:2.5rem 0;color:#a6b1b5;font-size:.87rem}
.cp-footer a{margin-right:1.2rem}
.cp-guide{max-width:850px;padding:4rem 0}
.cp-guide h1{font-size:clamp(2.8rem,5vw,4.7rem);line-height:1.02}
.cp-guide section{padding:2rem 0;border-bottom:1px solid #30373c;scroll-margin-top:1rem}
.cp-guide h2{font-size:1.65rem;letter-spacing:-.03em}
.cp-guide p,.cp-guide li{color:#bcc5c9}
.cp-guide li{margin:.6rem 0}
.cp-guide code{font: .87em ui-monospace,monospace;color:#eed8af;overflow-wrap:anywhere}
.cp-guide nav{display:flex;flex-wrap:wrap;gap:.8rem;margin:2rem 0}
.cp-guide nav a{border:1px solid #3a454b;border-radius:6px;padding:.5rem .7rem}
.cp-toc-note{font-size:.86rem;color:#a5b0b5}
.cp-teaser{border-block:1px solid #363c3f;display:grid;grid-template-columns:1fr 1.2fr;align-items:center;gap:2rem}
.cp-teaser h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.05;letter-spacing:-.045em}
.cp-teaser p{color:#b9c3c7}
.cp-teaser img{width:100%;height:auto;display:block;border-radius:10px;border:1px solid #514736}
.companion a:focus-visible,.companion button:focus-visible,.companion summary:focus-visible{outline:3px solid #ffd27a;outline-offset:5px}
@media(max-width:900px){
 .cp-hero{grid-template-columns:1fr;gap:2rem;padding:3rem 0}
 .cp-hero h1{max-width:14ch}
 .cp-split,.cp-teaser{grid-template-columns:1fr;gap:1.8rem}
 .cp-grid{grid-template-columns:1fr}
 .companion .site-header{align-items:flex-start;gap:1rem}
 .companion .site-header nav{justify-content:flex-end;flex-wrap:wrap;gap:.65rem 1rem}
 .cp-section{padding:3rem 0}
}
@media(max-width:520px){
 .cp-shell{width:calc(100% - 2rem)}
 .companion .site-header{width:calc(100% - 2rem);flex-direction:column}
 .companion .site-header nav{justify-content:flex-start}
 .cp-hero h1{font-size:3.3rem}
 .cp-download{padding:1.2rem}
 .cp-download dl{grid-template-columns:1fr}
 .cp-download dt{margin-top:.6rem}
 .cp-actions .button{width:100%}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.companion [hidden]{display:none!important}

@media(max-width:850px){.companion .site-header nav a:not(.nav-cta){display:block}}
