@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@700&display=swap');
/* Foundation */
:root{--ink:#252326;--muted:#6e676b;--paper:#fffdfa;--cream:#fff3ec;--line:#eadfda;--accent:#c32162;--accent-dark:#971744;--shadow:0 14px 36px rgba(49,37,42,.08);--radius:22px;--focus:0 0 0 4px rgba(195,33,98,.22)}
*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--cream);scroll-behavior:smooth}body{margin:0;min-height:100vh;background:var(--cream)}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:0;box-shadow:var(--focus)}
.shell{width:min(1120px,calc(100% - 40px));margin:auto;padding:32px 0 64px}.brand{display:flex;justify-content:center;margin:4px 0 30px;text-decoration:none}.csc-logo-wrap{display:flex;flex-direction:column;align-items:flex-start;width:fit-content}.csc-logo-line{font-family:Poppins,sans-serif;font-weight:700;text-transform:uppercase;line-height:1;margin:0;white-space:nowrap}.csc-logo-line1{font-size:clamp(1.4rem,3.5vw,2.25rem);color:#000;letter-spacing:-.5px}.csc-logo-line2{font-size:clamp(.9rem,2.15vw,1.4rem);color:#8b1538;margin-top:3px;margin-left:7px;letter-spacing:-.5px}.intro{text-align:center;max-width:680px;margin:0 auto 38px}.intro h1{margin:0;font-size:clamp(2.25rem,6vw,4.4rem);line-height:1;letter-spacing:-.055em}.intro p{margin:16px 0 0;color:var(--muted);font-size:clamp(1rem,2vw,1.2rem)}
body[data-page="home"] .intro h1{font-size:clamp(1.35rem,3.6vw,2.65rem)}
/* Inner navigation */
.topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin-bottom:28px}.home-link{justify-self:start;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:rgba(255,253,250,.8);text-decoration:none;font-weight:750}.page-label{font-weight:800}.crumbs{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:0 0 24px;color:var(--muted);font-size:.9rem}.crumbs a{text-decoration:none}.crumbs a:hover{text-decoration:underline}.crumb-sep{color:#b8acb0}
/* Cards */
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.card{position:relative;display:flex;align-items:center;gap:18px;min-height:158px;padding:28px;border:1px solid rgba(98,70,80,.12);border-radius:var(--radius);background:rgba(255,253,250,.94);box-shadow:var(--shadow);text-decoration:none;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.card:hover{transform:translateY(-3px);border-color:rgba(195,33,98,.4);box-shadow:0 18px 46px rgba(49,37,42,.12)}.icon-box{display:grid;place-items:center;flex:0 0 58px;width:58px;height:58px;border-radius:17px;background:#f9e3eb;color:var(--accent)}.icon-box svg{width:29px;height:29px;stroke-width:1.8}.card-copy{min-width:0;flex:1}.card h2,.card h3{margin:0;font-size:clamp(1.2rem,2.5vw,1.55rem);letter-spacing:-.025em}.arrow{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:50%;background:var(--ink);color:#fff}.arrow svg{width:20px}.soon{opacity:.62}.soon .arrow{background:#b5aaae}.tag{display:inline-flex;margin-top:10px;padding:5px 9px;border-radius:999px;background:#f3eeeb;color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.popular{margin:0 0 42px;padding:clamp(22px,4vw,34px);border:1px solid rgba(195,33,98,.2);border-radius:28px;background:var(--paper);box-shadow:var(--shadow)}.section-heading{margin:0 0 20px}.section-heading .eyebrow{margin:0 0 7px;color:var(--accent);font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.section-heading h2{margin:0;font-size:clamp(1.5rem,3vw,2rem);letter-spacing:-.035em}.popular .card{box-shadow:none;background:var(--cream)}
/* Downloads */
.downloads{display:grid;gap:16px}.download-card{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(280px,2fr) auto;align-items:center;gap:24px;padding:26px 28px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow)}.download-card h2{margin:0;font-size:1.25rem}.download-card .latest{display:inline-flex;margin-top:8px;padding:4px 8px;border-radius:999px;background:#e9f7ef;color:#1e7445;font-size:.72rem;font-weight:800;text-transform:uppercase}.meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 22px}.meta div{min-width:0}.meta dt{color:var(--muted);font-size:.73rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.meta dd{overflow-wrap:anywhere;margin:3px 0 0;font-size:.9rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:50px;padding:0 20px;border-radius:14px;background:var(--accent);color:#fff;text-decoration:none;font-weight:800}.btn:hover{background:var(--accent-dark)}.btn svg{width:19px}.notice{margin:20px 0 0;padding:16px 18px;border-left:4px solid var(--accent);border-radius:10px;background:rgba(255,253,250,.72);color:var(--muted)}
.command-card{padding:clamp(22px,4vw,38px);border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow)}.command-card h2{margin:14px 0 6px;font-size:clamp(1.35rem,3vw,1.8rem)}.command-card p{color:var(--muted)}.command-card pre{overflow:auto;margin:24px 0;padding:22px;border-radius:16px;background:#211f21;color:#fff;font-size:.9rem;line-height:1.65;white-space:pre-wrap;word-break:break-word}.copy-btn{border:0;cursor:pointer}.copy-status{min-height:1.5em;margin:12px 0 0;color:#1e7445;font-weight:700}
@media(max-width:780px){.shell{width:min(100% - 28px,1120px);padding-top:22px}.grid,.grid.three{grid-template-columns:1fr}.card{min-height:126px;padding:22px}.topbar{grid-template-columns:auto 1fr}.page-label{justify-self:end}.download-card{grid-template-columns:1fr}.btn{width:100%}.meta{grid-template-columns:1fr 1fr}}
@media(max-width:430px){.brand{margin-bottom:24px}.intro{margin-bottom:28px}.intro h1{font-size:2.35rem}.home-link{padding:0 12px}.page-label{font-size:.9rem}.card{gap:14px}.icon-box{width:52px;height:52px;flex-basis:52px}.arrow{width:38px;height:38px;flex-basis:38px}.meta{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card{transition:none}}
