.vt-wordpress {
      --orange: #ff6f00;
      --blue: #007bff;
      --navy: #10233d;
      --text: #26384d;
      --muted: #61738a;
      --line: #e3ebf4;
      --surface: #ffffff;
      --soft-blue: #f1f7ff;
      --soft-orange: #fff6ee;
      --radius: 18px;
      --shadow: 0 10px 30px rgba(16, 35, 61, .055);
      --content: 1180px;
    }.vt-wordpress * { box-sizing: border-box; }.vt-wordpress { scroll-behavior: smooth; }.vt-wordpress {
      margin: 0;
      color: var(--text);
      background: #fff;
      
      
      
    }.vt-wordpress a { color: inherit; }.vt-wordpress img { max-width: 100%; display: block; }.vt-wordpress button, .vt-wordpress input, .vt-wordpress select, .vt-wordpress textarea { font: inherit; }.vt-wordpress .page-content { overflow: hidden; }.vt-wordpress .container { width: min(var(--content), calc(100% - 44px)); margin-inline: auto; }.vt-wordpress .section { padding: 76px 0; position: relative; }.vt-wordpress .section.soft-blue { background: linear-gradient(135deg, #f3f8ff 0%, #fbfdff 100%); }.vt-wordpress .section.soft-orange { background: linear-gradient(135deg, #fff7f0 0%, #fffdfa 100%); }.vt-wordpress .section-head { max-width: 760px; margin: 0 auto 30px; text-align: center; }.vt-wordpress .eyebrow {
      display: inline-flex; align-items: center; gap: 9px; padding: 7px 12px;
      border: 1px solid #ffd9bf; border-radius: 999px; color: #b84d00;
      background: #fffaf5;    
    }.vt-wordpress .eyebrow::before { content: ""; width: 7px; height: 7px; background: var(--orange); border-radius: 50%; }.vt-wordpress h1, .vt-wordpress h2, .vt-wordpress h3, .vt-wordpress p { margin-top: 0; }.vt-wordpress h1, .vt-wordpress h2, .vt-wordpress h3 { color: var(--navy);   }.vt-wordpress h1 {  margin: 18px 0 20px; }.vt-wordpress h2 {  margin-bottom: 12px; }.vt-wordpress h3 {  margin-bottom: 8px;  }.vt-wordpress p { color: var(--muted); }.vt-wordpress .section-head p { margin: 0 auto; max-width: 680px; }.vt-wordpress .accent { color: var(--orange); }.vt-wordpress .section-title-row { display: flex; align-items: flex-start; gap: 16px; margin-bottom: 26px; }.vt-wordpress .section-number {
      flex: 0 0 44px; height: 44px; display: grid; place-items: center; border-radius: 50%;
      background: var(--blue); color: white;  
      box-shadow: 0 5px 14px rgba(0,123,255,.2);
    }.vt-wordpress .section-number.orange { background: var(--orange); box-shadow: 0 5px 14px rgba(255,111,0,.2); }.vt-wordpress .section-title-row h2 {  margin: 0 0 8px; }.vt-wordpress .section-title-row p { margin: 0; max-width: 780px; }.vt-wordpress .btn-row { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }.vt-wordpress .btn {
      display: inline-flex; justify-content: center; align-items: center; gap: 10px;
      min-height: 48px; padding: 12px 20px; border-radius: 999px; border: 1px solid transparent;
      text-decoration: none;   transition: transform .2s, box-shadow .2s, background .2s;
      cursor: pointer;
    }.vt-wordpress .btn:hover { transform: translateY(-2px); }.vt-wordpress .btn-primary { background: var(--orange); color: white; box-shadow: 0 9px 20px rgba(255,111,0,.2); }.vt-wordpress .btn-primary:hover { background: #e96300; box-shadow: 0 12px 25px rgba(255,111,0,.25); }.vt-wordpress .btn-blue { background: var(--blue); color: white; box-shadow: 0 9px 20px rgba(0,123,255,.17); }.vt-wordpress .btn-outline { color: var(--blue); background: white; border-color: #91c5ff; }.vt-wordpress .btn-outline:hover { background: #f2f8ff; }.vt-wordpress .btn svg { width: 17px; height: 17px; }.vt-wordpress .hero { padding: 58px 0 48px; background: radial-gradient(circle at 80% 22%, rgba(255,111,0,.12), transparent 26%), radial-gradient(circle at 64% 15%, rgba(0,123,255,.12), transparent 32%), linear-gradient(120deg, #f7fbff, #fff 66%, #fff9f4); }.vt-wordpress .hero-grid { display: grid; grid-template-columns: 1.02fr .98fr; gap: 44px; align-items: center; }.vt-wordpress .hero-copy { padding: 8px 0; }.vt-wordpress .hero-copy .intro { max-width: 570px;  margin-bottom: 18px; }.vt-wordpress .checks { display: grid; gap: 8px; margin: 20px 0 25px; padding: 0; list-style: none; }.vt-wordpress .checks li { display: flex; align-items: flex-start; gap: 10px; color: var(--text);  }.vt-wordpress .check {
      flex: 0 0 20px; width: 20px; height: 20px; display: grid; place-items: center; margin-top: 2px;
      border-radius: 50%; background: var(--orange); color: #fff;  
    }.vt-wordpress .hero-visual { position: relative; min-height: 430px; display: grid; place-items: center; }.vt-wordpress .hero-visual::before { content: ""; position: absolute; width: 78%; aspect-ratio: 1; border-radius: 50%; background: linear-gradient(145deg, #e4f2ff, #fff0e2); }.vt-wordpress .device-art { position: relative; z-index: 1; width: 100%; max-width: 570px; filter: drop-shadow(0 18px 24px rgba(18,48,79,.12)); }.vt-wordpress .floating-label {
      position: absolute; z-index: 2; display: flex; gap: 11px; align-items: center; padding: 13px 15px;
      border: 1px solid rgba(220,232,245,.9); border-radius: 14px; background: rgba(255,255,255,.96);
      box-shadow: 0 12px 30px rgba(16,35,61,.1); color: var(--navy);  
    }.vt-wordpress .floating-label small { display: block; color: var(--muted);  margin-top: 2px; }.vt-wordpress .float-one { top: 11%; left: 1%; }.vt-wordpress .float-two { top: 12%; right: 0; }.vt-wordpress .float-three { bottom: 18%; left: 0; }.vt-wordpress .float-four { bottom: 12%; right: 0; }.vt-wordpress .float-icon { width: 35px; height: 35px; display: grid; place-items: center; border-radius: 10px; color: white; background: var(--blue); }.vt-wordpress .float-icon.orange { background: var(--orange); }.vt-wordpress .float-icon svg { width: 19px; height: 19px; }.vt-wordpress .stats { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 14px; margin-top: 30px; max-width: 600px; }.vt-wordpress .stat { display: flex; align-items: center; gap: 11px; }.vt-wordpress .stat-icon { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 13px; color: var(--orange); background: #fff0e3; }.vt-wordpress .stat-icon svg { width: 21px; height: 21px; }.vt-wordpress .stat strong { display: block; color: var(--navy);   }.vt-wordpress .stat span { display: block;  color: var(--muted); }.vt-wordpress .grid { display: grid; gap: 16px; }.vt-wordpress .grid-4 { grid-template-columns: repeat(4, minmax(0,1fr)); }.vt-wordpress .grid-3 { grid-template-columns: repeat(3, minmax(0,1fr)); }.vt-wordpress .grid-2 { grid-template-columns: repeat(2, minmax(0,1fr)); }.vt-wordpress .card { background: rgba(255,255,255,.96); border: 1px solid var(--line); border-radius: var(--radius); padding: 23px; box-shadow: var(--shadow); }.vt-wordpress .feature-card { display: flex; gap: 15px; align-items: flex-start; min-height: 142px; }.vt-wordpress .icon-box { width: 48px; height: 48px; flex: 0 0 48px; display: grid; place-items: center; border-radius: 13px; color: white; background: var(--orange); }.vt-wordpress .icon-box.blue { background: var(--blue); }.vt-wordpress .icon-box svg { width: 24px; height: 24px; }.vt-wordpress .card p { margin-bottom: 0;   }.vt-wordpress .service-card { display: flex; gap: 15px; min-height: 184px; }.vt-wordpress .service-card .card-copy { display: flex; flex-direction: column; align-items: flex-start; }.vt-wordpress .text-link { display: inline-flex; align-items: center; gap: 6px; margin-top: auto; padding-top: 12px; color: var(--blue); text-decoration: none;   }.vt-wordpress .text-link:hover { color: var(--orange); }.vt-wordpress .process-grid { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 18px; position: relative; }.vt-wordpress .process-grid::before { content: ""; position: absolute; top: 25px; left: 8%; right: 8%; border-top: 2px dashed #c8ddf4; }.vt-wordpress .process-step { text-align: center; position: relative; z-index: 1; padding: 0 8px; }.vt-wordpress .process-step .step-num { width: 52px; height: 52px; margin: 0 auto 16px; display: grid; place-items: center; border-radius: 50%; background: var(--blue); color: white; border: 5px solid #e8f3ff;  }.vt-wordpress .process-step:nth-child(odd) .step-num { background: var(--orange); border-color: #fff0e3; }.vt-wordpress .process-step p {  margin-bottom: 0; }.vt-wordpress .deliverable-card { display: flex; align-items: flex-start; gap: 14px; padding: 20px; }.vt-wordpress .deliverable-card .icon-box { width: 42px; height: 42px; flex-basis: 42px; border-radius: 11px; }.vt-wordpress .seo-card { padding: 22px; }.vt-wordpress .industry-grid { display: grid; grid-template-columns: repeat(8, minmax(0,1fr)); gap: 12px; }.vt-wordpress .industry { text-align: center; padding: 18px 8px; border: 1px solid var(--line); border-radius: 15px; background: white; }.vt-wordpress .industry svg { width: 29px; height: 29px; color: var(--blue); margin: 0 auto 10px; }.vt-wordpress .industry:nth-child(odd) svg { color: var(--orange); }.vt-wordpress .industry span { display: block;  color: var(--navy);   }.vt-wordpress .faq-layout { display: grid; grid-template-columns: 1.1fr .9fr; gap: 24px; align-items: start; }.vt-wordpress .faq-list { display: grid; gap: 10px; }.vt-wordpress details { background: white; border: 1px solid var(--line); border-radius: 13px; padding: 0 18px; box-shadow: 0 4px 14px rgba(16,35,61,.03); }.vt-wordpress summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 17px 0; color: var(--navy);  }.vt-wordpress summary::-webkit-details-marker { display: none; }.vt-wordpress summary::after { content: "+"; color: var(--blue);   }.vt-wordpress details[open] summary::after { content: "−"; color: var(--orange); }.vt-wordpress details p { padding: 0 0 17px; margin: 0;  }.vt-wordpress .contact-panel { background: linear-gradient(145deg, #eef7ff, #fff); border: 1px solid #dcecff; border-radius: var(--radius); padding: 26px; }.vt-wordpress .contact-panel h3 {  }.vt-wordpress .contact-links { display: grid; gap: 10px; margin-top: 20px; }.vt-wordpress .contact-link { display: flex; align-items: center; gap: 12px; text-decoration: none; padding: 13px; border-radius: 12px; background: white; border: 1px solid var(--line); }.vt-wordpress .contact-link .icon-box { width: 40px; height: 40px; flex-basis: 40px; }.vt-wordpress .contact-link strong { display: block; color: var(--navy);  }.vt-wordpress .contact-link small { color: var(--muted); overflow-wrap: anywhere; }.vt-wordpress .contact-section-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 36px; align-items: center; }.vt-wordpress .contact-benefits { display: grid; gap: 13px; padding: 0; list-style: none; margin: 22px 0; }.vt-wordpress .contact-benefits li { display: flex; gap: 10px; align-items: center; color: var(--text);  }.vt-wordpress .form-card { background: white; border: 1px solid #ffdfc7; border-radius: 22px; padding: 26px; box-shadow: 0 18px 44px rgba(255,111,0,.1); }.vt-wordpress .form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }.vt-wordpress .field { display: grid; gap: 6px; }.vt-wordpress .field.full { grid-column: 1/-1; }.vt-wordpress .field label { color: var(--navy);   }.vt-wordpress .field input, .vt-wordpress .field select, .vt-wordpress .field textarea { width: 100%; min-height: 46px; padding: 12px 13px; color: var(--text); background: #fbfdff; border: 1px solid #dce5ef; border-radius: 10px; outline: none; }.vt-wordpress .field textarea { min-height: 110px; resize: vertical; }.vt-wordpress .field input:focus, .vt-wordpress .field select:focus, .vt-wordpress .field textarea:focus { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(0,123,255,.12); }.vt-wordpress .form-card .btn { width: 100%; margin-top: 15px; }.vt-wordpress .form-note { margin: 10px 0 0;  text-align: center; }.vt-wordpress .related-grid { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 12px; }.vt-wordpress .related-card { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; padding: 18px; background: white; border: 1px solid var(--line); border-radius: 15px; text-decoration: none; transition: transform .2s, border-color .2s; }.vt-wordpress .related-card:hover { transform: translateY(-3px); border-color: #9bcaff; }.vt-wordpress .related-card .icon-box { width: 40px; height: 40px; flex-basis: 40px; }.vt-wordpress .related-card strong { color: var(--navy);   }.vt-wordpress .related-card .related-service-link { color: var(--blue);   margin-top: auto; }.vt-wordpress .section-cta { margin-top: 28px; display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 25px 28px; border: 1px solid #ffd8bd; border-radius: 18px; background: #fffaf6; }.vt-wordpress .section-cta h3 { margin-bottom: 6px; }.vt-wordpress .section-cta p { margin-bottom: 0; }.vt-wordpress .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
    @media (max-width: 1050px) {.vt-wordpress .grid-4 { grid-template-columns: repeat(2,minmax(0,1fr)); }.vt-wordpress .industry-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }.vt-wordpress .related-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }.vt-wordpress .hero-grid { gap: 22px; }.vt-wordpress .floating-label { padding: 10px; }
    }
    @media (max-width: 760px) {.vt-wordpress .container { width: min(100% - 32px, var(--content)); }.vt-wordpress .section { padding: 54px 0; }.vt-wordpress .hero { padding: 42px 0 38px; }.vt-wordpress .hero-grid, .vt-wordpress .faq-layout, .vt-wordpress .contact-section-grid { grid-template-columns: 1fr; }.vt-wordpress .hero-visual { min-height: 330px; order: -1; }.vt-wordpress .hero-copy .intro {  }.vt-wordpress .stats { gap: 10px; }.vt-wordpress .stat { align-items: flex-start; gap: 7px; }.vt-wordpress .stat-icon { width: 34px; height: 34px; border-radius: 10px; }.vt-wordpress .stat strong {  }.vt-wordpress .stat span {  }.vt-wordpress .grid-3, .vt-wordpress .grid-2 { grid-template-columns: 1fr; }.vt-wordpress .process-grid { grid-template-columns: 1fr; gap: 18px; }.vt-wordpress .process-grid::before { left: 25px; right: auto; top: 24px; bottom: 24px; border-top: 0; border-left: 2px dashed #c8ddf4; }.vt-wordpress .process-step { display: grid; grid-template-columns: 52px 1fr; column-gap: 14px; text-align: left; padding: 0; }.vt-wordpress .process-step .step-num { grid-row: span 2; margin: 0; }.vt-wordpress .process-step h3 { align-self: end; }.vt-wordpress .process-step p { align-self: start; }.vt-wordpress .section-title-row { gap: 12px; }.vt-wordpress .section-number { flex-basis: 38px; width: 38px; height: 38px; }.vt-wordpress .section-title-row h2 {  }.vt-wordpress .industry-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }.vt-wordpress .contact-section-grid { gap: 24px; }.vt-wordpress .section-cta { align-items: flex-start; flex-direction: column; padding: 22px; }
    }
    @media (max-width: 480px) {.vt-wordpress .container { width: calc(100% - 28px); }.vt-wordpress h1 {  }.vt-wordpress .hero-visual { min-height: 260px; }.vt-wordpress .floating-label {  gap: 6px; padding: 8px; }.vt-wordpress .float-icon { width: 27px; height: 27px; }.vt-wordpress .float-one { top: 2%; }.vt-wordpress .float-two { top: 2%; }.vt-wordpress .float-three { bottom: 2%; }.vt-wordpress .float-four { bottom: 2%; }.vt-wordpress .stats { grid-template-columns: 1fr; margin-top: 24px; }.vt-wordpress .stat { align-items: center; }.vt-wordpress .grid-4 { grid-template-columns: 1fr; }.vt-wordpress .feature-card, .vt-wordpress .service-card { min-height: 0; padding: 19px; }.vt-wordpress .industry-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }.vt-wordpress .related-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }.vt-wordpress .form-card { padding: 19px; }.vt-wordpress .form-grid { grid-template-columns: 1fr; }.vt-wordpress .field.full { grid-column: auto; }.vt-wordpress .btn-row .btn { width: 100%; }
    }
    @media (prefers-reduced-motion: reduce) {.vt-wordpress { scroll-behavior: auto; }.vt-wordpress *, .vt-wordpress *::before, .vt-wordpress *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
    }
  
