/* Brand layer over the original Template/index.html stylesheet. */
:root {
    --main-h: 26.118; --main-s: 100%; --main-l: 50%;
    --main-two-h: 211.059; --main-two-s: 100%; --main-two-l: 50%;
    --vt-orange: #ff6f00; --vt-blue: #007bff;
}
.vt-site { color: #ddd; }
.vt-site p, .vt-site address { line-height: 1.8; }
.vt-site address { font-style: normal; }
.vt-site a { overflow-wrap: anywhere; }
.vt-site :focus-visible { outline: 3px solid #ff6f00; outline-offset: 5px; }
.vt-skip-link { position: fixed; top: -100px; left: 16px; z-index: 1000; background: #fff; color: #000; padding: 14px 20px; }
.vt-skip-link:focus { top: 12px; }
.vt-header { position: relative; padding: 18px 0; background: #090909; border-bottom: 1px solid #303030; z-index: 10; }
.vt-brand { display: inline-block; flex-shrink: 0; }
.vt-brand img { width: 200px; height: 80px; object-fit: contain; }
.vt-navigation { display: flex; gap: 40px; align-items: center; }
.vt-nav-list { display: flex; flex-wrap: wrap; gap: 28px; margin: 0; padding: 0; list-style: none; }
.vt-nav-list a { color: #fff; font-weight: 600; padding: 8px 0; display: inline-block; }
.vt-nav-list a:hover, .vt-nav-list a[aria-current] { color: #ff6f00; }
.vt-nav-list a[aria-current] { text-decoration: underline; text-underline-offset: 8px; }
.vt-menu-toggle { display: none; }
.vt-button { color: #fff; background: #ff6f00; font-weight: 700; display: inline-flex; align-items: center; gap: 20px; padding: 18px 28px; border: 1px solid #ff6f00; }
.vt-button:hover { background: #fff; color: #000; border-color: #fff; }
.vt-home-hero { padding: 100px 0 35px; }
.vt-hero-gradient { position: absolute; top: 0; right: 0; width: min(75%, 920px); height: 100%; object-fit: cover; opacity: .65; filter: hue-rotate(140deg); pointer-events: none; }
.vt-hero-pattern { position: absolute; top: 0; right: 0; width: 50%; height: auto; opacity: .3; pointer-events: none; }
.vt-hero-top { display: grid; grid-template-columns: 1.5fr 1fr; gap: 60px; align-items: center; }
.vt-hero-title { font-size: clamp(76px, 10vw, 170px); letter-spacing: -.055em; line-height: .95; margin: 20px 0 55px; }
.vt-blue { color: #007bff; }
.vt-hero-copy { max-width: 450px; }
.vt-lead { font-size: clamp(18px, 1.6vw, 24px); color: #eee; margin-bottom: 28px; }
.vt-eyebrow { color: #ff6f00; font-size: 14px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; margin-bottom: 22px; }
.vt-hero-bottom { display: flex; justify-content: space-between; gap: 20px; flex-wrap: wrap; border-top: 1px solid #666; padding-top: 24px; }
.vt-text-link { color: #ff8d33; font-weight: 600; text-decoration: underline; text-underline-offset: 6px; }
.vt-text-link:hover { color: #fff; }
.vt-section-divider { border-top: 1px solid #333; }
.vt-section-heading { margin-bottom: 60px; }
.vt-service-card { padding: 38px 24px; height: 100%; display: flex; flex-direction: column; align-items: center; }
.vt-service-card img { object-fit: contain; margin-bottom: 35px; }
.vt-service-card h3 { font-size: 25px; }
.vt-service-card p { margin: 20px 0 26px; }
.vt-service-card a { margin-top: auto; }
.vt-service-note { margin-top: 36px; }
.vt-process { background: linear-gradient(90deg, #091b2e, #111); }
.vt-process-list { list-style: none; padding: 0; margin: 0; }
.vt-process-list li { display: flex; gap: 28px; border-bottom: 1px solid #445; padding: 24px 0; }
.vt-process-list li:first-child { padding-top: 0; }
.vt-process-list span { color: #ff6f00; font-size: 30px; font-weight: 700; flex-shrink: 0; white-space: nowrap; }
.vt-process-list h3 { font-size: 25px; color: #fff; }
.vt-contact-cta { padding: 85px 0; border-bottom: 1px solid #333; }
.vt-page-hero { padding: 75px 0; border-bottom: 1px solid #333; background: radial-gradient(ellipse at right top, #092745, #0b0b0b 70%); }
.vt-page-hero h1 { max-width: 950px; margin: 28px 0; }
.vt-page-hero .vt-lead { max-width: 780px; margin: 0; }
.vt-breadcrumbs ol { display: flex; gap: 14px; list-style: none; padding: 0; margin: 0; flex-wrap: wrap; }
.vt-breadcrumbs li + li::before { content: '/'; margin-right: 14px; color: #aaa; }
.vt-breadcrumbs a { color: #ff8d33; }
.vt-info-card { padding: 36px; background: #ffffff0f; border: 1px solid #444; border-radius: 18px; }
.vt-info-card a { color: #ff8d33; }
.vt-info-card h2 { margin-bottom: 28px; }
.vt-info-card dt { color: #fff; margin-top: 22px; }
.vt-info-card dd { margin-top: 8px; }
.vt-contact-actions { display: flex; gap: 24px; align-items: center; flex-wrap: wrap; margin: 28px 0 40px; }
.vt-footer { padding-top: 85px; }
.vt-contact-link { display: block; font-size: clamp(18px, 2vw, 28px); color: #fff; margin-top: 14px; }
.vt-contact-link:hover { color: #ff8d33; }
.vt-social-links { display: flex; list-style: none; flex-wrap: wrap; gap: 10px 18px; padding: 0; margin: 28px 0 0; }
.vt-social-links a { color: #fff; text-decoration: underline; text-underline-offset: 5px; font-size: 14px; }
.vt-social-links a:hover { color: #ff8d33; }
.vt-footer-navigation .vt-nav-list { flex-direction: column; gap: 8px; }
.vt-copyright { margin: 50px 0 0; padding: 25px 0; border-top: 1px solid #333; text-align: center; }
.vt-footer-wordmark { font-size: clamp(32px, 8vw, 130px); font-weight: 800; line-height: 1.2 !important; letter-spacing: -.05em; color: #ffffff26; margin: 20px 0 0; }
.vt-page-hero h1, .vt-page-hero p, .vt-breadcrumbs li { overflow-wrap: anywhere; }
.vt-breadcrumbs li { max-width: 100%; }
.vt-preview-notice { background: #092745; color: white; padding: 20px; text-align: center; }
.vt-rich-content { max-width: 950px; margin-inline: auto; font-size: 18px; overflow-wrap: anywhere; }
.vt-rich-content h2, .vt-rich-content h3, .vt-rich-content h4 { color: white; margin: 40px 0 20px; }
.vt-rich-content a { color: #ff8d33; text-decoration: underline; }
.vt-rich-content img { max-width: 100%; height: auto; }
.vt-rich-content table { display: block; max-width: 100%; overflow: auto; border-collapse: collapse; }
.vt-rich-content td, .vt-rich-content th { padding: 14px; border: 1px solid #777; }
.vt-rich-content ul, .vt-rich-content ol { padding-left: 28px; list-style: revert; margin-bottom: 24px; }
.vt-custom-frame { display: block; width: 100%; min-height: 240px; border: 0; }
.vt-content-heading { max-width: 850px; }
.vt-content-heading .vt-lead { margin: 24px 0 0; }
.vt-detail-card { height: 100%; padding: 36px; border: 1px solid #444; border-radius: 18px; background: #ffffff06; }
.vt-detail-card h3 { margin: 24px 0 18px; }
.vt-detail-card p { margin: 0; }
.vt-detail-number { display: inline-block; font-size: 20px; font-weight: 700; color: #ff8d33; }
.vt-faq { border-bottom: 1px solid #555; padding: 24px 0; }
.vt-faq:first-child { border-top: 1px solid #555; }
.vt-faq summary { color: #fff; font-size: 21px; font-weight: 600; cursor: pointer; line-height: 1.5; }
.vt-faq summary::marker { color: #ff8d33; }
.vt-faq p { margin: 20px 0 0; }
.vt-faq[open] summary { color: #ff8d33; }
@media (max-width: 991px) {
    .vt-header > .container { flex-wrap: wrap; }
    .vt-navigation { width: 100%; justify-content: space-between; gap: 24px; padding: 16px 0; }
    .vt-menu-toggle { display: inline-flex; gap: 12px; align-items: center; background: transparent; color: #fff; border: 1px solid #777; border-radius: 8px; padding: 10px 16px; }
    .vt-site.vt-js .vt-navigation:not(.is-open) { display: none; }
    .vt-hero-top { grid-template-columns: 1fr 1fr; gap: 30px; }
    .vt-hero-title { font-size: clamp(76px, 12vw, 120px); }
    .vt-home-hero { padding-top: 65px; }
}
@media (max-width: 575px) {
    .vt-brand img { width: 160px; height: 64px; }
    .vt-navigation { flex-direction: column; align-items: stretch; }
    .vt-nav-list { flex-direction: column; gap: 4px; }
    .vt-nav-list a { width: 100%; padding: 12px 0; }
    .vt-hero-top { grid-template-columns: 1fr; gap: 0; }
    .vt-hero-title { font-size: clamp(76px, 22vw, 110px); margin-bottom: 35px; }
    .vt-hero-copy { padding-bottom: 35px; }
    .vt-page-hero { padding: 45px 0; }
    .vt-section-heading { margin-bottom: 35px; }
    .vt-info-card { padding: 26px; }
    .vt-process-list li { gap: 18px; }
    .vt-process-list h3 { font-size: 22px; }
    .vt-footer { padding-top: 55px; }
}
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

.vt-featured-image img{max-width:100%;height:auto}.vt-nav-dropdown{position:relative}.vt-nav-dropdown summary{cursor:pointer;padding:10px}.vt-nav-dropdown ul{list-style:none;padding:16px;background:#171717;min-width:180px}.vt-navigation .vt-nav-dropdown>ul{position:absolute;z-index:20}.vt-nav-dropdown a{display:block;padding:8px;overflow-wrap:anywhere}@media(max-width:991px){.vt-navigation .vt-nav-dropdown>ul{position:static}}

.vt-social-links svg{flex-shrink:0;margin-right:6px;vertical-align:middle}.vt-whatsapp-inline,.vt-whatsapp-float{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#087b42;color:#fff;border:2px solid #fff;border-radius:32px;padding:12px 18px;font-weight:700;text-decoration:none;max-width:100%;overflow-wrap:anywhere}.vt-whatsapp-inline:hover,.vt-whatsapp-float:hover{background:#055b31;color:#fff}.vt-whatsapp-float{position:fixed;bottom:calc(18px + env(safe-area-inset-bottom));z-index:30;box-shadow:0 4px 20px #0006}.vt-whatsapp-right{right:16px}.vt-whatsapp-left{left:16px}.vt-whatsapp-section{padding:24px 0}.vt-contact-social{margin-top:24px}.vt-whatsapp-float[hidden]{display:none}@media(max-width:575px){.vt-whatsapp-float{padding:12px}.vt-whatsapp-float span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}}

.vt-enquiry-form{max-width:900px;margin:28px 0;display:grid;gap:16px}.vt-enquiry-form label{display:block;margin-bottom:8px;color:#fff}.vt-enquiry-form input,.vt-enquiry-form select,.vt-enquiry-form textarea{width:100%;min-width:0;padding:12px;border:1px solid #777;border-radius:8px;background:#161616;color:#fff;font:inherit}.vt-form-grid,.vt-blog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.vt-blog-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:32px}.vt-blog-image{width:100%;aspect-ratio:16/9;object-fit:cover;margin-bottom:20px}.vt-blog-term{display:inline-block;border:1px solid #777;padding:6px 12px;margin:4px;border-radius:18px}.vt-form-button{justify-self:start;border:0;border-radius:8px;padding:14px 24px;background:#ff6f00;color:#fff;font:inherit;font-weight:700}.vt-form-errors,.vt-form-success{border:1px solid #ff6f00;padding:20px;border-radius:8px}.vt-honeypot{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.vt-pagination{margin-top:30px}.vt-pagination svg{width:20px;height:20px}.vt-pagination nav>div{display:flex;flex-wrap:wrap;gap:12px}.vt-pagination a,.vt-pagination span{overflow-wrap:anywhere}.vt-info-card,.vt-rich-content{overflow-wrap:anywhere}@media(max-width:991px){.vt-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.vt-form-grid,.vt-blog-grid{grid-template-columns:1fr}}

.vt-landing-section{margin-top:48px}.vt-preserve-text{white-space:pre-wrap;overflow-wrap:anywhere}

.vt-landing-section h2{color:#fff}
.vt-fixed-content{overflow-wrap:anywhere}

/* Template-style motion: content remains readable without JavaScript. */
.vt-template-hero-image{width:min(100%,550px);margin:28px auto 0}
.vt-template-hero-image img{display:block;width:100%;height:auto}
.vt-template-about-image{margin:40px 0 0;border-radius:16px;overflow:hidden}
.vt-template-about-image img{display:block;width:100%;height:auto;max-height:580px;object-fit:cover}
.vt-template-marquee{overflow:hidden;margin-bottom:40px;color:var(--vt-orange);font-size:clamp(32px,6vw,86px);font-weight:800;line-height:1.2;text-transform:uppercase}
.vt-template-marquee>div{display:flex;width:max-content}
.vt-template-marquee span{flex-shrink:0}
.vt-motion-control{display:block;margin:0 0 16px auto;padding:8px 14px;background:transparent;border:1px solid #777;border-radius:20px;color:#fff;font:inherit}
.vt-motion-control[hidden]{display:none}
.vt-site:not(.vt-effects-ready) *, .vt-site:not(.vt-effects-ready) *::before, .vt-site:not(.vt-effects-ready) *::after{animation:none!important}
.vt-motion-paused *, .vt-motion-paused *::before, .vt-motion-paused *::after{animation-play-state:paused!important;transition:none!important}
@media (prefers-reduced-motion:no-preference){
    .vt-template-marquee>div{animation:vt-marquee 24s linear infinite}
    .vt-template-marquee:hover>div{animation-play-state:paused}
    .vt-button{position:relative;isolation:isolate;overflow:hidden}
    .vt-button::before{content:"";position:absolute;left:var(--pointer-x,50%);top:var(--pointer-y,50%);width:420px;height:420px;background:var(--vt-blue);border-radius:50%;transform:translate(-50%,-50%) scale(0);transition:transform .65s ease;z-index:-1}
    .vt-button:hover::before,.vt-button:focus-visible::before{transform:translate(-50%,-50%) scale(1)}
    .vt-button:hover,.vt-button:focus-visible{color:#fff}
    .vt-hero-gradient{animation:vt-gradient-drift 12s ease-in-out infinite alternate}
    .vt-button span{display:inline-block;transition:transform .3s ease}
    .vt-button:hover span,.vt-button:focus-visible span{transform:translate(3px,-3px)}
    .vt-service-card img{transition:transform .4s ease}
    .vt-service-card:hover img,.vt-service-card:focus-within img{animation:vt-icon-bounce .65s ease}
    .vt-featured-image{overflow:hidden}
    .vt-featured-image img{transition:transform .7s ease}
    .vt-featured-image:hover img{transform:scale(1.025)}
}
@keyframes vt-gradient-drift{from{transform:translate(0,0) scale(1)}to{transform:translate(18px,-12px) scale(1.04)}}
@keyframes vt-marquee{to{transform:translateX(-50%)}}
@keyframes vt-icon-bounce{0%,100%{transform:translateY(0)}40%{transform:translateY(-9px)}70%{transform:translateY(-3px)}}
@media (prefers-reduced-motion:reduce){
    .vt-site *, .vt-site *::before, .vt-site *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

.vt-field-error{color:#ffb8b8;font-size:14px;margin:4px 0}.vt-wordpress .vt-field-error{color:#b02020}.vt-enquiry-form [aria-invalid="true"]{border-color:#b02020}.vt-ajax-status:empty{display:none}.vt-form-button:disabled{opacity:.65;cursor:wait}
