
.dcs{--bg:oklch(0.978 0.004 264);--fg:oklch(0.275 0.126 264.3);--surface:oklch(0.955 0.012 264);--card:#fff;--muted:oklch(0.535 0.045 264);--accent:oklch(0.52 0.155 262);--accent-soft:oklch(0.948 0.03 262);--hl:oklch(0.824 0.141 70.2);--hl-strong:oklch(0.56 0.13 62);--hl-soft:oklch(0.972 0.028 76);--hl-border:oklch(0.878 0.075 72);--border:oklch(0.915 0.012 264);--border-strong:oklch(0.85 0.022 264);--ink:oklch(0.275 0.126 264.3);--ink-fg:oklch(0.975 0.006 264);--ink-muted:oklch(0.76 0.045 264);
  --sans:"Public Sans Variable","Public Sans",ui-sans-serif,system-ui,sans-serif;--mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,monospace;
  background:var(--bg);color:var(--fg);font-family:var(--sans);-webkit-font-smoothing:antialiased;line-height:1.5}
.dcs *{box-sizing:border-box}
.dcs h1,.dcs h2,.dcs h3{letter-spacing:-0.022em;text-wrap:balance;margin:0;font-weight:600}
.dcs p{margin:0}
.dcs a{color:inherit}
.dcs .wrap{max-width:72rem;margin:0 auto;padding:0 1.5rem}
@media(min-width:1024px){.dcs .wrap{padding:0 2rem}}
.dcs .eb{font-family:var(--mono);font-size:.6875rem;line-height:1;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.dcs .eb.amber{color:var(--hl-strong)}
.dcs .sec{border-top:1px solid var(--border);padding:3rem 0}
@media(min-width:640px){.dcs .sec{padding:5rem 0}}
.dcs .sec.surface{background:var(--surface)}
.dcs .sec h2{font-size:1.75rem;line-height:1.14;max-width:24ch;margin-top:.75rem}
@media(min-width:640px){.dcs .sec h2{font-size:2.25rem}}
.dcs .lede{margin-top:1.25rem;max-width:70ch;font-size:1.125rem;line-height:1.65;color:color-mix(in oklch,var(--fg) 85%,transparent)}
.dcs .small{font-size:.875rem;line-height:1.65;color:var(--muted)}
.dcs .grid{display:grid;gap:1.5rem}
.dcs .cells{display:grid;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:.75rem;overflow:hidden}
.dcs .cells>*{background:var(--card);padding:1.25rem 1.4rem}
.dcs .card{background:var(--card);border:1px solid var(--border);border-radius:.75rem;padding:1.5rem}
@media(min-width:768px){.dcs .g2{grid-template-columns:1fr 1fr}.dcs .g3{grid-template-columns:repeat(3,1fr)}.dcs .g4{grid-template-columns:repeat(4,1fr)}}
.dcs .tag{display:inline-block;border:1px solid var(--border);background:var(--card);border-radius:.375rem;padding:.25rem .6rem;font-family:var(--mono);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.dcs .btn{display:inline-flex;align-items:center;gap:.4rem;min-height:2.75rem;padding:0 1.4rem;border-radius:999px;background:var(--accent);color:#fff;font-weight:500;font-size:.95rem;text-decoration:none}
.dcs .link{color:var(--accent);font-weight:500;font-size:.875rem;text-decoration:none}
.dcs .link:hover{text-decoration:underline}
/* hero */
.dcs .hero{position:relative;background:var(--surface);border-bottom:1px solid var(--border);overflow:hidden}
.dcs .hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(to right,var(--border) 1px,transparent 1px),linear-gradient(to bottom,var(--border) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(ellipse 90% 70% at 50% 0%,#000 20%,transparent 78%);mask-image:radial-gradient(ellipse 90% 70% at 50% 0%,#000 20%,transparent 78%);pointer-events:none}
.dcs .hero .wrap{position:relative;padding-top:3.5rem;padding-bottom:3.5rem}
@media(min-width:640px){.dcs .hero .wrap{padding-top:4.5rem;padding-bottom:4.5rem}}
.dcs .back{display:inline-flex;gap:.35rem;font-size:.875rem;color:var(--muted);text-decoration:none}
.dcs .hgrid{display:grid;gap:2.5rem;margin-top:2rem;align-items:center}
.dcs .hgrid>*{min-width:0}
@media(min-width:1024px){.dcs .hgrid.media{grid-template-columns:1fr 1.05fr;gap:3.5rem}}
.dcs .hero h1{margin-top:1rem;font-size:2.25rem;line-height:1.08;max-width:18ch}
@media(min-width:640px){.dcs .hero h1{font-size:3rem}}
.dcs .hero .lead{margin-top:1.4rem;max-width:58ch;font-size:1.15rem;line-height:1.65;color:color-mix(in oklch,var(--fg) 80%,transparent)}
.dcs .facts{display:flex;flex-wrap:wrap;gap:.75rem 2rem;margin-top:1.75rem}
.dcs .facts dt{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.dcs .facts dd{margin:.25rem 0 0;font-size:.875rem;font-weight:500}
.dcs .shot{border:1px solid var(--border-strong);border-radius:.75rem;background:var(--card);box-shadow:0 24px 60px -30px oklch(0.275 0.126 264.3 / .35);overflow:hidden}
.dcs .shot .bar{display:flex;gap:.35rem;padding:.6rem .8rem;border-bottom:1px solid var(--border);background:var(--surface)}
.dcs .shot .bar i{width:.55rem;height:.55rem;border-radius:50%;background:var(--border-strong)}
.dcs .shot img,.dcs .shot video{display:block;width:100%;height:auto}
.dcs figcaption{margin-top:.6rem;font-size:.8rem;color:var(--muted)}
/* glance band */
.dcs .glance{margin-top:-1px;border-top:1px solid var(--border);background:var(--card)}
.dcs .glance .cells{border:0;border-radius:0;background:var(--border)}
.dcs .glance dt{font-family:var(--mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.dcs .glance dd{margin:.45rem 0 0;font-size:1.05rem;font-weight:600;line-height:1.3}
/* sections */
.dcs .note{margin-top:1.5rem;border-left:2px solid var(--hl);padding-left:1rem}
.dcs .note p{margin-top:.5rem;max-width:70ch}
.dcs .dec{counter-reset:d}
.dcs .dec .card{position:relative;padding-top:3.2rem}
.dcs .dec .card:before{counter-increment:d;content:counter(d,decimal-leading-zero);position:absolute;top:1.3rem;left:1.5rem;font-family:var(--mono);font-size:.75rem;color:var(--accent);letter-spacing:.1em}
.dcs .dec h3{font-size:1.05rem}
.dcs .dec .ruled{margin-top:.9rem;padding-top:.8rem;border-top:1px dashed var(--border-strong);font-size:.82rem;color:var(--muted)}
.dcs .dec .ruled b{color:var(--hl-strong);font-family:var(--mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;font-weight:500;margin-right:.35rem}
.dcs .feat{display:grid;gap:1.75rem;align-items:center;padding:2.25rem 0;border-top:1px solid var(--border)}
.dcs .feat:first-of-type{border-top:0}
@media(min-width:900px){.dcs .feat.img{grid-template-columns:1fr 1.25fr;gap:3rem}.dcs .feat.img.flip>.txt{order:2}}
.dcs .feat h3{font-size:1.25rem}
.dcs .feat p{margin-top:.6rem;max-width:62ch}
.dcs .card p{margin-top:.5rem}
.dcs .flow{display:grid;gap:0;margin-top:2.5rem;counter-reset:f}
@media(min-width:900px){.dcs .flow{grid-auto-flow:column;grid-auto-columns:1fr}}
.dcs .flow>div{position:relative;padding:1.4rem 1.25rem 1.4rem 0;border-top:2px solid var(--border-strong)}
.dcs .flow>div:before{counter-increment:f;content:counter(f);position:absolute;top:-.85rem;left:0;width:1.6rem;height:1.6rem;border-radius:50%;background:var(--accent);color:#fff;font:600 .75rem/1.6rem var(--mono);text-align:center}
.dcs .flow h3{font-size:.95rem;margin-top:.6rem}
.dcs .flow p{margin-top:.35rem}
.dcs .quote{margin-top:2.5rem;padding:2rem 2rem 2rem 2.25rem;border-radius:.75rem;background:var(--hl-soft);border:1px solid var(--hl-border)}
.dcs .quote blockquote{margin:0;font-size:1.3rem;line-height:1.5;font-weight:500;max-width:60ch}
.dcs .quote figcaption{margin-top:1rem;font-size:.85rem;color:var(--muted)}
.dcs .clogo{margin:0 0 .9rem}.dcs .clogo img{height:2rem;width:auto;max-width:12rem;object-fit:contain;display:block}.dcs .clogo img.dk{filter:brightness(0);opacity:.8}
.dcs .cs4q .qph{width:3.25rem;height:3.25rem;border-radius:50%;object-fit:cover;flex:none;border:2px solid var(--hl)}
.dcs .cs4q .qlg{width:3.25rem;height:3.25rem;border-radius:.6rem;background:#fff;border:1px solid var(--border);display:grid;place-items:center;flex:none;padding:.35rem}.dcs .cs4q .qlg img{max-width:100%;max-height:100%;object-fit:contain}
.dcs .hood dt{font-family:var(--mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.dcs .hood dd{margin:.5rem 0 0}
.dcs .stack{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1.5rem}
.dcs .cta{background:var(--ink);color:var(--ink-fg);padding:4rem 0}
.dcs .cta h2{color:var(--ink-fg);font-size:2rem;max-width:22ch}
.dcs .cta p{color:var(--ink-muted);margin-top:.9rem;max-width:56ch}
.dcs .cta .btn{background:var(--hl);color:var(--ink);margin-top:1.75rem}
/* cards (Work page and related work) */
.dcs .wcard{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--border);border-radius:.75rem;overflow:hidden;text-decoration:none;transition:border-color .15s,box-shadow .15s}
.dcs .wcard:hover{border-color:var(--border-strong);box-shadow:0 18px 40px -28px oklch(0.275 0.126 264.3 / .45)}
.dcs .wcard .th{aspect-ratio:16/9;background:var(--surface);border-bottom:1px solid var(--border);overflow:hidden;position:relative}
.dcs .wcard .th img{width:100%;height:100%;object-fit:cover;object-position:top left;display:block}
.dcs .wcard .th.none{display:flex;align-items:flex-end;padding:1rem;background-image:linear-gradient(to right,var(--border) 1px,transparent 1px),linear-gradient(to bottom,var(--border) 1px,transparent 1px);background-size:28px 28px}
.dcs .wcard .th.none span{font-family:var(--mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);background:var(--card);padding:.3rem .5rem;border-radius:.3rem;border:1px solid var(--border)}
.dcs .wcard .bd{padding:1.25rem 1.3rem 1.4rem;display:flex;flex-direction:column;gap:.55rem;flex:1}
.dcs .wcard h3{font-size:1.1rem;line-height:1.3}
.dcs .wcard .more{margin-top:auto;padding-top:.4rem}
.dcs .wcard.big{display:grid}
@media(min-width:900px){.dcs .wcard.big{grid-template-columns:1.2fr 1fr}.dcs .wcard.big .th{aspect-ratio:auto;min-height:100%;border-bottom:0;border-right:1px solid var(--border)}.dcs .wcard.big h3{font-size:1.5rem}}
.dcs .filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.75rem}
.dcs .chipf{border:1px solid var(--border-strong);background:var(--card);border-radius:999px;padding:.45rem .95rem;font-size:.85rem;cursor:pointer;color:var(--fg);font-family:inherit}
.dcs .chipf:disabled{opacity:.45;cursor:default}
.dcs .chipf[aria-pressed=true]{background:var(--ink);color:var(--ink-fg);border-color:var(--ink)}
.dcs .chipf small{color:var(--muted);margin-left:.3rem}
.dcs .chipf[aria-pressed=true] small{color:var(--ink-muted)}
.dcs select.chipf{padding-right:2rem}
.dcs .stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--border)}
@media(min-width:900px){.dcs .stats{grid-template-columns:repeat(4,1fr)}}
.dcs .stats dt{font-size:1.75rem;font-weight:600}
.dcs .stats dd{margin:.2rem 0 0;font-size:.75rem;color:var(--muted)}
/* homepage language: dark hero, split headings, icon tiles */
.dcs .hero.ink{background:var(--ink);color:var(--ink-fg);border-bottom:0}
.dcs .hero.ink:before{opacity:.25;background-image:linear-gradient(to right,oklch(1 0 0 / .35) 1px,transparent 1px),linear-gradient(to bottom,oklch(1 0 0 / .35) 1px,transparent 1px)}
.dcs .hero.ink .glow{position:absolute;right:-10rem;top:-10rem;width:32rem;height:32rem;border-radius:50%;background:oklch(0.52 0.155 262 / .25);filter:blur(120px);pointer-events:none}
.dcs .hero.ink h1{color:var(--ink-fg);max-width:15ch;font-size:2.1rem;line-height:1.06}
@media(min-width:640px){.dcs .hero.ink h1{font-size:3rem}}
@media(min-width:1024px){.dcs .hero.ink h1{font-size:3.4rem}}
.dcs .hero.ink .lead,.dcs .hero.ink .back,.dcs .hero.ink .facts dt{color:var(--ink-muted)}
.dcs .hero.ink .eb{color:var(--hl)}
.dcs .hero.ink .facts{border-top:1px solid oklch(1 0 0 / .15);padding-top:1.4rem}
.dcs .hero.ink .facts dd{color:var(--ink-fg)}
.dcs .kicker{display:inline-flex;align-items:center;gap:.5rem;font-size:.75rem;font-weight:500;letter-spacing:.04em;color:var(--muted);margin:0}
.dcs .kicker i{width:.375rem;height:.375rem;border-radius:50%;background:var(--hl)}
.dcs .ctas{margin-top:1.75rem;display:flex;flex-wrap:wrap;gap:.75rem}
.dcs .ia{width:1rem;height:1rem;vertical-align:-.15em}
.dcs .hero.ink .stats{border-top:1px solid oklch(1 0 0 / .15)}
.dcs .hero.ink .stats dt{color:var(--ink-fg)}
.dcs .hero.ink .stats dd{color:var(--ink-muted)}
.dcs .split{display:grid;gap:1.5rem}
@media(min-width:1024px){.dcs .split{grid-template-columns:1.05fr .95fr;align-items:end;gap:3.5rem}}
.dcs .split h2{margin-top:1rem}
.dcs .splitlede{font-size:1.05rem;line-height:1.65;color:var(--muted);max-width:52ch}
.dcs .icard h3{margin-top:1rem;font-size:.95rem}
.dcs .itile{display:inline-flex;width:2.25rem;height:2.25rem;align-items:center;justify-content:center;border-radius:.5rem;background:var(--accent-soft);color:var(--accent)}
.dcs .itile .ic{width:1.125rem;height:1.125rem}
/* portfolio cards: amber top bar as on the live Work page, product screen on top */
.dcs .wcard{position:relative;width:100%;padding:1.75rem 1.5rem 1rem;display:flex;flex-direction:column;gap:.5rem;background:var(--card);border:1px solid var(--border);border-radius:.6rem;text-decoration:none;color:inherit;overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s}
.dcs .wcard:hover{transform:translateY(-2px);border-color:color-mix(in oklch,var(--hl) 60%,transparent);box-shadow:0 22px 60px -38px var(--hl)}
.dcs .wcard:after{left:0 !important;width:100% !important;transform-origin:left;transform:scaleX(.22);transition:transform .3s ease-out;border-radius:0 !important}
.dcs .wcard:hover:after{transform:scaleX(1)}
.dcs .wcard .eb.amber{color:var(--hl-strong)}
.dcs .wcard h3{font-size:1.125rem;line-height:1.35;margin-top:.15rem}
.dcs .wcard .small{flex:1}
.dcs .wcard .more{margin-top:.25rem;min-height:2.75rem;display:inline-flex;align-items:center;gap:.35rem}
.dcs .slide .sub{margin-top:.35rem;font-weight:600;color:var(--accent);font-size:.95rem}
.dcs .ctaw{display:flex;flex-wrap:wrap;gap:2rem;align-items:center;justify-content:space-between}
.dcs .ctaw .btn{margin-top:0}
.dcs .wcard:after{content:"";position:absolute;top:0;left:1.5rem;width:4.5rem;height:3px;border-radius:0 0 3px 3px;background:var(--hl);z-index:3}
.dcs .wcard .th{aspect-ratio:16/10;padding:1rem 1rem 0;background:var(--surface);overflow:hidden;position:relative;border-bottom:1px solid var(--border)}
.dcs .wcard .th .bar{display:flex;gap:.3rem;padding:.45rem .6rem;background:var(--card);border:1px solid var(--border);border-bottom:0;border-radius:.5rem .5rem 0 0}
.dcs .wcard .th .bar i{width:.45rem;height:.45rem;border-radius:50%;background:var(--border-strong)}
.dcs .wcard .th img{display:block;width:100%;height:calc(100% - 1.4rem);object-fit:cover;object-position:top left;border:1px solid var(--border);border-top:0;background:#fff}
.dcs .wcard .ph{height:100%;display:flex;flex-direction:column;justify-content:flex-end;gap:.35rem;padding:0 .25rem 1rem;background-image:linear-gradient(to right,var(--border) 1px,transparent 1px),linear-gradient(to bottom,var(--border) 1px,transparent 1px);background-size:28px 28px;margin:-1rem -1rem 0;padding:1rem 1.25rem}
.dcs .wcard .ph span{font-family:var(--mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.dcs .wcard .ph b{font-size:1.05rem;font-weight:600}
.dcs .wcard .ind{font-size:.78rem;color:var(--muted);margin:0}
.dcs .wcard .kpi{margin:.25rem 0 0;padding:.6rem .75rem;border-left:2px solid var(--hl);background:var(--hl-soft);border-radius:0 .4rem .4rem 0;font-size:.85rem;font-weight:600}
.dcs .wcard .kpi span{display:block;font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--hl-strong);font-weight:500;margin-bottom:.2rem}
.dcs .wcard .tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.35rem}
.dcs .wcard .tag{background:color-mix(in oklch,var(--hl) 10%,transparent);border-color:color-mix(in oklch,var(--hl) 35%,transparent);font-size:.72rem;color:color-mix(in oklch,var(--fg) 75%,transparent)}
.dcs .wcard .tags{margin-top:.75rem}
/* The industry filter sits at the right of the chips, level with their first row, as on the live Work page. */
.dcs .frow{display:grid;gap:1rem;align-items:start;margin-top:2.5rem}
@media(min-width:900px){.dcs .frow{grid-template-columns:minmax(0,1fr) auto;gap:1.5rem;align-items:center}.dcs .frow .indsel{justify-self:end}}
.dcs .sels{display:grid;gap:.6rem}
.dcs .frow .filters{margin-top:0}
.dcs .chipf[aria-pressed=true],.dcs .chipf.on{background:var(--hl-soft);color:var(--fg);border-color:var(--hl-border)}
.dcs .chipf[aria-pressed=true] small{color:var(--hl-strong)}
.dcs .chipf:disabled{opacity:.45;cursor:default}
.dcs .indsel{position:relative;display:inline-flex;align-items:center;gap:.45rem;justify-self:start;border:1px solid var(--border-strong);background:var(--card);border-radius:999px;padding:.45rem 2rem .45rem .95rem;font-size:.85rem}.dcs .indsel::after{content:"";position:absolute;right:.95rem;top:50%;width:.4rem;height:.4rem;border-right:1.5px solid var(--muted);border-bottom:1.5px solid var(--muted);transform:translateY(-70%) rotate(45deg);pointer-events:none}
.dcs .indsel:focus-within{border-color:var(--accent)}
.dcs .indsel span{color:var(--muted)}
.dcs .indsel select{-webkit-appearance:none;appearance:none;border:0;background:none;font:inherit;font-weight:500;color:var(--fg);padding:0;outline:0;cursor:pointer;max-width:15rem;text-overflow:ellipsis}
.dcs .pager{display:flex;flex-direction:column;align-items:center;gap:.75rem;margin-top:2.5rem}.dcs .pager .chipf{padding:.6rem 1.4rem}.dcs .fsep{width:1px;align-self:stretch;background:var(--border);margin:0 .25rem}.dcs .tlink{display:inline-flex;gap:.35rem;margin-top:auto;padding-top:1rem;font-size:.9rem;font-weight:500;color:var(--accent);text-decoration:none}.dcs .tlink:hover{text-decoration:underline}.dcs .icard{display:flex;flex-direction:column}.dcs .wcard .eb.amber{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dcs .wcard>.th{margin:-1.75rem -1.5rem .6rem;aspect-ratio:16/9}@media(max-width:639px){.dcs .wcard>.th.thf{aspect-ratio:auto;min-height:7.5rem}}
.dcs .pager>div{display:flex;gap:.4rem}
.dcs .pager:empty{display:none}
/* featured carousel, as on the live Work page */
.dcs .carousel{border:1px solid var(--border);background:var(--card);color:var(--fg);border-radius:.9rem;padding:1.6rem 1.75rem;box-shadow:0 30px 70px -30px oklch(0.1 0.05 264 / .6);border-top:3px solid var(--hl)}
.dcs .slide h3{margin-top:.9rem;font-size:1.3rem}
.dcs .sh2{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.dcs .num{font-family:var(--mono);font-size:.8rem;letter-spacing:.12em;color:var(--hl-strong)}
.dcs .ln{margin-top:.8rem;border-left:2px solid var(--hl);padding-left:.8rem;color:var(--muted);font-size:.92rem}
.dcs .g2s{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.2rem 0;padding-top:1.1rem;border-top:1px solid var(--border)}
.dcs .g2s dt{font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.dcs .g2s dd{margin:.35rem 0 0;font-weight:600;font-size:.92rem;line-height:1.35}
.dcs .cnav{display:flex;justify-content:space-between;align-items:center;margin-top:1.2rem;padding-top:1rem;border-top:1px solid var(--border)}
.dcs .rbtn{width:2.25rem;height:2.25rem;border-radius:50%;border:1px solid var(--border-strong);background:var(--card);color:var(--fg);cursor:pointer;margin-right:.4rem;display:inline-flex;align-items:center;justify-content:center}
.dcs .dots{display:flex;gap:.35rem}
.dcs [hidden]{display:none!important}
.dcs .dots i{width:.4rem;height:.4rem;border-radius:999px;background:var(--border-strong)}
.dcs .dots i.on{width:1.5rem;background:var(--hl)}
.dcs .btn.hl{background:var(--hl);color:var(--ink)}
.dcs .btn.ghost{background:transparent;color:var(--fg);border:1px solid var(--border-strong)}
.dcs .btn.ghost:hover{border-color:var(--accent);color:var(--accent)}
.dcs .stats a.stat{display:block;color:inherit;text-decoration:none;border-radius:.4rem}
.dcs .stats a.stat:hover dt,.dcs .stats a.stat:focus-visible dt{color:var(--accent)}
.dcs .stats a.stat:hover dd{color:var(--fg)}
.dcs .ctabs{display:flex;width:fit-content;max-width:100%;overflow-x:auto;scrollbar-width:none;margin-bottom:.75rem;padding:.25rem;border:1px solid var(--border-strong);border-radius:999px;background:var(--card)}
.dcs .ctabs::-webkit-scrollbar{display:none}
.dcs .ctabs button{flex-shrink:0;white-space:nowrap;min-height:2.25rem;padding:0 .9rem;border:0;border-radius:999px;background:none;font:500 .8125rem/1 var(--sans);color:var(--muted);cursor:pointer}
.dcs .ctabs button:hover{color:var(--fg)}
.dcs .ctabs button[aria-selected=true]{background:var(--ink);color:var(--ink-fg)}
@media(max-width:479px){.dcs .ctabs{display:grid;grid-template-columns:1fr 1fr;width:100%;border-radius:1.25rem}.dcs .ctabs button{padding:0 .5rem}}
.dcs .fpanel{border:1px solid var(--border);border-top:3px solid var(--hl);background:var(--card);border-radius:.9rem;padding:1.25rem 1.5rem .5rem;box-shadow:0 30px 70px -30px oklch(0.1 0.05 264 / .45)}
.dcs .fitem{display:grid;grid-template-columns:1fr auto;column-gap:1rem;padding:1rem 0;border-top:1px solid var(--border);color:inherit;text-decoration:none}
.dcs .flist .eb+.fitem{border-top:0}
.dcs .fpanel .eb{margin-bottom:.4rem}
.dcs .fcl{grid-column:1;font-family:var(--mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--hl-strong)}
.dcs .fh{grid-column:1;margin-top:.3rem;font-weight:600;font-size:1rem;line-height:1.35;color:var(--fg)}
.dcs .fm{grid-column:1;margin-top:.3rem;font-size:.82rem;color:var(--muted)}
.dcs .fitem .fa{grid-column:2;grid-row:1 / span 3;align-self:center;width:1rem;height:1rem;color:var(--muted);transition:transform .15s}
.dcs .fitem:hover .fh{color:var(--accent)}
.dcs .fitem:hover .fa{color:var(--accent);transform:translateX(3px)}
.dcs .fjump{margin-top:.9rem;font-size:.82rem;color:var(--muted);line-height:1.7}
.dcs .whero .wrap{padding-top:2.5rem;padding-bottom:3rem}
@media(min-width:1024px){.dcs .whero .hgrid{align-items:start;margin-top:0}.dcs .whero .hgrid>div:first-child{padding-top:3.25rem}}
.dcs .whero .stats dd{white-space:nowrap}
.dcs .fjump a{color:var(--accent);font-weight:500;text-decoration:none;white-space:nowrap}
.dcs .fjump a:hover{text-decoration:underline}
.dcs .stats .sarr{color:var(--accent);font-size:.8rem}
.dcs .names{background:var(--card);border-bottom:1px solid var(--border)}
.dcs .names .wrap{padding-top:2rem;padding-bottom:2rem;text-align:center}
.dcs .names .logos{list-style:none;margin:1.4rem 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:1.4rem 2.25rem}
.dcs .names .logos{--cols:2;--gap:1.5rem;gap:1.75rem var(--gap)}
.dcs .names .logos li{display:flex;align-items:center;gap:.5rem;height:2.75rem;justify-content:center;min-width:0;flex:0 0 calc((100% - (var(--cols) - 1) * var(--gap)) / var(--cols) - .5px)}
@media(min-width:640px){.dcs .names .logos{--cols:3}}
@media(min-width:1024px){.dcs .names .logos{--cols:6;row-gap:2rem}.dcs .names .logos img{max-width:10.5rem}}
.dcs .names .lname{font-weight:700;font-size:1.2rem;letter-spacing:-.01em;color:#000;opacity:.5;transition:opacity .2s}
.dcs .names .logos li:hover .lname{opacity:1}
.dcs .names .logos img{height:1.6rem;width:auto;max-width:9.5rem;object-fit:contain;filter:grayscale(1);opacity:.6;transition:opacity .2s,filter .2s}
.dcs .names .logos img.dk{filter:brightness(0);opacity:.5}
.dcs .names .logos li:hover img{filter:none;opacity:1}
.dcs .names .logos li:hover img.dk{filter:brightness(0);opacity:.85}
.dcs .names .logos li.more a{display:flex;flex-direction:column;align-items:center;gap:.2rem;text-decoration:none;color:inherit;line-height:1.2}.dcs .names .logos li.more b{font-weight:600;font-size:.95rem;letter-spacing:-.022em;color:var(--fg)}.dcs .names .logos li.more span{font-size:.7rem;color:var(--muted)}.dcs .names .logos li.more i{font-style:normal;color:var(--accent)}.dcs .names .logos li.more a:hover b,.dcs .names .logos li.more a:focus-visible b{color:var(--accent)}.dcs .names .logos li.more a:hover span{color:var(--fg)}
.dcs .names .also{margin-top:1.5rem;font-size:.8rem;color:var(--muted);line-height:1.8}
.dcs .names .also a{color:var(--muted);font-weight:500;text-decoration:none}
.dcs .names .also a:hover{color:var(--fg)}
.dcs .sec h2.st{font-size:1.5rem;line-height:1.35;max-width:none;margin-top:0}
.dcs .hood .hrow,.dcs .hrow{border-top:1px solid var(--border);padding-top:1rem}
.dcs .hood dt{font-family:var(--sans);font-size:.875rem;letter-spacing:0;text-transform:none;color:var(--fg);font-weight:600}
.dcs .hood dd{margin:.4rem 0 0;font-size:.875rem;line-height:1.65;color:var(--muted)}
.dcs .tag{background:var(--card)}
.dcs .trust{list-style:none;margin:1.75rem 0 0;padding:1.4rem 0 0;border-top:1px solid var(--border);display:grid;gap:.6rem}
.dcs .trust li{display:flex;align-items:center;gap:.6rem;font-size:.94rem;color:color-mix(in oklch,var(--fg) 85%,transparent)}
.dcs .trust .ic{width:1rem;height:1rem;color:var(--hl-strong);flex-shrink:0}
.dcs .wcard .small{flex:0 0 auto}
.dcs .wcard .tags{margin-top:auto;padding-top:.75rem}
.dcs .wcard{padding:0;gap:0}
.dcs .wcard>.th{margin:0;aspect-ratio:16/10;padding:0;border-bottom:0}
.dcs .wcard .th.tone{background:var(--surface);border-bottom:1px solid var(--border);overflow:hidden}
.dcs .wcard .th.tone img{position:absolute;left:9%;top:12%;width:122%;height:auto;max-width:none;border:0;border-radius:.55rem 0 0 0;border:1px solid var(--border);box-shadow:0 14px 34px -18px oklch(0.275 0.126 264.3 / .35);transition:transform .35s ease-out;transform-origin:top left}
.dcs .wcard:hover .th.tone img{transform:scale(1.03)}
.dcs .wcard .cb{display:flex;flex-direction:column;gap:.5rem;padding:1.25rem 1.4rem 1rem;flex:1}
.dcs .wcard .cb .eb{margin:0}.dcs .wcard .cb .eb .ind{color:var(--muted);text-transform:none;letter-spacing:0;font-family:inherit;font-size:.78rem}
.dcs .wcard .cl{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0;flex:0 0 auto}
.dcs .wcard .more{margin-top:auto}
.dcs .wcard.txt .cb{padding:2.25rem 1.75rem 1.5rem;gap:.85rem}.dcs .wcard.txt h3{font-size:1.6rem;line-height:1.2;letter-spacing:-.01em}.dcs .wcard.txt .cl{-webkit-line-clamp:6;font-size:1rem;line-height:1.6}.dcs .wcard.txt .more{padding-top:1rem}
@media(min-width:768px){.dcs #dcs-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.dcs .qgrid{display:grid;gap:1rem;margin-top:1.25rem}@media(min-width:900px){.dcs .qgrid{grid-template-columns:repeat(3,1fr)}.dcs .qgrid .qcard{display:grid;grid-row:span 3;grid-template-rows:subgrid;row-gap:1.25rem}.dcs .qgrid .qcase{margin-top:0}}.dcs .qcard{margin:0;display:flex;flex-direction:column;gap:.9rem;padding:1.5rem;background:var(--card);border:1px solid var(--border);border-radius:.75rem}.dcs .qcard blockquote{margin:0;font-size:1rem;line-height:1.55;color:var(--fg)}.dcs .qcard figcaption{display:flex;align-items:center;gap:.75rem;font-size:.82rem;color:var(--muted)}.dcs .qwho{display:flex;flex-direction:column;gap:.1rem}.dcs .qface{width:2.75rem;height:2.75rem;border-radius:50%;object-fit:cover;flex:none}.dcs .qini{display:flex;align-items:center;justify-content:center;background:var(--hl-soft);color:var(--hl-strong);font-weight:600;font-size:.85rem}.dcs .qcard figcaption b{color:var(--fg);font-weight:600}.dcs .qlogo{display:flex;align-items:center;gap:.5rem;height:2.75rem}.dcs .qlogo img{width:auto;max-width:10rem;object-fit:contain}.dcs .qlogo img.dk{filter:brightness(0);opacity:.8}.dcs .qlogo .lname{font-weight:700;font-size:1.2rem;letter-spacing:-.01em;color:var(--fg)}.dcs .qcase{margin-top:auto;display:flex;flex-direction:column;gap:.2rem;padding-top:.9rem;border-top:1px solid var(--border);text-decoration:none;color:inherit}.dcs .qcase span{font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.dcs .qcase b{font-size:.88rem;font-weight:600;line-height:1.35;color:var(--fg)}.dcs .qcase i{font-style:normal;font-size:.82rem;font-weight:500;color:var(--accent)}.dcs .qcase:hover b{color:var(--accent)}.dcs .tqwrap{display:grid;gap:1rem;margin-top:2rem;align-items:stretch}@media(min-width:1000px){.dcs .tqwrap.hasv{grid-template-columns:minmax(0,22rem) minmax(0,1fr)}}.dcs .tqcol{min-width:0}.dcs .tqtrack{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding-bottom:.25rem}.dcs .tqtrack::-webkit-scrollbar{display:none}.dcs .tqtrack:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:.75rem}.dcs .tq{flex:0 0 86%;scroll-snap-align:start;margin:0;display:flex;flex-direction:column;padding:1.1rem 1.25rem;background:var(--card);border:1px solid var(--border);border-top:3px solid var(--hl);border-radius:.75rem}@media(min-width:700px){.dcs .tq{flex-basis:calc((100% - 1rem)/2)}}@media(min-width:1000px){.dcs .tqwrap:not(.hasv) .tq{flex-basis:calc((100% - 2rem)/3)}}.dcs .tqi{width:.9rem;height:.9rem;color:var(--accent)}.dcs .tq blockquote{flex:1;margin:.5rem 0 0;font-size:.875rem;line-height:1.6;color:var(--fg);opacity:.88}.dcs .tq figcaption,.dcs .tvid figcaption{display:flex;align-items:center;gap:.6rem;margin-top:1rem;font-size:.8rem;line-height:1.25}.dcs .tqf{width:2.25rem;height:2.25rem;border-radius:50%;object-fit:cover;flex:none}.dcs .tqn{display:grid;place-items:center;border:1px solid var(--border);background:var(--surface);font-family:var(--mono);font-size:.65rem;color:var(--accent)}.dcs .tql{display:grid;place-items:center;border:1px solid var(--border);background:#fff;overflow:hidden}.dcs .tql img{width:76%;height:76%;object-fit:contain}.dcs .tql img.dk{filter:brightness(0);opacity:.75}.dcs .tqw{display:flex;flex-direction:column;min-width:0}.dcs .tqw b{font-weight:500;color:var(--fg)}.dcs .tqw span{color:var(--muted)}.dcs .tqc{display:flex;align-items:center;gap:.5rem;margin-top:1rem}.dcs .tqb{display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;border:1px solid var(--border);background:var(--card);color:var(--muted);cursor:pointer;font-size:.9rem}.dcs .tqb:hover{border-color:var(--accent);color:var(--accent)}.dcs .tqdots{display:flex;gap:.35rem;margin-left:.75rem}.dcs .tqdots i{width:.375rem;height:.375rem;border-radius:999px;background:var(--border-strong);transition:width .2s}.dcs .tqdots i.on{width:1.5rem;background:var(--accent)}.dcs .tqs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:1.25rem}.dcs .tqs div{padding:1rem 1.1rem;background:var(--surface);border:1px solid var(--border);border-radius:.75rem}.dcs .tqs b{display:block;font-size:1.6rem;line-height:1.1;font-weight:600;letter-spacing:-.02em;color:var(--fg)}.dcs .tqs b i{font-style:normal;color:var(--hl);font-size:1.1rem;margin-left:.2rem}.dcs .tqs span{display:block;margin-top:.35rem;font-size:.78rem;line-height:1.35;color:var(--muted)}@media(max-width:560px){.dcs .tqs{grid-template-columns:1fr}}@media(max-width:767px){.dcs .grid,.dcs #dcs-grid{grid-template-columns:minmax(0,1fr)}}.dcs .logos img[alt="Coast Technology"]{max-width:13rem;height:1.7rem}@media(max-width:899px){.dcs .prow{gap:0;border:1px solid var(--border);border-radius:.6rem;background:var(--card);overflow:hidden}.dcs .pthen,.dcs .pnow{border:0;border-radius:0;padding:.65rem .9rem}.dcs .pthen{background:var(--surface)}.dcs .pnow{border-top:1px solid var(--border)}.dcs .pwhat,.dcs .parr{display:none}.dcs .pthen b,.dcs .pnow b{font-size:.88rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}}.dcs .fhow{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.75rem}.dcs .fhow span{display:flex;align-items:center;gap:.5rem;padding:.45rem .9rem;border:1px solid var(--border);border-radius:999px;background:var(--card);font-size:.875rem}.dcs .fhow b{display:grid;place-items:center;width:1.35rem;height:1.35rem;border-radius:50%;background:var(--surface);color:var(--accent);font-size:.75rem;font-weight:600}.dcs .fgrid{display:grid;gap:.9rem;margin-top:1.5rem;grid-template-columns:1fr}@media(min-width:640px){.dcs .fgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1000px){.dcs .fgrid{grid-template-columns:repeat(4,minmax(0,1fr))}}.dcs .ftile{display:flex;flex-direction:column;gap:.65rem;padding:1rem 1.1rem;background:var(--card);border:1px solid var(--border);border-top:3px solid var(--hl);border-radius:.75rem;text-decoration:none;color:inherit;transition:border-color .2s,box-shadow .2s}.dcs .ftile:hover{border-color:var(--border-strong);box-shadow:0 14px 30px -22px oklch(0.1 0.05 264 / .5)}.dcs .flg{display:flex;align-items:center;gap:.5rem;height:1.9rem}.dcs .flg img{max-height:1.6rem;max-width:9.5rem;object-fit:contain;filter:grayscale(1);opacity:.75}.dcs .flg img.dk{filter:brightness(0);opacity:.7}.dcs .fnm{font-size:1.05rem;font-weight:700;letter-spacing:-.01em;color:var(--fg)}.dcs .fln{flex:1;font-size:.875rem;line-height:1.45;color:var(--fg)}.dcs .fch{display:flex;align-items:center;gap:.5rem}.dcs .fch i{white-space:nowrap;font-style:normal;font-family:var(--mono);font-size:.68rem;padding:.2rem .55rem;border-radius:999px;background:var(--accent-soft);color:var(--accent)}.dcs .fch em{margin-left:auto;font-style:normal;font-size:.82rem;font-weight:500;color:var(--accent)}.dcs .ffoot{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:1.1rem;font-size:.875rem;color:var(--muted)}.dcs .tvid{display:flex;flex-direction:column;margin:0;padding:1rem;background:var(--card);border:1px solid var(--border);border-top:3px solid var(--hl);border-radius:.75rem}.dcs .tvf{aspect-ratio:16/9;max-width:100%;border-radius:.5rem;overflow:hidden;background:var(--ink)}.dcs .tvf video{width:100%;height:100%;display:block;object-fit:cover}.dcs .tvid figcaption{margin-top:auto;padding-top:1rem}.dcs .tvid blockquote{margin:.9rem 0 0;font-size:.95rem;line-height:1.5;font-weight:500;color:var(--fg)}.dcs .pgrid{display:grid;gap:1rem;margin-top:2.25rem;align-items:start}@media(min-width:700px){.dcs .pgrid{grid-template-columns:1fr 1fr}}@media(min-width:1024px){.dcs .pgrid{grid-template-columns:repeat(3,1fr)}}
.dcs .pcard{display:flex;flex-direction:column;gap:.5rem;padding:1.4rem 1.4rem 1rem;background:var(--card);border:1px solid var(--border);border-radius:.75rem}
.dcs .pacols{display:grid;grid-template-columns:minmax(0,1fr);gap:.9rem;margin-top:2rem;align-items:start}@media(min-width:900px){.dcs .pacols{grid-template-columns:repeat(2,minmax(0,1fr))}}.dcs .pcard{background:var(--card);border:1px solid var(--border);border-radius:.9rem;transition:border-color .3s ease,background-color .3s ease,box-shadow .35s ease}.dcs .pcard:hover,.dcs .pcard:has(.pah:focus-visible){border-color:var(--hl-border);box-shadow:0 18px 40px -30px oklch(0.1 0.05 264 / .45)}.dcs .pah{all:unset;box-sizing:border-box;width:100%;cursor:pointer;display:flex;align-items:center;gap:.9rem;padding:1rem 1.35rem;border-radius:.9rem;transition:background-color .3s ease}.dcs .pah:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dcs .pcard:hover .pah,.dcs .pcard:has(.pah:focus-visible) .pah{background:var(--hl-soft);border-radius:.9rem .9rem 0 0}.dcs .pat{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.dcs .pat b{font-size:1rem;font-weight:600;color:var(--fg)}.dcs .pat span{font-size:.86rem;color:var(--muted)}.dcs .parw{flex:none;font-style:normal;color:var(--muted);transition:transform .35s cubic-bezier(.2,.7,.2,1),color .3s ease}.dcs .pcard:hover .parw,.dcs .pcard:has(.pah:focus-visible) .parw{transform:rotate(90deg);color:var(--hl-strong)}.dcs .pabw{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.2,.7,.2,1)}.dcs .pcard:hover .pabw,.dcs .pcard:has(.pah:focus-visible) .pabw{grid-template-rows:1fr;transition-delay:.12s}.dcs .pab{min-height:0;overflow:hidden;opacity:0;transition:opacity .25s ease}.dcs .pcard:hover .pab,.dcs .pcard:has(.pah:focus-visible) .pab{opacity:1;transition:opacity .35s ease .2s}.dcs .pabi{padding:1rem 1.35rem 1.2rem;display:flex;flex-direction:column;gap:.5rem}@media(prefers-reduced-motion:reduce){.dcs .pabw,.dcs .pab,.dcs .parw,.dcs .pcard,.dcs .pah{transition:none}}.dcs .pnum{font-family:var(--mono);font-size:.7rem;letter-spacing:.12em;color:var(--hl-strong)}.dcs .pq{margin:0;font-size:.92rem;font-style:italic;color:var(--muted)}
.dcs .pcard h3{margin:0;font-size:1.15rem}
.dcs .pline{margin:0;font-size:.88rem;color:var(--muted);line-height:1.5}
.dcs .pstories{margin-top:.6rem;border-top:1px solid var(--border)}
.dcs .plinks{margin-top:auto;padding-top:.8rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:.45rem}.dcs .plinks p{margin:0;font:600 .7rem/1 var(--mono,monospace);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.dcs .plinks a{font-size:.85rem;line-height:1.4;color:var(--accent);text-decoration:none}.dcs .plinks a:hover{text-decoration:underline}
.dcs .pst{border-bottom:1px solid var(--border)}.dcs .pst:last-child{border-bottom:0}
.dcs .pst summary{list-style:none;cursor:pointer;display:flex;flex-direction:column;gap:.15rem;padding:.7rem 1.4rem .7rem 0;position:relative}
.dcs .pst summary::-webkit-details-marker{display:none}
.dcs .pst summary:after{content:"Read how";position:absolute;right:0;top:.75rem;font-size:.72rem;font-weight:600;color:var(--accent);white-space:nowrap}
.dcs .pst[open] summary:after{content:"Close";color:var(--muted)}.dcs .pst summary{padding-right:4.25rem !important;border-radius:.35rem;transition:background .15s}.dcs .pst summary:hover{background:var(--surface)}.dcs .pst-r{font-size:.82rem !important}.dcs .pst-r b{display:block;font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;font-weight:500;color:var(--accent);margin-bottom:.1rem}.dcs .pbuilt{margin:1.25rem 0 0;font-size:.88rem;color:var(--muted)}.dcs .pbuilt a{color:var(--accent);text-decoration:none;font-weight:500}.dcs .pbuilt a:hover{text-decoration:underline}
.dcs .pst-t{font-size:.9rem;font-weight:600;line-height:1.35;color:var(--fg)}
.dcs .pst-c{font-size:.8rem;color:var(--muted)}.dcs .pst-o{font-size:.82rem !important}.dcs .pst-o b{display:block;font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;font-weight:500;color:var(--hl-strong);margin-bottom:.1rem}
.dcs .pst p{margin:0 0 .5rem;font-size:.85rem;line-height:1.55;color:var(--muted)}
.dcs .pst-w{display:block;margin-bottom:.8rem;font-size:.75rem;font-weight:600;color:var(--fg)}
.dcs .tstrip{margin-top:2.5rem}.dcs .tlayers{display:grid;gap:1rem;margin-top:1rem}@media(min-width:900px){.dcs .tlayers{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 2rem}}.dcs .tlayer{display:flex;flex-direction:column;gap:.5rem}.dcs .tlg{font-size:.8rem;font-weight:600;color:var(--fg)}.dcs .tchips{display:flex;flex-wrap:wrap;gap:.4rem}
.dcs .tchip{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .8rem;border:1px solid var(--border-strong);border-radius:999px;background:var(--card);font-size:.82rem;color:var(--fg);text-decoration:none;transition:border-color .2s}.dcs .tchip:hover{border-color:var(--accent);color:var(--accent)}.dcs .tchip small{color:var(--muted);font-family:var(--mono);font-size:.7rem}
.dcs .ttabs{margin-top:2rem}.dcs .ttabs small{color:var(--muted);margin-left:.25rem}.dcs .tlist{display:grid;gap:.75rem;margin-top:1.25rem}@media(min-width:900px){.dcs .tlist{grid-template-columns:1fr 1fr}}.dcs .trow{display:flex;align-items:center;gap:1rem;padding:1.1rem 1.25rem;background:var(--card);border:1px solid var(--border);border-radius:.6rem;text-decoration:none;color:inherit;transition:border-color .2s}.dcs .trow:hover{border-color:var(--accent)}.dcs .trow .tbody{display:flex;flex-direction:column;gap:.4rem;min-width:0;flex:1}.dcs .trow h4{margin:0;font-size:1rem;line-height:1.35;font-weight:600}.dcs .tcall{font-size:.92rem;font-weight:600;color:var(--fg)}.dcs .tcall b{display:block;font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--hl-strong);font-weight:500;margin-bottom:.1rem}.dcs .tstack{font-family:var(--mono);font-size:.7rem;color:var(--muted)}.dcs .tarr{color:var(--accent);flex:none;transition:transform .2s}.dcs .trow:hover .tarr{transform:translateX(3px)}













.dcs .pstats{display:flex;flex-wrap:wrap;gap:1.25rem 3rem;margin:2rem 0 0;padding-top:1.5rem;border-top:1px solid var(--border)}.dcs .pstats dt{font-size:2rem;font-weight:600;line-height:1;color:var(--fg)}.dcs .pstats dd{margin:.35rem 0 0;font-size:.85rem;color:var(--muted)}.dcs .phead{display:none}@media(min-width:900px){.dcs .phead{display:grid;grid-template-columns:minmax(0,1fr) 1.25rem minmax(0,1fr);gap:.6rem;font-family:var(--mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}}
.dcs .pairs{display:flex;flex-direction:column;gap:.75rem;margin-top:1.75rem}
.dcs .prow{display:grid;gap:.5rem;align-items:stretch}
@media(min-width:900px){.dcs .prow{grid-template-columns:minmax(0,1fr) 1.25rem minmax(0,1fr);gap:.6rem}}
.dcs .pthen,.dcs .pnow{display:flex;flex-direction:column;gap:.25rem;padding:.8rem 1.1rem;border-radius:.6rem;text-decoration:none;color:inherit;border:1px solid var(--border);transition:border-color .2s}
.dcs .pthen{background:transparent;border-style:dashed}
.dcs .pnow{background:var(--card)}
.dcs .pthen:hover,.dcs .pnow:hover{border-color:var(--accent)}
.dcs .plab{font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.dcs .pnow .plab{color:var(--hl-strong)}
.dcs .pthen b,.dcs .pnow b{font-size:.95rem;font-weight:600;line-height:1.35;color:var(--fg)}.dcs .pthen b{font-weight:500}.dcs .pairs{gap:.6rem}
.dcs .pwhat{font-size:.85rem;color:var(--muted);line-height:1.4}
.dcs .parr{display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:1.1rem}
@media(max-width:899px){.dcs .parr{transform:rotate(90deg);height:1rem}}
.dcs .palso{margin:1.5rem 0 0;font-size:.85rem;color:var(--muted);line-height:1.8}.dcs .palso span{font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;margin-right:.6rem}.dcs .palso a{color:var(--fg);text-decoration:underline;text-decoration-color:var(--border-strong);text-underline-offset:3px}.dcs .palso a:hover{color:var(--accent)}
.dcs .tline{list-style:none;margin:2.5rem 0 0;padding:0;display:grid;gap:1.75rem}
@media(min-width:900px){.dcs .tline{grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:1rem}}
.dcs .tyr{position:relative;display:flex;flex-direction:column;gap:.75rem;min-width:0}
.dcs .ty{display:flex;align-items:center;gap:.6rem;font-family:var(--mono);font-size:.95rem;font-weight:500;color:var(--accent)}
.dcs .ty:after{content:"";flex:1;height:2px;background:var(--border-strong)}
.dcs .ty:before{content:"";width:.7rem;height:.7rem;border-radius:50%;background:var(--hl);flex:none}
.dcs .tyr.now .ty:before{background:var(--accent)}.dcs .tyr.now .ty:after{background:linear-gradient(90deg,var(--accent),transparent)}
.dcs .tents{display:flex;flex-direction:column;gap:.75rem}
.dcs .tent{display:flex;flex-direction:column;gap:.45rem;padding:1rem 1.1rem;background:var(--card);border:1px solid var(--border);border-radius:.6rem;text-decoration:none;color:inherit;transition:border-color .2s}
.dcs .tent:hover{border-color:var(--accent)}
.dcs .tent .tthen{margin:0;font-size:.88rem;font-weight:600;color:var(--fg);line-height:1.35}
.dcs .tent .tthen b{display:block;margin-bottom:.15rem;font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--hl-strong);font-weight:500}
.dcs .tent h4{font-weight:500 !important;font-size:.88rem !important;color:var(--muted)}
.dcs .tent .tstack{font-family:var(--mono);font-size:.68rem;color:var(--muted)}
.dcs .tnow{background:var(--ink);border-color:var(--ink);color:var(--ink-fg)}.dcs .tnow .tthen,.dcs .tnow h4{color:var(--ink-fg) !important}.dcs .tnow .tthen b{color:var(--hl)}.dcs .tnow h4{font-size:1.05rem !important;font-weight:600 !important}.dcs .tnow .tlink{color:var(--hl);padding-top:.25rem}
.dcs .tent h4{margin:0;font-size:1rem;font-weight:600;line-height:1.35}




/* studio only: notes about media that may not be shown yet */
.dcs .flag{position:absolute;top:.6rem;left:.6rem;z-index:2;background:var(--hl);color:var(--ink);font:600 .7rem/1 var(--mono);letter-spacing:.06em;padding:.35rem .5rem;border-radius:.3rem;text-transform:uppercase}
.dcs .rel{position:relative}
/* The case study page, rebuilt (October 31, 2026) */
.dcs .hfacts{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin:0;background:var(--border);border:1px solid var(--border-strong);border-radius:.9rem;overflow:hidden;box-shadow:0 24px 60px -34px oklch(0.275 0.126 264.3 / .35)}.dcs .hfacts>div{background:var(--card);padding:1.4rem 1.4rem 1.5rem}.dcs .hfacts dt{font-family:var(--mono);font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.dcs .hfacts dd{margin:.55rem 0 0;font-size:1.05rem;font-weight:600;line-height:1.35;color:var(--fg)}
.dcs .hchips{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1.6rem}
.dcs .hchips span{border:1px solid var(--border-strong);background:var(--card);border-radius:999px;padding:.3rem .8rem;font-size:.8rem;color:var(--muted)}
.dcs .cs-sum{background:var(--card);border-bottom:1px solid var(--border);padding:2.5rem 0}
.dcs .sumg{display:grid;gap:1.5rem}
@media(min-width:900px){.dcs .sumg{grid-template-columns:repeat(3,1fr);gap:0}.dcs .sumg>div{padding:0 1.75rem;border-left:1px solid var(--border)}.dcs .sumg>div:first-child{padding-left:0;border-left:0}}
.dcs .sumt{margin-top:.7rem;font-size:1rem;line-height:1.6;color:var(--fg)}
.dcs .sumc{margin-top:2rem}
.dcs .sumc dt{font-family:var(--mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.dcs .sumc dd{margin:.45rem 0 0;font-size:1rem;font-weight:600;line-height:1.35}
.dcs .cs-toc{border-bottom:1px solid var(--border);background:var(--bg)}
.dcs .cs-toc .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem 1.25rem;padding-top:.9rem;padding-bottom:.9rem}
.dcs .cs-toc span{font-family:var(--mono);font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.dcs .cs-toc a{font-size:.85rem;font-weight:500;color:var(--accent);text-decoration:none}
.dcs .cs-toc a:hover{text-decoration:underline}
.dcs .startg{margin-top:2rem}
.dcs .startg h3,.dcs .wgrid h3{font-size:1rem}
.dcs .cons{list-style:none;margin:.9rem 0 0;padding:0;display:flex;flex-direction:column;gap:.7rem}
.dcs .cons li{display:flex;gap:.6rem;align-items:flex-start;font-size:.9rem;line-height:1.5;color:var(--fg)}
.dcs .cons .ic{width:1rem;height:1rem;flex:none;margin-top:.2rem;color:var(--hl-strong)}
.dcs .dlist{list-style:none;margin:2rem 0 0;padding:0}
.dcs .dlist li{display:grid;grid-template-columns:2.75rem minmax(0,1fr);gap:.4rem 1.25rem;padding:1.6rem 0;border-top:1px solid var(--border-strong)}
.dcs .dlist li:last-child{border-bottom:1px solid var(--border-strong)}
@media(min-width:900px){.dcs .dlist li{grid-template-columns:3.25rem minmax(0,1fr) 19rem;gap:1.75rem}}
.dcs .dn{font-family:var(--mono);font-size:1rem;color:var(--hl-strong);padding-top:.15rem}
.dcs .dmain h3{font-size:1.15rem;line-height:1.3}
.dcs .dmain .small{margin-top:.5rem;font-size:.95rem;color:color-mix(in oklch,var(--fg) 80%,transparent)}
.dcs .dro{grid-column:2;background:var(--card);border:1px solid var(--border);border-radius:.6rem;padding:.85rem 1rem;align-self:start}
@media(min-width:900px){.dcs .dro{grid-column:auto}}
.dcs .dro b{display:block;font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;font-weight:500;color:var(--hl-strong)}
.dcs .dro p{margin-top:.3rem;font-size:.85rem;line-height:1.5;color:var(--muted)}
.dcs .arch{margin:2rem 0 0}
.dcs .archsc{overflow-x:auto;background:var(--card);border:1px solid var(--border);border-radius:.9rem;padding:1rem}
.dcs .archsc svg{display:block;width:100%;height:auto}
.dcs .arch .n rect{fill:var(--card);stroke:var(--border-strong);stroke-width:1.2}
.dcs .arch .n-new rect{fill:var(--accent-soft);stroke:var(--accent);stroke-width:1.6}
.dcs .arch .n-ai rect{fill:var(--hl-soft);stroke:var(--hl-strong);stroke-width:1.4}
.dcs .arch .n-data rect{fill:var(--surface)}
.dcs .arch .n-external rect{stroke-dasharray:5 4}
.dcs .arch .n-user rect{fill:var(--ink);stroke:var(--ink)}
.dcs .arch .al{font:600 14px var(--sans);fill:var(--fg)}
.dcs .arch .as{font:400 12px var(--sans);fill:var(--muted)}
.dcs .arch .n-user .al{fill:var(--ink-fg)}
.dcs .arch .n-user .as{fill:var(--ink-muted)}
.dcs .arch .ad{fill:none;stroke:var(--muted);stroke-width:1.3}
.dcs .arch .ae{fill:none;stroke:var(--muted);stroke-width:1.4}
.dcs .arch .aa{fill:var(--muted)}
.dcs .arch .alb{fill:var(--card)}
.dcs .arch .alt{font:500 11px var(--sans);fill:var(--muted)}
.dcs .arch figcaption{display:flex;flex-wrap:wrap;gap:.6rem 1.5rem;align-items:center;margin-top:1rem;font-size:.85rem;color:var(--muted)}
.dcs .arch .lg{display:flex;flex-wrap:wrap;gap:.5rem 1.1rem}
.dcs .arch .lgi{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem}
.dcs .arch .lgi i{width:.85rem;height:.85rem;border-radius:3px;border:1.5px solid var(--border-strong);background:var(--card)}
.dcs .arch .lg-new i{background:var(--accent-soft);border-color:var(--accent)}
.dcs .arch .lg-ai i{background:var(--hl-soft);border-color:var(--hl-strong)}
.dcs .arch .lg-data i{background:var(--surface)}
.dcs .arch .lg-external i{border-style:dashed}
.dcs .arch .lg-user i{background:var(--ink);border-color:var(--ink)}
.dcs .arch .acap{flex-basis:100%}
.dcs .feats{margin-top:1.5rem}
.dcs .bgrid{margin-top:2rem}
.dcs .bcard h3{font-size:1.05rem;margin-top:.5rem}
.dcs .bcard .small{margin-top:.5rem}
.dcs .bn{font-family:var(--mono);font-size:.72rem;color:var(--hl-strong)}
.dcs .vid{margin-top:2rem}
.dcs .smp{margin:2rem 0 0;border:1px solid var(--border-strong);border-radius:.9rem;overflow:hidden;background:var(--ink);box-shadow:0 24px 60px -34px oklch(0.275 0.126 264.3 / .45)}
.dcs .smp figcaption{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1.1rem;border-bottom:1px solid oklch(0.4 0.09 264);font-size:.82rem;color:var(--ink-muted)}
.dcs .smpb{font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--hl);border:1px solid oklch(0.6 0.1 70);border-radius:999px;padding:.2rem .6rem}
.dcs .smp pre{margin:0;padding:1.1rem 1.25rem;overflow-x:auto;font:400 .82rem/1.65 var(--mono);color:var(--ink-fg)}
.dcs .gal{margin-top:1.5rem}
.dcs .gal figcaption,.dcs .vid figcaption{margin-top:.6rem;font-size:.85rem;color:var(--muted)}
.dcs .rpts{display:grid;gap:1px;margin:2rem 0 0;background:var(--border);border:1px solid var(--border);border-radius:.75rem;overflow:hidden}
@media(min-width:768px){.dcs .rpts.g2{grid-template-columns:1fr 1fr}.dcs .rpts.g3{grid-template-columns:repeat(3,1fr)}}
.dcs .rpts>div{background:var(--card);padding:1.4rem 1.5rem;display:flex;flex-direction:column-reverse;gap:.4rem}
.dcs .rpts dd{margin:0;font-size:1.35rem;font-weight:600;line-height:1.25;color:var(--fg)}
.dcs .rpts dt{font-family:var(--mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.dcs .cs4q{margin:2.5rem 0 0;background:var(--card);border:1px solid var(--border);border-left:3px solid var(--hl);border-radius:.6rem;padding:1.75rem 1.75rem 1.5rem}
.dcs .cs4q blockquote{margin:0;font-size:1.15rem;line-height:1.6;color:var(--fg)}
.dcs .cs4q figcaption{display:flex;align-items:center;gap:.8rem;margin-top:1.25rem;font-size:.85rem;color:var(--muted)}
.dcs .cs4q figcaption>span:last-child{display:flex;flex-direction:column;gap:.1rem}
.dcs .cs4q b{color:var(--fg);font-weight:600}
.dcs .cs4q .qini{width:2.6rem;height:2.6rem;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;background:var(--hl-soft);color:var(--hl-strong);font-weight:600;font-size:.85rem}
.dcs .hood{margin-top:1.5rem;column-gap:2.5rem}
.dcs .hstack{margin-top:2.25rem;display:grid;gap:1.25rem}
@media(min-width:768px){.dcs .hstack{grid-template-columns:repeat(2,minmax(0,1fr))}}
.dcs .hstack p{font-size:.85rem;font-weight:600;margin-bottom:.55rem}
.dcs .phases{list-style:none;margin:2rem 0 0;padding:0;counter-reset:ph}
.dcs .phases li{position:relative;padding:0 0 1.6rem 2.75rem}
.dcs .phases li:before{counter-increment:ph;content:counter(ph);position:absolute;left:0;top:0;width:1.75rem;height:1.75rem;border-radius:50%;background:var(--accent);color:#fff;font:600 .78rem/1.75rem var(--sans);text-align:center}
.dcs .phases li:after{content:"";position:absolute;left:.84rem;top:2rem;bottom:.25rem;width:2px;background:var(--border-strong)}
.dcs .phases li:last-child:after{display:none}
.dcs .phases h3{font-size:1rem;line-height:1.75rem}
.dcs .phases .small{margin-top:.2rem;max-width:70ch}
.dcs .wgrid{margin-top:1.5rem}

