
/* SERVICES */
.svc-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.modeller-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.proces-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }
.proces-grid .princip.in .num { --num-scale: 1; }
.fcard-label { display: block; font-size: 11px; font-weight: 800; letter-spacing: normal; color: var(--mint); margin-bottom: 10px; }
@media (max-width: 900px) { .proces-grid, .modeller-grid, .svc-grid { grid-template-columns: 1fr 1fr; gap: 28px; } }
@media (max-width: 560px) { .proces-grid, .modeller-grid, .svc-grid { grid-template-columns: 1fr; } }
/* Proces-illustrationer */
.proc-illu { height: 150px; border-radius: 20px 0 20px 0; margin-bottom: 24px; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.proc-illu svg { width: 64%; height: 64%; display: block; }
.proc-1 .proc-illu { background: var(--dark-blue); }
.proc-2 .proc-illu { background: var(--mint); }
.proc-3 .proc-illu { background: var(--warm-sand); }
.proc-4 .proc-illu { background: var(--dark-blue); }
.proc-5 .proc-illu { background: var(--mint); }
.proc-6 .proc-illu { background: var(--warm-sand); }
.proc-illu .anim { transform-box: fill-box; transform-origin: center; }
.proc-illu .spin   { animation: proc-spin 11s linear infinite; }
.proc-illu .float  { animation: proc-float 3.6s ease-in-out infinite; }
.proc-illu .pulse  { animation: proc-pulse 2.8s ease-in-out infinite; }
.proc-illu .breathe{ animation: proc-breathe 4.2s ease-in-out infinite; }
.proc-illu .ping   { animation: proc-ping 2.6s ease-out infinite; }
.proc-illu .flow   { animation: proc-flow 1.3s linear infinite; }
@keyframes proc-spin { to { transform: rotate(360deg); } }
@keyframes proc-float { 0%,100% { transform: translateY(6px); } 50% { transform: translateY(-8px); } }
@keyframes proc-pulse { 0%,100% { transform: scale(.86); } 50% { transform: scale(1.05); } }
@keyframes proc-breathe { 0%,100% { transform: scale(1) rotate(0deg); } 50% { transform: scale(1.1) rotate(5deg); } }
@keyframes proc-ping { 0% { transform: scale(.5); opacity: .9; } 70%,100% { transform: scale(1.7); opacity: 0; } }
@keyframes proc-flow { to { stroke-dashoffset: -42; } }
@media (prefers-reduced-motion: reduce) { .proc-illu .anim { animation: none !important; } }
  
