/* Services grid component */
.services-grid { 
  --card-bg: linear-gradient(145deg,var(--color-surface) 0%, var(--color-surface-alt) 100%);
  display:grid; 
  gap: var(--space-4); 
  grid-template-columns: repeat(auto-fit,minmax(min(18rem,100%),1fr));
  margin-top: var(--space-4);
}

.service-card { 
  position:relative; 
  padding: var(--space-4) var(--space-4) var(--space-4); 
  background: var(--card-bg); 
  border:1px solid var(--color-border); 
  border-radius: var(--radius-l); 
  box-shadow: var(--shadow-m);
  overflow:hidden; 
  transition: border-color var(--duration-base) var(--ease-standard), transform var(--duration-base) var(--ease-standard), box-shadow var(--duration-base) var(--ease-standard);
}
.service-card::before { content:""; position:absolute; inset:0; background: radial-gradient(circle at 25% 20%, rgba(255,122,0,.18), transparent 60%); opacity:.0; transition:opacity var(--duration-base) var(--ease-standard); pointer-events:none; }
.service-card:hover, .service-card:focus-within { border-color: var(--color-accent); transform:translateY(-4px); box-shadow: 0 4px 22px -4px rgba(255,122,0,.35), var(--shadow-m); }
.service-card:hover::before, .service-card:focus-within::before { opacity:1; }

.service-card h3 { margin:0 0 var(--space-2); font-size: clamp(1.05rem, 1rem + .4vw, 1.35rem); display:flex; align-items:center; gap:.5ch; }
.service-card h3 span { font-size:.75em; font-weight:500; letter-spacing:.05em; text-transform:uppercase; color: var(--color-accent-alt); }
.service-card ul { margin:0; padding:0 0 0 1.1em; display:flex; flex-direction:column; gap:.35rem; font-size: var(--font-size-s); line-height:1.4; }
.service-card li { position:relative; }
.service-card li::marker { color: var(--color-accent); }

html[data-theme="light"] .service-card { box-shadow: 0 1px 2px rgba(0,0,0,.08), 0 3px 10px -2px rgba(0,0,0,.08); }
html[data-theme="light"] .service-card:hover { box-shadow: 0 6px 22px -6px rgba(0,0,0,.18); }

@media (min-width: 68rem) { .services-grid { grid-template-columns: repeat(auto-fit,minmax(19rem,1fr)); } }
