/* A physical presentation stage, with one readable story and a continuous client wall.
   Artwork is a Kie original. Layout, copy, controls and progress remain native UI. */
.win-showcase { --wins-ready:1; --win-orange:#ff7b39; min-width:0; }
.win-showcase [hidden] { display:none!important; }
#client-wins > .wrap { max-width:1500px; }
#client-wins .trust-section-heading { margin-bottom:32px; }
#client-wins .trust-section-heading h2 { font-size:clamp(38px,4.5vw,68px); }
.wins-tools { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:16px; }
.wins-tools > p { font-size:var(--type-caption); font-weight:600; color:#e4e4e4; }
.wins-step-controls { display:flex; gap:10px; flex-shrink:0; }
.wins-step-controls button { display:flex; justify-content:center; align-items:center; gap:15px; min-width:120px; min-height:48px; padding:10px 16px; background:#ededed; color:#191919; border:1px solid #ededed; font:600 17px/1.2 var(--sans); box-shadow:2px 3px 0 var(--win-orange); transition:translate 180ms ease,box-shadow 180ms ease; }
.wins-step-controls button > span[aria-hidden] { font-size:25px; font-weight:400; }
.wins-step-controls button:disabled { opacity:.4; cursor:default; box-shadow:none; }
.win-feature { position:relative; isolation:isolate; border:1px solid #686868; background:#1b1b1b; margin-right:6px; box-shadow:6px 6px 0 #454545; }
.win-feature-body { position:relative; }
.win-stage-art { position:absolute; inset:0 auto 0 0; width:36%; overflow:hidden; }
.win-stage-art img { width:100%; height:100%; object-fit:cover; object-position:50% 65%; }
[data-win-display] { position:relative; min-height:var(--win-feature-height,0px); }
.win-feature-link { display:grid; grid-template-columns:minmax(0,.36fr) minmax(0,.64fr); min-height:inherit; text-decoration:none; color:var(--ink); }
.win-feature-mark { position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:30px; padding:32px 34px 90px; min-width:0; overflow:clip; }
.win-feature-mark img { width:100%; max-width:235px; height:150px; object-fit:contain; filter:brightness(0) invert(1); transition:transform 300ms cubic-bezier(.2,.7,.25,1); }
.win-stage-caption { position:relative; display:grid; gap:9px; width:100%; max-width:280px; color:#fff; padding:16px 18px; background:rgba(25,25,25,.94); border:1px solid #69645f; border-left:3px solid var(--win-orange); box-shadow:4px 5px 0 rgba(0,0,0,.38); text-align:left; }
.win-stage-name { font-size:var(--type-caption); font-weight:600; line-height:1.25; }
.win-stage-type { font-size:18px; line-height:1.4; color:#d4d0cc; text-wrap:balance; }
.win-feature-story.win-copy { align-self:center; margin:24px 24px 24px 0; padding:clamp(24px,2.5vw,40px); color:var(--ink); background:var(--paper); border:1px solid #111; box-shadow:5px 5px 0 var(--win-orange); }
.win-feature-story .win-title { padding-bottom:18px; }
.win-feature-story .win-title > p { display:flex; justify-content:space-between; align-items:center; color:#5b5b5b; margin-bottom:8px; }
.win-feature-story .win-title > p > span { color:var(--accent); font-size:26px; }
.win-feature-story .win-title h3 { font-size:clamp(30px,3vw,45px); line-height:1.08; letter-spacing:-.035em; }
.win-feature-story dl > div { padding-block:14px; }
.win-feature-story dl > div:last-child { padding-bottom:0; }
.win-feature-link:focus-visible { outline:3px solid var(--win-orange); outline-offset:6px; }
.wins-feature-footer { position:relative; display:flex; justify-content:space-between; align-items:center; gap:24px; min-height:82px; padding:16px 24px; background:#242424; border-top:1px solid #686868; }
.wins-feature-current { display:flex; flex-wrap:wrap; align-items:baseline; gap:6px 16px; min-width:0; }
.wins-feature-current [data-win-current] { font-size:20px; font-weight:600; color:#f2f2f2; }
.wins-feature-current [data-win-position] { font-size:16px; color:#c4c4c4; white-space:nowrap; }
.wins-explore { display:flex; align-items:center; justify-content:space-between; gap:24px; margin:28px 6px 18px 0; }
.wins-explore h3 { font-size:25px; line-height:1.2; }
.wins-explore p { margin-top:6px; color:#c4c4c4; font-size:var(--type-caption); line-height:1.4; }
.wins-touch-hint { display:none; }
.wins-order { display:flex; flex-shrink:0; gap:0; border:1px solid #777; }
.wins-order button { min-height:44px; padding:10px 16px; color:#d3d3d3; border:0; background:#202020; font:600 17px/1.3 var(--sans); }
.wins-order button + button { border-left:1px solid #777; }
.wins-order button[aria-pressed="true"] { background:#ededed; color:#171717; }
.wins-filters { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto; align-items:end; gap:16px; margin:26px 6px 0 0; }
.wins-filters label { display:flex; flex-direction:column; gap:9px; min-width:0; font-size:18px; line-height:1.35; color:#e5e5e5; }
.wins-filters input,.wins-filters select { box-sizing:border-box; width:100%; min-width:0; min-height:56px; border:1px solid #8b8b87; border-radius:0; background:#ededed; color:#191919; padding:13px 16px; font:400 20px/1.45 var(--sans); box-shadow:3px 3px 0 rgba(25,25,25,.14); }
.wins-filters input::placeholder { color:#62625e; }
.wins-filters .form-select { --select-paper:#ededed; --select-coral:var(--win-orange); }
.wins-filters input:focus-visible,.wins-filters select:focus-visible { outline:2px solid var(--win-orange); outline-offset:3px; }
.wins-reset { min-height:56px; min-width:82px; padding:12px 16px; border:1px solid #777; background:#242424; color:#eee; font:600 17px/1.4 var(--sans); }
.wins-reset:hover { border-color:var(--win-orange); }
.wins-count { min-height:1.4em; margin:17px 0 13px; font-size:17px; color:#c6c6c6; }
.wins-empty { max-width:none; padding:28px; border:1px solid #777; border-left:3px solid var(--win-orange); color:#eee; font-size:var(--type-body); }
.win-selectors { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; padding:5px 6px 9px 0; }
.win-selector { position:relative; isolation:isolate; display:flex; flex-direction:column; align-items:start; text-align:left; min-width:0; padding:18px; background:#222; color:#fff; border:1px solid #666; box-shadow:3px 4px 0 #090909; font-family:var(--sans); transition:background-color 180ms ease,border-color 180ms ease,box-shadow 180ms ease; }
.win-selector-logo { width:100%; height:55px; display:grid; place-items:center; margin-bottom:18px; overflow:clip; }
.win-selector-logo img { width:100%; height:100%; min-width:0; min-height:0; object-fit:contain; filter:brightness(0) invert(1); transition:transform 220ms ease; }
.win-selector[data-win-select="mail-waves"] .win-selector-logo img { scale:2.2; }
.win-feature-link[data-win-client="mail-waves"] .win-feature-mark img { scale:1.8; }
.win-selector-name { font-size:21px; font-weight:700; line-height:1.2; letter-spacing:-.025em; }
.win-selector-type { display:block; margin-top:8px; font-size:16px; line-height:1.4; color:#d7d2ce; }
.win-selector-role { display:block; width:100%; margin-top:auto; padding-top:15px; font-size:17px; line-height:1.35; color:#fff; }
.win-selector-state { display:none; }
.win-selector[aria-pressed="true"] { border-color:var(--win-orange); box-shadow:3px 4px 0 var(--win-orange); background:#2b2b2b; }
.win-selector .disclosure-trace { color:var(--win-orange); }
.win-selector .disclosure-trace-head { background:currentColor; }
.win-showcase button:focus-visible,.wins-fallback summary:focus-visible { outline:3px solid var(--win-orange,#ff7b39); outline-offset:5px; }
.wins-fallback { display:grid; gap:12px; }
.wins-fallback details { border:1px solid #777; }
.wins-fallback summary { display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px; padding:20px; cursor:pointer; }
.wins-fallback summary > span:first-child { font-weight:700; }
.wins-fallback summary > span:last-child { color:#ccc; }
.wins-fallback .win-card { margin:0 16px 22px; }
@media (hover:hover) and (pointer:fine) {
  .win-selector:hover { background:#303030; }
  .win-selector:hover .win-selector-logo img { transform:translateY(-3px); }
  .win-feature-link:hover .win-feature-mark img { transform:translateY(-5px); }
  .wins-step-controls button:not(:disabled):hover { translate:-1px -2px; box-shadow:3px 4px 0 var(--win-orange); }
}
@media (max-width:1000px) {
  .win-feature-story.win-copy { margin:18px 18px 18px 0; padding:24px; }
  .win-feature-mark { padding-inline:22px; }
  .win-selector { padding:14px; }
  .win-selectors { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .win-selector-name { font-size:19px; }
  .win-selector-state { font-size:12px; }
}
@media (max-width:700px) {
  .win-stage-art { width:100%; height:260px; }
  .win-stage-art img { object-position:50% 68%; }
  .win-feature-link { display:flex; flex-direction:column; }
  .win-feature-mark { height:260px; flex-shrink:0; padding:24px 32px 28px; gap:20px; }
  .win-feature-mark img { height:78px; max-width:190px; }
  .win-stage-caption { max-width:285px; gap:4px; padding:10px 15px; }
  .win-stage-name { font-size:18px; }
  .win-stage-type { font-size:17px; }
  .win-feature-story.win-copy { align-self:stretch; flex:1; margin:0 16px 20px; padding:22px; }
  .win-feature-story .win-title h3 { font-size:32px; }
  .wins-feature-footer { flex-direction:column; align-items:stretch; gap:14px; padding:16px; }
  .wins-feature-current { justify-content:space-between; }
  .wins-feature-current [data-win-current] { font-size:18px; }
  .wins-step-controls { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
  .wins-step-controls button { min-width:0; }
  .wins-explore { align-items:start; flex-wrap:wrap; gap:15px; }
  .wins-explore h3 { font-size:24px; }
  .wins-filters { grid-template-columns:minmax(0,1fr) auto; gap:16px 12px; }
  .wins-search { grid-column:1 / -1; }
  .wins-filters input,.wins-filters select { font-size:18px; }
  .win-selectors { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding-top:6px; padding-bottom:12px; }
  .win-selector { padding:16px; }
  .win-selector-logo { height:45px; margin-bottom:13px; }
  .win-selector-name { font-size:20px; }
  .win-selector-role { font-size:17px; }
  .win-selector-state { font-size:13px; }
}
@media (max-width:380px) {
  .win-selector { padding:12px; }
  .win-selector-name { font-size:18px; overflow-wrap:anywhere; }
  .win-selector-type { font-size:16px; }
  .win-feature-story.win-copy { padding:18px; margin-inline:12px; }
}
@media (hover:none), (pointer:coarse) {
  .wins-hover-hint { display:none; }
  .wins-touch-hint { display:block; }
}
@media (prefers-reduced-motion:reduce) {
  .win-showcase * { transition:none!important; }
}
