| ... |
... |
@@ -168,22 +168,56 @@ |
| 168 |
168 |
} |
| 169 |
169 |
|
| 170 |
170 |
/* SERVICES */ |
| 171 |
|
- .services { |
| 172 |
|
- display: grid; gap: 16px; grid-template-columns: 1fr; |
| 173 |
|
- @media (min-width: 920px) { grid-template-columns: repeat(3, 1fr); } |
|
171 |
+ .services { max-width: 1100px; margin: 0 auto; padding: 0 1rem; } |
|
172 |
+ .cards { |
|
173 |
+ display: flex; |
|
174 |
+ flex-wrap: wrap; |
|
175 |
+ gap: 24px; |
|
176 |
+ align-items: flex-start; /* << allows different heights per row */ |
| 174 |
174 |
} |
|
178 |
+ |
|
179 |
+ /* Card */ |
| 175 |
175 |
.card { |
| 176 |
|
- background: #fff; border: 1px solid @line; border-radius: @radius; |
| 177 |
|
- padding: 18px; box-shadow: @shadow-sm; transition: transform .18s ease, box-shadow .18s ease; |
|
181 |
+ flex: 1 1 320px; /* grows nicely, min ~320px */ |
|
182 |
+ max-width: 360px; /* optional: keeps them tidy in 3 cols */ |
|
183 |
+ background: #fff; |
|
184 |
+ border-radius: 14px; |
|
185 |
+ box-shadow: 0 6px 20px rgba(0,0,0,.06); |
|
186 |
+ padding: 20px 20px 16px; |
|
187 |
+ } |
| 178 |
178 |
|
| 179 |
|
- &:hover { transform: translateY(-2px); box-shadow: @shadow; } |
| 180 |
|
- p { color: @muted; margin: 0; } |
| 181 |
|
- details { |
| 182 |
|
- margin-top: .6rem; border-top: 1px dashed @line; padding-top: .6rem; |
| 183 |
|
- summary { cursor: pointer; font-weight: 650; } |
| 184 |
|
- } |
|
189 |
+ .card h3 { margin: 0 0 .25rem; font-size: 1.25rem; } |
|
190 |
+ .card p { margin: 0 0 .75rem; color: #3a4750; } |
|
191 |
+ |
|
192 |
+ /* Toggle */ |
|
193 |
+ .details-toggle { |
|
194 |
+ display: inline-block; |
|
195 |
+ font-weight: 600; |
|
196 |
+ border: 1.5px solid #008e78; |
|
197 |
+ color: #0a3c37; |
|
198 |
+ background: #e8fbf7; |
|
199 |
+ padding: 6px 10px; |
|
200 |
+ border-radius: 8px; |
|
201 |
+ cursor: pointer; |
| 185 |
185 |
} |
| 186 |
186 |
|
|
204 |
+ /* Details animation */ |
|
205 |
+ .details { |
|
206 |
+ margin-top: .5rem; |
|
207 |
+ overflow: hidden; |
|
208 |
+ max-height: 0; /* collapsed */ |
|
209 |
+ opacity: 0; |
|
210 |
+ transition: max-height .28s ease, opacity .2s ease; |
|
211 |
+ } |
|
212 |
+ |
|
213 |
+ .details.open { |
|
214 |
+ max-height: 260px; /* big enough for your list */ |
|
215 |
+ opacity: 1; |
|
216 |
+ } |
|
217 |
+ |
|
218 |
+ .details ul { margin: .25rem 0 0; padding-left: 1.1rem; } |
|
219 |
+ .details li { margin: .25rem 0; } |
|
220 |
+ |
| 187 |
187 |
/* METRICS */ |
| 188 |
188 |
.metrics { |
| 189 |
189 |
display: grid; gap: 14px; grid-template-columns: repeat(2, 1fr); |