.vt-wordpress{background:#fff;color:#26384d;}.vt-wordpress h1,.vt-wordpress h2,.vt-wordpress h3{}.vt-wordpress .btn-primary{color:#000}.vt-wordpress .btn:hover{background:#007bff;color:white}.vt-wordpress .vt-enquiry-form{background:white;color:#26384d;padding:24px;border:1px solid #e3ebf4;border-radius:18px}.vt-wordpress #enquiry{padding:0}.vt-wordpress #enquiry>.container{width:100%;padding:0}.vt-wordpress #enquiry h2{}.vt-wordpress .vt-enquiry-form label{color:#10233d}.vt-wordpress .vt-enquiry-form input,.vt-wordpress .vt-enquiry-form textarea,.vt-wordpress .vt-enquiry-form select{background:#fff;color:#26384d;border:1px solid #c4d5e8}.vt-wordpress .vt-enquiry-form p{color:#61738a}.vt-wordpress .vt-form-button{background:#ff6f00;color:#000}.vt-wordpress .vt-form-button:hover{background:#007bff;color:#fff}

.vt-wordpress .vt-whatsapp-inline{background:#007bff;color:#fff;border-radius:999px;padding:12px 20px;}.vt-wordpress .vt-whatsapp-inline:hover{background:#ff6f00;color:#000}.vt-wordpress .vt-whatsapp-inline svg{width:20px;height:20px}.vt-wordpress .vt-form-button{border-radius:999px}.vt-wordpress .hero h1{}

/* Use the website typography system rather than the reference typography. */
.vt-wordpress{font-family:var(--body-font)}




.vt-wordpress p{font-weight:400;line-height:1.8}
.vt-wordpress .btn{font-family:var(--body-font);font-weight:700}

/* Fit the website typography to the service-page columns. */
.vt-wordpress .hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:start}
.vt-wordpress .hero h1{font-size:clamp(42px,4.5vw,68px);max-width:640px}
.vt-wordpress .hero-visual{align-self:center;min-width:0}
.vt-wordpress .section-title-row h2,.vt-wordpress .section-head h2,.vt-wordpress .contact-section-grid h2{font-size:clamp(32px,3vw,48px)}
.vt-wordpress .card h3,.vt-wordpress .process-step h3,.vt-wordpress .contact-panel h3,.vt-wordpress #enquiry h2{font-size:var(--heading-five);line-height:1.3}
.vt-wordpress .card,.vt-wordpress .process-step,.vt-wordpress .contact-section-grid>*{min-width:0}
.vt-wordpress .card p,.vt-wordpress .process-step p{margin-top:8px}
.vt-wordpress .hero-copy .intro{font-size:18px}
.vt-wordpress .floating-label{font-size:13px;line-height:1.4}.vt-wordpress .floating-label small{font-size:12px}
.vt-wordpress .eyebrow{font-size:13px}.vt-wordpress .check{font-size:12px}.vt-wordpress .section-number{font-size:14px}
.vt-wordpress .faq-grid summary{font-size:17px;line-height:1.5}
.vt-wordpress .btn,.vt-wordpress .vt-whatsapp-inline{font-size:16px}
.vt-wordpress .related-card strong{font-size:18px}
@media(max-width:1050px){.vt-wordpress .hero-grid{grid-template-columns:minmax(0,1fr)}.vt-wordpress .hero-visual{width:100%;max-width:570px;justify-self:center}}
@media(max-width:480px){.vt-wordpress .hero h1{font-size:42px}.vt-wordpress .hero{padding-top:32px}.vt-wordpress .floating-label{font-size:10px}.vt-wordpress .floating-label small{font-size:9px}}
/* White labels and icons on orange service-page actions. */
.vt-wordpress .btn-primary,.vt-wordpress .vt-form-button,.vt-wordpress .vt-whatsapp-inline:hover{color:#fff}
.vt-wordpress .btn-primary:active,.vt-wordpress .vt-form-button:active{color:#fff}
/* Other services: readable cards rather than narrow title tiles. */
.vt-wordpress #related-services{background:#f6f9ff}
.vt-wordpress #related-services .related-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.vt-wordpress #related-services .related-card{padding:28px;gap:16px;height:100%;min-width:0;border:1px solid #e3ebf4;box-shadow:0 6px 20px #10233d08}
.vt-wordpress #related-services .related-card h3{font-size:var(--heading-five);line-height:1.25;margin:0}
.vt-wordpress #related-services .related-card p{font-size:16px;margin:0;color:#61738a}
.vt-wordpress #related-services .related-service-icon{display:grid;place-items:center;background:#007bff;color:#fff;border-radius:12px;width:48px;height:48px;margin:0}
.vt-wordpress #related-services .related-card:nth-child(even) .related-service-icon{background:#ff6f00}
.vt-wordpress #related-services .related-service-link{display:flex;align-items:center;gap:10px;font-weight:700;font-size:15px;color:#007bff;margin-top:auto;padding-top:6px}
.vt-wordpress #related-services .related-service-link span{margin:0;color:inherit}
.vt-wordpress #related-services .related-card:hover,.vt-wordpress #related-services .related-card:focus-visible{border-color:#007bff}
.vt-wordpress .related-service-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:28px;padding-top:24px;border-top:1px solid #e3ebf4}
.vt-wordpress .related-service-footer p{margin:0;font-size:16px}
@media(max-width:991px){.vt-wordpress #related-services .related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:575px){.vt-wordpress #related-services .related-grid{grid-template-columns:minmax(0,1fr)}.vt-wordpress #related-services .related-card{padding:22px}.vt-wordpress .related-service-footer{flex-direction:column;align-items:stretch}}
@media(prefers-reduced-motion:no-preference){
.vt-wordpress #related-services .service-reveal{opacity:0;transform:translateY(20px);transition:opacity .5s ease var(--service-delay,0ms),transform .5s ease var(--service-delay,0ms),border-color .2s,box-shadow .2s}
.vt-wordpress #related-services .service-reveal.is-visible{opacity:1;transform:translateY(0)}
.vt-wordpress #related-services .related-card.is-visible:hover{transform:translateY(-5px);box-shadow:0 14px 28px #007bff14;transition-delay:0ms}
.vt-wordpress #related-services .related-service-icon,.vt-wordpress #related-services .related-service-link span{transition:transform .2s ease}
.vt-wordpress #related-services .related-card:hover .related-service-icon{transform:rotate(-5deg)}
.vt-wordpress #related-services .related-card:hover .related-service-link span{transform:translateX(4px)}
}
@media(prefers-reduced-motion:reduce){.vt-wordpress #related-services .related-card{opacity:1;transform:none;transition:none}}
/* Mobile layout and concise, touch-friendly actions. */
@media(max-width:575px){
.vt-wordpress .section{padding:40px 0}
.vt-wordpress .hero-grid{gap:24px}.vt-wordpress .hero-copy{padding:0}.vt-wordpress .hero h1{font-size:38px}
.vt-wordpress .hero-copy .intro,.vt-wordpress .card p{font-size:16px}
.vt-wordpress .grid-2,.vt-wordpress .grid-3,.vt-wordpress .grid-4{grid-template-columns:minmax(0,1fr);gap:16px}
.vt-wordpress .section-title-row{gap:10px;align-items:flex-start}.vt-wordpress .section-title-row h2,.vt-wordpress .section-head h2,.vt-wordpress .contact-section-grid h2{font-size:30px}
.vt-wordpress .btn-row{gap:10px}.vt-wordpress .btn-row .btn,.vt-wordpress .btn-row .vt-whatsapp-inline{width:auto;flex:1 1 120px;min-height:44px;padding:10px 14px;font-size:14px;text-align:center;justify-content:center}
.vt-wordpress .text-link{display:inline-flex;align-items:center;min-height:44px;font-size:15px}
.vt-wordpress .contact-section-grid,.vt-wordpress .faq-grid{grid-template-columns:minmax(0,1fr);gap:24px}
.vt-wordpress .vt-enquiry-form{padding:18px;margin-top:16px}.vt-wordpress .vt-form-grid{grid-template-columns:minmax(0,1fr);gap:16px}
.vt-wordpress .contact-link{min-width:0}.vt-wordpress .contact-link small{overflow-wrap:anywhere}
.vt-wordpress .section-cta .btn{min-height:44px;padding:10px 16px;font-size:14px}
.vt-wordpress input,.vt-wordpress textarea,.vt-wordpress select{font-size:16px}
}
/* Page-wide motion; content stays visible when scripting or motion is disabled. */
@media(prefers-reduced-motion:no-preference){
.vt-wordpress .service-reveal{opacity:0;transform:translateY(18px);transition:opacity .55s ease var(--service-delay,0ms),transform .55s ease var(--service-delay,0ms)}
.vt-wordpress .service-reveal.is-visible{opacity:1;transform:translateY(0)}
.vt-wordpress .device-art{animation:vt-service-float 7s ease-in-out infinite}
.vt-wordpress .card{transition:border-color .2s,box-shadow .2s,transform .3s}
.vt-wordpress .card.is-visible:hover{transform:translateY(-4px);border-color:#007bff;box-shadow:0 12px 28px #007bff12}
.vt-wordpress .text-link{transition:color .2s}.vt-wordpress .text-link:hover{color:#007bff}
@keyframes vt-service-float{0%,100%{translate:0 0}50%{translate:0 -8px}}
}
@media(prefers-reduced-motion:reduce){.vt-wordpress .service-reveal{opacity:1;transform:none;transition:none}.vt-wordpress .device-art{animation:none}.vt-wordpress .card{transition:none}}/* Shared detail pages retain the website fonts and the approved service palette. */
.vt-service-detail .service-breadcrumb{margin-top:18px;font-size:14px;color:var(--muted)}
.vt-service-detail .service-copy{max-width:960px;margin:auto;overflow-wrap:anywhere}
.vt-service-detail .service-copy h2{font-size:clamp(28px,3vw,40px);margin:36px 0 16px}
.vt-service-detail .service-copy h2:first-child{margin-top:0}
.vt-service-detail .service-copy h3,.vt-service-detail .card h2{font-size:var(--heading-five)}
.vt-service-detail .service-copy p,.vt-service-detail .service-copy li{color:var(--muted);line-height:1.8}
.vt-service-detail .service-copy ul,.vt-service-detail .service-copy ol{padding-left:24px;margin-bottom:24px}
.vt-service-detail .service-copy a{color:#007bff;text-decoration:underline}
.vt-service-detail .related-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.vt-service-detail .related-card{min-width:0;padding:24px;height:100%;display:flex;flex-direction:column;gap:12px}
.vt-service-detail .related-card h3{font-size:var(--heading-five)}
.vt-service-detail .related-card p{font-size:16px}
.vt-service-detail .faq-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
.vt-service-detail .faq-grid details{padding:20px;border:1px solid var(--line);border-radius:14px;background:#fff}
.vt-service-detail .faq-grid summary{cursor:pointer;color:var(--navy)}
.vt-service-detail .faq-grid details p{margin:16px 0 0}
.vt-service-detail .service-dependencies{display:flex;flex-wrap:wrap;gap:12px;padding-bottom:40px}
.vt-service-detail .hero-visual img{width:100%;height:auto}
@media(max-width:991px){.vt-service-detail .related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:575px){.vt-service-detail .related-grid{grid-template-columns:minmax(0,1fr)}.vt-service-detail .hero h1{overflow-wrap:anywhere}.vt-service-detail .service-copy table{display:block;overflow:auto}}
.vt-service-detail .hero-grid.hero-text-only{grid-template-columns:minmax(0,1fr)}.vt-service-detail .hero-text-only .intro{max-width:820px}
/* Editorial sections use the reference feature, timeline and deliverable designs. */
.vt-service-detail .service-editorial-grid{align-items:stretch}
.vt-service-detail .service-editorial-card{height:100%;min-height:0;align-items:flex-start}
.vt-service-detail .service-editorial-card .service-copy{max-width:none;width:100%;min-width:0;margin:0}
.vt-service-detail .service-editorial-card .service-copy p:last-child{margin-bottom:0}
.vt-service-detail .service-editorial-card .service-copy p{font-size:17px;line-height:1.75}
.vt-service-detail .service-process{list-style:none;padding:0;grid-template-columns:repeat(var(--process-count),minmax(0,1fr));margin:32px 0 0}
.vt-service-detail .service-process .service-copy{position:relative;color:var(--navy);font-size:17px;line-height:1.6}
.vt-service-detail .service-deliverables{list-style:none;padding:0;margin:24px 0 0}
.vt-service-detail .service-deliverables .service-copy{color:var(--navy);margin:0;font-size:17px;line-height:1.65}
.vt-service-detail .service-deliverables .deliverable-card{display:flex;gap:16px;align-items:flex-start;min-width:0}
.vt-service-detail .related-service-icon{display:grid;place-items:center;background:#007bff;color:#fff;border-radius:12px;width:48px;height:48px;flex:0 0 48px}
.vt-service-detail .related-service-icon svg{width:24px;height:24px}
.vt-service-detail .related-card:nth-child(even) .related-service-icon{background:#ff6f00}
.vt-service-detail .faq-layout{align-items:start}
.vt-service-detail .contact-panel h3{font-size:var(--heading-four)}
@media(max-width:1050px){.vt-service-detail .service-process{grid-template-columns:repeat(3,minmax(0,1fr))}.vt-service-detail .service-process::before{display:none}}
@media(max-width:760px){.vt-service-detail .service-process{grid-template-columns:minmax(0,1fr)}.vt-service-detail .service-process .process-step{grid-template-columns:52px minmax(0,1fr);align-items:center}.vt-service-detail .service-process .step-num{grid-row:auto}}
@media(max-width:575px){.vt-service-detail .service-editorial-card{padding:20px;gap:14px}.vt-service-detail .service-editorial-card .service-copy p{font-size:16px}.vt-service-detail .service-editorial-card .icon-box{width:36px;height:36px;flex-basis:36px}.vt-service-detail .service-editorial-card .icon-box svg{width:22px;height:22px}}
