/* hero */
.hero-grid{display:grid;grid-template-columns:1fr 200px 240px;gap:40px;align-items:start}
@media(max-width:980px){.hero-grid{grid-template-columns:1fr 180px 200px;gap:28px}}
@media(max-width:820px){.hero-grid{grid-template-columns:1fr}}
.hero-side{color:var(--muted);font-size:15px;line-height:1.55;padding-top:8px}
.hero-photo{
  display:block;width:100%;border-radius:18px;
  aspect-ratio:4/5;object-fit:cover;
}
@media(max-width:820px){.hero-photo{width:160px}}
.hero-side b{color:var(--ink);font-weight:600}
.hero-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:44px}

/* about */
.eyebrow{margin-bottom:26px}
.about-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:60px}
@media(max-width:820px){.about-grid{grid-template-columns:1fr;gap:28px}}
.about-txt{color:var(--muted);font-size:17px}
.about-txt p{margin-bottom:16px}
.about-txt p:last-child{margin-bottom:0}
.about-txt b{color:var(--ink);font-weight:600}

/* cases carousel */
#cases{padding-top:20px}
.cases-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:36px}
.cases-head .sub{color:var(--muted);margin-top:10px}
.arrows{display:flex;gap:12px;flex-shrink:0}
.arrow{
  width:52px;height:52px;border-radius:50%;border:none;background:var(--dark);color:#fff;
  font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;
  transition:transform .15s ease;
}
.arrow:hover{transform:scale(1.06)}
.arrow:disabled{opacity:.25;cursor:default;transform:none}
.track{
  display:flex;gap:28px;overflow-x:auto;scroll-snap-type:x mandatory;
  padding:4px 4px 24px;scrollbar-width:none;
}
.track::-webkit-scrollbar{display:none}
.case-card{
  flex:0 0 clamp(300px,42vw,480px);scroll-snap-align:start;
}
.case-card .cover{
  aspect-ratio:4/3;border-radius:var(--r);overflow:hidden;background:var(--card);
  border:1px solid var(--line);position:relative;
}
.case-card .cover img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.case-card:hover .cover img{transform:scale(1.03)}
.case-card .cover .ph{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  color:var(--muted);font-size:14px;border:1.5px dashed var(--line);border-radius:var(--r);
}
.case-card h3{
  font-family:'Inter Tight',sans-serif;font-weight:600;font-size:23px;
  letter-spacing:-.01em;margin:22px 0 10px;
}
.case-card p{color:var(--muted);font-size:15.5px;line-height:1.55}
.case-card .more{
  display:inline-block;margin-top:14px;font-weight:600;font-size:14.5px;
  border-bottom:1px solid var(--ink);
}

/* home connect overrides */
body.home .connect{padding:96px 0 48px;margin-top:40px}
body.home .connect h2{font-size:clamp(44px,8vw,96px)}
