/* Ported 1:1 from components/Services/index.tsx's injected <style>
   string — see that file's comments for why this is 3 independent
   flex columns (true masonry) rather than one CSS Grid, and why it's
   locked to 100svh full-bleed. No page builder does this as a preset;
   this is the hand-written CSS the migration plan called for. */
.sv-root{position:relative;background:#0a0a0a;height:100svh;
  display:flex;box-sizing:border-box;}

.sv-grid{display:flex;width:100%;height:100%;gap:3px;}
.sv-col{display:flex;flex-direction:column;gap:3px;height:100%;}
.sv-col--side{flex:3;}
.sv-col--mid{flex:5;}

.sv-col--side .sv-tile-wrap{flex:1;}
.sv-col--mid .sv-tile-wrap{flex:.85;}
.sv-col--mid .sv-tile-wrap--ctr{flex:1.6;}

.sv-tile-wrap{display:block;min-height:0;}
.sv-tile{position:relative;display:block;width:100%;height:100%;overflow:hidden;}
.sv-tile-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  transition:transform .5s ease;}
.sv-tile:hover .sv-tile-img{transform:scale(1.06);}
.sv-model-img{position:static;background:#e9eaec;}

.sv-ctr{position:relative;display:flex;flex-direction:column;align-items:center;
  justify-content:center;text-align:center;height:100%;width:100%;
  background:#0a0a0a;padding:24px;text-decoration:none;transition:background .25s;}
.sv-ctr:hover{background:#141416;}
.sv-ctr-h{font-family:var(--font-display);font-size:clamp(34px,5.6vw,64px);
  font-weight:800;letter-spacing:-.025em;line-height:1.08;color:#fff;margin-bottom:12px;}
.sv-ctr-dim{color:#fff;}
.sv-ctr-body{font-size:.86rem;line-height:1.5;color:rgba(255,255,255,.75);max-width:32ch;
  margin-bottom:20px;}
.sv-ctr-cta{display:inline-flex;align-items:center;font-size:.78rem;font-weight:700;
  letter-spacing:.02em;color:#141416;padding:13px 26px;
  border-radius:100px;background:#fff;transition:box-shadow .25s,transform .25s;}
.sv-ctr:hover .sv-ctr-cta{box-shadow:0 0 24px rgba(255,255,255,.25);transform:translateY(-2px);}

@media(max-width:900px){
  .sv-root{height:auto;}
  .sv-grid{flex-direction:column;height:auto;}
  .sv-col{gap:2px;}
  .sv-col--side .sv-tile-wrap,.sv-col--mid .sv-tile-wrap{height:280px;flex:none;}
  .sv-col--mid .sv-tile-wrap--ctr{height:auto;padding:56px 0;}
  .sv-ctr{padding:32px 24px;}
}
