.k{position:relative;display:flex;flex-direction:column;border-radius:20px;overflow:hidden;min-height:44px;isolation:isolate;
 background:var(--bg);color:var(--ink);border:1px solid var(--bd);box-shadow:0 1px 3px #0d103014;
 transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.k:hover{transform:translateY(-4px);box-shadow:0 14px 30px #0d103026}
.k:focus-visible{outline:3px solid #0d1030;outline-offset:3px}
.k.signage:focus-visible,.k.cameras:focus-visible{outline-color:#ffb300}
.k h3{font-size:22px;line-height:1.15;color:var(--ink)}
.k p{font-size:15px;line-height:1.45;color:var(--mut);margin:0}
.k p i{font-style:normal;font-weight:600;white-space:nowrap}
.k .tx{display:flex;flex-direction:column;gap:7px;padding:20px 22px 22px;position:relative;z-index:2}
.k .go{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:15px;color:var(--ink);min-height:24px;margin-top:4px}
.k .ar{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s}
.k:hover .ar{transform:translateX(4px)}
.k .mo{fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;color:var(--ac)}
.k .mo .th{opacity:.45;stroke-width:2}
.k .mo .fl{fill:currentColor;stroke:none;opacity:.9}
.logos{--bg:#fff3dc;--ink:#2a1a00;--mut:#5c3d00;--ac:#b45309;--bd:#ecd7a8}
.websites{--bg:#e8ebff;--ink:#0d1030;--mut:#343b6b;--ac:#0404ff;--bd:#c5cbf5}
.printing{--bg:#ffe8e3;--ink:#2b0d0a;--mut:#74281e;--ac:#c2301f;--bd:#f2c4bb}
.apparel{--bg:#dcf3ee;--ink:#062b26;--mut:#1b544b;--ac:#0b7a6b;--bd:#b0dcd3}
.signage{--bg:#0d1030;--ink:#fff;--mut:#cdd3f7;--ac:#8fb0ff;--bd:#0d1030}
.cameras{--bg:#0404ff;--ink:#fff;--mut:#e6e9ff;--ac:#fff;--bd:#0404ff}
.pos{--bg:#eceee0;--ink:#1c2208;--mut:#454d1d;--ac:#5f6f12;--bd:#d3d8bd}
.social{--bg:#efe6ff;--ink:#200a4a;--mut:#4f3484;--ac:#6d28d9;--bd:#d6c4f7}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.k:not(.im){min-height:290px;justify-content:flex-end}
.k:not(.im)::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.5;
 -webkit-mask-image:linear-gradient(to bottom,#000 0,transparent 62%);mask-image:linear-gradient(to bottom,#000 0,transparent 62%)}
.k:not(.im) .mo{position:absolute;top:18px;right:16px;width:62%;max-width:190px;height:auto}
.logos::before{background-image:radial-gradient(var(--ac) 1.2px,transparent 1.6px);background-size:16px 16px}
.websites::before{background-image:linear-gradient(var(--bd) 1px,transparent 1px),linear-gradient(90deg,var(--bd) 1px,transparent 1px);background-size:24px 24px}
.printing::before{background-image:repeating-linear-gradient(135deg,var(--bd) 0 2px,transparent 2px 14px)}
.apparel::before{background-image:repeating-linear-gradient(90deg,var(--bd) 0 2px,transparent 2px 9px)}
.signage::before{background-image:repeating-linear-gradient(0deg,#ffffff1f 0 1px,transparent 1px 6px)}
.cameras::before{background-image:radial-gradient(circle at 78% 30%,transparent 0 40px,#ffffff30 41px 42px,transparent 43px 70px,#ffffff30 71px 72px,transparent 73px 100px,#ffffff30 101px 102px,transparent 103px)}
.pos::before{background-image:repeating-linear-gradient(0deg,var(--bd) 0 1px,transparent 1px 18px)}
.social::before{background-image:radial-gradient(var(--bd) 2px,transparent 2.4px);background-size:22px 22px;background-position:6px 6px}
.k.im .pv{display:block;background:#f3f5fb;overflow:hidden;position:relative}
.k.im .pv img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.k.im:hover .pv img{transform:scale(1.04)}
.k.im{background:#fff;--bd:#e1e5f0}
.k.im .tx{background:#fff;border-top:1px solid #e1e5f0}
.k.im h3{color:#0d1030}.k.im p{color:#59617f}.k.im .go{color:#0404ff}
.k.im .pv.pm{display:grid;place-items:center;background:var(--bg)}
.k.im .pv.pm .mo{width:150px;height:auto}
.bento{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(3,minmax(232px,auto)) 150px;gap:18px}
.bento .k{min-height:0}
.bento .k .pv{flex:1;min-height:110px}
.bento .bx{grid-column:1/3;grid-row:1/3}
.bento .bx h3{font-size:30px}.bento .bx p{font-size:17px}
.bento .bx .pv{min-height:300px}
.bento .logos{grid-column:3/5;grid-row:1}
.bento .signage{grid-column:1/3;grid-row:3}
.bento .wd{flex-direction:row}
.bento .wd .pv{flex:0 0 46%;min-height:0}
.bento .wd .tx{flex:1;justify-content:center;border-top:0;border-left:1px solid #e1e5f0}
.bento .social{grid-column:1/5;grid-row:4;flex-direction:row;align-items:stretch}
.bento .social .pv{flex:0 0 30%;min-height:0}
.bento .social .tx{flex:1;justify-content:center;border-top:0;border-left:1px solid #e1e5f0}
.bento .k.im:not(.bx) .tx{padding:16px 20px 18px}
.bento .k.im:not(.bx):not(.wd):not(.social) h3{font-size:20px}
.bento .k.im:not(.bx):not(.wd):not(.social) p{font-size:14px}
.bento .logos .pv{background:#fff}
.mixed .k.im .pv{height:190px;flex:none}
.mixed .k.im .tx{flex:1}
.mixed .k.im p{flex:1}
.mixed .logos .pv img{object-fit:contain}
@media (max-width:1000px){
 .grid4{grid-template-columns:1fr 1fr}
 .bento{grid-template-columns:1fr 1fr}
 .bento .bx{grid-column:1/3;grid-row:auto}
 .bento .logos,.bento .signage,.bento .social{grid-column:1/3;grid-row:auto}
}
@media (max-width:640px){
 .grid4,.bento{grid-template-columns:1fr}
 .bento{grid-template-rows:none;grid-auto-rows:auto}
 .bento .bx,.bento .logos,.bento .signage,.bento .social{grid-column:auto}
 .bento .bx h3{font-size:24px}.bento .bx p{font-size:15px}
 .bento .bx .pv{min-height:190px}.bento .k .pv{min-height:150px}
 .bento .wd,.bento .social{flex-direction:column}
 .bento .wd .pv,.bento .social .pv{flex:none;height:170px}
 .bento .wd .tx,.bento .social .tx{border-left:0;border-top:1px solid #e1e5f0}
 .k:not(.im){min-height:300px}.k:not(.im) .mo{width:50%;max-width:150px;top:14px}
 .mixed .k.im .pv{height:170px}
}
@media (prefers-reduced-motion:reduce){.k,.k .ar,.k.im .pv img{transition:none}.k:hover{transform:none}.k.im:hover .pv img{transform:none}}

.g3x{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.g2x{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.g3x .k.im .pv,.g2x .k.im .pv{flex:none;height:auto}
.pv.r43{aspect-ratio:4/3}.pv.r169{aspect-ratio:16/10}.pv.r2{aspect-ratio:2/1}
.g3x .k.im .pv img,.g2x .k.im .pv img{position:absolute;inset:0}
.g3x .k.im .tx,.g2x .k.im .tx{flex:1}
.g3x .k.im p,.g2x .k.im p{flex:1}
.pv.r43{background:#f3f5fb}
.more{margin-top:18px}
.k.im .go .ar{width:17px;height:17px}
@media (max-width:1000px){.g3x{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.g3x,.g2x{grid-template-columns:1fr}}
.k.ind{min-height:270px}.g3x .k:not(.im) .mo{max-width:170px}
