Changes for page Home
Last modified by Alex Cotiugă on 2026/01/13 13:12
From version 7.109
edited by Alex Cotiugă
on 2025/11/14 07:49
on 2025/11/14 07:49
Change comment:
There is no comment for this version
To version 7.90
edited by Alex Cotiugă
on 2025/11/13 21:26
on 2025/11/13 21:26
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -10,7 +10,7 @@ 10 10 <div class="col-sm-12"> 11 11 <div class="hero-inner"> 12 12 <h1 id="hero-title">Professional XWiki solutions, from setup to long-term stability</h1> 13 - <p class="lead">Need your XWiki upgraded, secured, or improved? Let’s make it happen .</p>13 + <p class="lead">Need your XWiki upgraded, secured, or improved? Let’s make it happen</p> 14 14 <div class="hero-cta"> 15 15 <a class="btn btn-primary" href="#contact" aria-label="Schedule a call with Agnease"> 16 16 Request a consultation ... ... @@ -67,7 +67,7 @@ 67 67 #set ($servicesSectionData = [{ 68 68 'title': 'Upgrades', 69 69 'icon': 'refresh', 70 - 'content': 'Stay current with the latest XWiki LTS and keep your instance re liable.',70 + 'content': 'Stay current with the latest XWiki LTS and keep your instance secure and stable.', 71 71 'items': [ 72 72 'Audit setup, extensions, and configurations', 73 73 'Test upgrades with backups and validation', ... ... @@ -113,20 +113,13 @@ 113 113 <section class="services" aria-labelledby="services-title"> 114 114 <div class="container"> 115 115 <h2 id="services-title">Services</h2> 116 - <p class=" lead">116 + <p class="services-sub"> 117 117 All the XWiki services you need, delivered with precision and care 118 118 </p> 119 119 120 - #set ($servicesSize = $servicesSectionData.size()) 121 121 <div class="row services-grid" role="list"> 122 122 #foreach ($entry in $servicesSectionData) 123 - #set ($classes = "service col-xs-12 col-sm-6") 124 - ## If this is the last item and the number of services is odd, 125 - ## center it on its own row on small+ screens 126 - #if ($foreach.count == $servicesSize && ($servicesSize % 2) == 1) 127 - #set ($classes = "$classes col-sm-offset-3") 128 - #end 129 - <div class="$classes" role="listitem"> 122 + <div class="service col-sm-6" role="listitem"> 130 130 <div class="service-icon"> 131 131 <i class="fa fa-$entry.icon" aria-hidden="true"></i> 132 132 </div> ... ... @@ -144,7 +144,7 @@ 144 144 </div> 145 145 </div> 146 146 </section> 147 - #*140 + 148 148 <!-- ================= METRICS ================= --> 149 149 <section aria-labelledby="metrics-title"> 150 150 <div class="container"> ... ... @@ -211,20 +211,16 @@ 211 211 </details> 212 212 </div> 213 213 </section> 214 - *#207 + 215 215 <!-- ================= CTA ================= --> 216 - <section id="contact" aria-labelledby="contact-title" class="cta-section">209 + <section id="contact" aria-labelledby="contact-title"> 217 217 <div class="container"> 218 - <div class="row"> 219 - <div class="col-sm-12 text-center"> 220 - <h4 id="contact-title">Need a reliable plan for your XWiki?</h4> 221 - <p class="lead"> 222 - Keep your XWiki running smoothly and safely. Get in touch if you need assistance. 223 - </p> 224 - <a class="btn btn-primary" href="mailto:alex@agnease.com"> 225 - Contact Agnease 226 - </a> 211 + <div class="cta-band"> 212 + <div> 213 + <h3 id="contact-title">Need a reliable plan for your XWiki?</h3> 214 + <p class="lead" style="margin:0">Upgrades, support, and integrations handled with low risk and clear communication.</p> 227 227 </div> 216 + <a class="btn btn-primary" href="mailto:hello@agnease.com">Contact Agnease</a> 228 228 </div> 229 229 </div> 230 230 </section>
- XWiki.StyleSheetExtension[0]
-
- Code
-
... ... @@ -188,15 +188,22 @@ 188 188 } 189 189 } 190 190 191 - /* SERVICES */191 + /* SERVICES */ 192 192 .services { 193 193 .services-grid { 194 194 margin-top: 12px; 195 + display: flex; 196 + flex-wrap: wrap; 197 + justify-content: space-between; 195 195 196 196 .service { 200 + box-sizing: border-box; 197 197 margin-bottom: 24px; 198 198 199 - /* icon + text side by side */ 203 + /* Desktop / tablet: 2 per row with space between */ 204 + flex: 0 0 48%; 205 + max-width: 48%; 206 + 200 200 display: flex; 201 201 align-items: flex-start; 202 202 gap: 16px; ... ... @@ -232,7 +232,7 @@ 232 232 margin: .45rem 0 0; 233 233 padding-left: 1.1rem; 234 234 color: @muted; 235 - font-size: 13px;242 + font-size: .95rem; 236 236 } 237 237 238 238 li { ... ... @@ -241,19 +241,13 @@ 241 241 } 242 242 } 243 243 } 244 - } 245 245 246 - @media(max-width:767px) {247 - .services-grid {252 + /* Mobile: stack services full width */ 253 + @media (max-width: 767px) { 248 248 .service { 249 - margin-bottom: 20px; 255 + flex: 0 0 100%; 256 + max-width: 100%; 250 250 } 251 - 252 - .service-icon { 253 - width: 36px; 254 - height: 36px; 255 - font-size: 16px; 256 - } 257 257 } 258 258 } 259 259 } ... ... @@ -288,33 +288,11 @@ 288 288 } 289 289 290 290 /* CTA BAND */ 291 - .cta-section { 292 - padding: 40px 0; // similar spacing to hero 293 - border-top: 1px solid @line; 294 - 295 - .cta-inner { 296 - max-width: 760px; // same as hero-inner 297 - margin: 0 auto; // center block 298 - text-align: center; 299 - padding: 24px; 300 - background: #fff; 301 - border: 1px solid @line; 302 - border-radius: @radius; 303 - box-shadow: @shadow; 304 - 305 - h3 { 306 - margin: 0 0 10px; 307 - font-weight: 700; 308 - } 309 - 310 - .lead { 311 - margin: 0 0 16px; 312 - color: @muted; 313 - } 314 - 315 - .btn { 316 - margin-top: 4px; 317 - } 292 + #contact { 293 + .cta-band { 294 + background: #fff; border: 1px solid @line; border-radius: @radius; 295 + padding: 20px; box-shadow: @shadow; 296 + display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; 318 318 } 319 319 } 320 320