/* Royal Blue CSS Kit v1.1.0 — synchronized design, interaction and accessibility layer. */

.vk-page-surface{width:100%;box-sizing:border-box;background:var(--vk-page-bg);}

/* Full-width, predictable component boxes. */
:where(
.vk-editorial-answer,.vk-editorial-nav,.vk-editorial-heading,.vk-editorial-dropcap,
.vk-editorial-checklist,.vk-editorial-notices,.vk-editorial-feature-section,
.vk-editorial-services,.vk-editorial-fleet-section,.vk-editorial-rate-section,
.vk-editorial-twocol,.vk-editorial-areas-section,.vk-editorial-destinations-section,
.vk-editorial-routes-section,.vk-editorial-booking-section,.vk-editorial-payment-section,
.vk-editorial-test-section,.vk-editorial-faq-section,.vk-editorial-suggested-section,
.vk-editorial-cta,.vk-editorial-offer
){width:100%;max-width:none;box-sizing:border-box;}

/* Soft component backgrounds are independently themeable. */
:where(.vk-editorial-feature-section,.vk-editorial-services,.vk-editorial-fleet-section,
.vk-editorial-twocol,.vk-editorial-areas-section,.vk-editorial-destinations-section,
.vk-editorial-routes-section,.vk-editorial-booking-section,.vk-editorial-payment-section,
.vk-editorial-test-section,.vk-editorial-faq-section,.vk-editorial-suggested-section){background:var(--vk-section-bg);}

/* Themeable typography and text colors. */
:where(.vk-editorial-answer,.vk-editorial-nav,.vk-editorial-heading,.vk-editorial-dropcap,
.vk-editorial-checklist,.vk-editorial-notices,.vk-editorial-feature-section,.vk-editorial-services,
.vk-editorial-fleet-section,.vk-editorial-rate-section,.vk-editorial-twocol,.vk-editorial-areas-section,
.vk-editorial-destinations-section,.vk-editorial-routes-section,.vk-editorial-booking-section,
.vk-editorial-payment-section,.vk-editorial-test-section,.vk-editorial-faq-section,
.vk-editorial-related,.vk-editorial-suggested-section){color:var(--vk-body-text);}

:where(.vk-hero h1,.vk-editorial-answer h2,.vk-editorial-nav h2,.vk-editorial-heading h2,
.vk-editorial-dropcap h2,.vk-editorial-checklist h2,.vk-editorial-notices h2,
.vk-editorial-feature-section h2,.vk-editorial-services h2,.vk-editorial-fleet-section h2,
.vk-editorial-rate-section h2,.vk-editorial-twocol h2,.vk-editorial-areas-section h2,
.vk-editorial-destinations-section h2,.vk-editorial-routes-section h2,
.vk-editorial-booking-section h2,.vk-editorial-payment-section h2,.vk-editorial-test-section h2,
.vk-editorial-faq-section h2,.vk-editorial-suggested-section h2,.vk-editorial-cta h2,
.vk-editorial-feature-item h3,.vk-editorial-services-item h3,.vk-editorial-vcard h3,
.vk-editorial-twocol-item h3,.vk-editorial-destination-card h3,.vk-editorial-step h3,
.vk-editorial-payment-card h3,.vk-editorial-test-card strong){font-family:var(--vk-font-display);}

/* Main surface shadows stay subtle; nested cards use a cleaner card shadow. */
:where(.vk-editorial-answer,.vk-editorial-nav,.vk-editorial-heading,.vk-editorial-dropcap,
.vk-editorial-checklist,.vk-editorial-notices,.vk-editorial-rate-section,.vk-editorial-related,
.vk-editorial-offer){background:var(--vk-card-bg);border-radius:var(--vk-section-radius);box-shadow:var(--vk-shadow-section);}

:where(.vk-editorial-feature-item,.vk-editorial-services-item,.vk-editorial-vcard,
.vk-editorial-twocol-item,.vk-editorial-destination-card,.vk-editorial-step,
.vk-editorial-payment-card,.vk-editorial-test-card,.vk-editorial-contact-tile,
.vk-editorial-trust-badge,.vk-editorial-suggested-card){background:var(--vk-card-bg);border-radius:var(--vk-card-radius);box-shadow:var(--vk-shadow-card);}

/* Hover only where a mouse/trackpad truly supports hover. */
:where(.vk-editorial-feature-item,.vk-editorial-services-item,.vk-editorial-vcard,
.vk-editorial-twocol-item,.vk-editorial-destination-card,.vk-editorial-step,
.vk-editorial-payment-card,.vk-editorial-test-card,.vk-editorial-contact-tile,
.vk-editorial-trust-badge,.vk-editorial-suggested-card){transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,background-color .22s ease;}
@media (hover:hover) and (pointer:fine){
:where(.vk-editorial-feature-item,.vk-editorial-services-item,.vk-editorial-vcard,
.vk-editorial-twocol-item,.vk-editorial-destination-card,.vk-editorial-step,
.vk-editorial-payment-card,.vk-editorial-test-card,.vk-editorial-contact-tile,
.vk-editorial-trust-badge,.vk-editorial-suggested-card):hover{transform:translateY(calc(-1 * var(--vk-hover-lift)));box-shadow:var(--vk-shadow-hover);}
}

/* Pricing table hover must color cells because alternating backgrounds may sit on td. */
.vk-editorial-rate-table tbody tr{transition:background-color .2s ease;}
.vk-editorial-rate-table tbody tr:hover>td{background:color-mix(in srgb,var(--vk-primary) 7%,var(--vk-card-bg));}
.vk-editorial-rate-wrap{box-shadow:var(--vk-shadow-card);border-radius:var(--vk-card-radius);}

/* Related links: readable inactive state, strong hover state. */
.vk-editorial-related-buttons a,.vk-editorial-nav-links a{
 color:var(--vk-link);background:var(--vk-card-bg);border-color:var(--vk-border);
 transition:color .2s ease,background-color .2s ease,border-color .2s ease,transform .2s ease;
}
@media (hover:hover) and (pointer:fine){
.vk-editorial-related-buttons a:hover,.vk-editorial-nav-links a:hover{
 color:var(--vk-on-dark);background:var(--vk-link-hover);border-color:var(--vk-link-hover);transform:translateY(-2px);
}}

/* CTA and hero colors. */
.vk-editorial-cta{background:var(--vk-dark-bg);}
.vk-editorial-cta h2,.vk-editorial-cta-actions .vk-call{color:var(--vk-on-dark);}
.vk-editorial-cta p{color:color-mix(in srgb,var(--vk-on-dark) 72%,transparent);}
.vk-editorial-cta-actions a,.vk-hero-actions a,.vk-editorial-vbtn,.vk-editorial-booking-submit button{border-radius:var(--vk-button-radius);}
.vk-editorial-cta-actions .vk-book,.vk-editorial-vbtn{background:var(--vk-primary);}
.vk-editorial-cta-actions .vk-book:hover,.vk-editorial-vbtn:hover{background:var(--vk-primary-hover);}
.vk-editorial-cta-actions .vk-whatsapp{background:var(--vk-success);}
.vk-hero p{color:var(--vk-hero-text);}

/* Locked compact quote form: 3 rows × 2 controls on desktop/tablet. */
.vk-editorial-booking-split{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);}
.vk-editorial-booking-card{padding:26px;background:var(--vk-card-bg);border-radius:var(--vk-card-radius);box-shadow:var(--vk-shadow-card);}
.vk-editorial-booking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;}
.vk-editorial-booking-grid>div{min-width:0;}
.vk-editorial-booking-grid label{color:var(--vk-muted-text);margin-bottom:5px;}
.vk-editorial-booking-grid input,.vk-editorial-booking-grid select{
 min-height:38px;padding:8px 10px;color:var(--vk-text);background:var(--vk-card-bg);border:1px solid var(--vk-border);border-radius:4px;
}
.vk-editorial-booking-grid input:focus-visible,.vk-editorial-booking-grid select:focus-visible{
 outline:2px solid color-mix(in srgb,var(--vk-primary) 28%,transparent);outline-offset:1px;border-color:var(--vk-primary);
}
.vk-editorial-booking-submit{align-items:stretch;}
.vk-editorial-booking-submit button{min-height:38px;background:var(--vk-primary);color:var(--vk-on-dark);}
.vk-editorial-booking-submit button:hover{background:var(--vk-primary-hover);}
@media(max-width:640px){
 .vk-editorial-booking-split,.vk-editorial-booking-grid{grid-template-columns:1fr;}
 .vk-editorial-booking-submit button{width:100%;}
}

/* Payment icons: inline SVG, no emoji dependency. */
.vk-editorial-payment-icon{width:36px;height:36px;margin:0 auto 10px;display:grid;place-items:center;color:var(--vk-primary);}
.vk-editorial-payment-icon svg{width:24px;height:24px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}

/* Feature/contact/trust icons can use inline SVG consistently. */
:where(.vk-editorial-feature-icon,.vk-editorial-contact-icon,.vk-editorial-trust-icon) svg{width:1.35em;height:1.35em;display:inline-block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}

/* FAQ breathing room. */
.vk-editorial-faq-2col summary{padding:2px 4px;}
.vk-editorial-faq-2col details p{padding:0 4px 4px;line-height:1.7;}

/* Smooth horizontal swipe for content that intentionally stays wide. */
:where(.vk-editorial-rate-wrap,.vk-thumbs){overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;}

/* Respect users who request less motion. */
@media (prefers-reduced-motion:reduce){
 *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;}
}


/* ============================================================
   ROYAL BLUE VAN RENTAL DUBAI — PREMIUM VISUAL SYSTEM v1.1.0
   Visual override only: existing .vk-* markup and behavior remain compatible.
   ============================================================ */
:root{
 --vk-primary:#1261D8;--vk-primary-hover:#0B4FB7;--vk-secondary:#102A4C;
 --vk-silver:#B8C7D9;--vk-accent:#3D8BFF;--vk-link:#1261D8;--vk-link-hover:#0B4FB7;
 --vk-text:#071A33;--vk-body-text:#34445A;--vk-muted-text:#607086;--vk-border:#DCE5EF;
 --vk-card-bg:#FFFFFF;--vk-section-bg:#F6F9FC;--vk-page-bg:#F3F7FC;--vk-dark-bg:#071A33;
 --vk-on-dark:#FFFFFF;--vk-hero-text:#DCEBFF;--vk-success:#16A66A;--vk-warning:#F59E0B;
 --vk-shadow-section:0 8px 30px rgba(7,26,51,.055);--vk-shadow-card:0 10px 28px rgba(7,26,51,.08);
 --vk-shadow-hover:0 18px 42px rgba(7,26,51,.14);--vk-hover-lift:4px;
 --vk-section-radius:18px;--vk-card-radius:14px;--vk-button-radius:9px;
 --vk-font-display:'Inter','Segoe UI',Arial,sans-serif;--vk-font-body:'Inter','Segoe UI',Arial,sans-serif;
}
.vk-page-surface{background:linear-gradient(180deg,#fff 0,#f7faff 44%,#fff 100%);color:var(--vk-body-text)}
:where(.vk-editorial-answer,.vk-editorial-nav,.vk-editorial-heading,.vk-editorial-dropcap,.vk-editorial-checklist,.vk-editorial-notices,.vk-editorial-rate-section,.vk-editorial-related,.vk-editorial-offer){border:1px solid var(--vk-border);box-shadow:var(--vk-shadow-section)}
:where(.vk-editorial-feature-section,.vk-editorial-services,.vk-editorial-fleet-section,.vk-editorial-twocol,.vk-editorial-areas-section,.vk-editorial-destinations-section,.vk-editorial-routes-section,.vk-editorial-booking-section,.vk-editorial-payment-section,.vk-editorial-test-section,.vk-editorial-faq-section,.vk-editorial-suggested-section){border-radius:var(--vk-section-radius);padding-top:clamp(30px,4vw,48px);padding-bottom:clamp(30px,4vw,48px)}
:where(.vk-editorial-heading h2,.vk-editorial-answer h2,.vk-editorial-nav h2,.vk-editorial-dropcap h2,.vk-editorial-checklist h2,.vk-editorial-notices h2,.vk-editorial-feature-section h2,.vk-editorial-services h2,.vk-editorial-fleet-section h2,.vk-editorial-rate-section h2,.vk-editorial-twocol h2,.vk-editorial-areas-section h2,.vk-editorial-destinations-section h2,.vk-editorial-routes-section h2,.vk-editorial-booking-section h2,.vk-editorial-payment-section h2,.vk-editorial-test-section h2,.vk-editorial-faq-section h2,.vk-editorial-suggested-section h2){font-style:normal!important;font-weight:800!important;letter-spacing:-.035em;color:var(--vk-text)}
.vk-eyebrow,:where(.vk-editorial-answer,.vk-editorial-nav,.vk-editorial-heading,.vk-editorial-dropcap,.vk-editorial-feature-section,.vk-editorial-services,.vk-editorial-fleet-section,.vk-editorial-rate-section,.vk-editorial-twocol,.vk-editorial-areas-section,.vk-editorial-destinations-section,.vk-editorial-routes-section,.vk-editorial-booking-section,.vk-editorial-payment-section,.vk-editorial-test-section,.vk-editorial-faq-section,.vk-editorial-suggested-section) .vk-eyebrow{font-family:var(--vk-font-body)!important;font-style:normal!important;font-weight:800!important;letter-spacing:1.7px!important;color:var(--vk-primary)!important}
/* Hero: executive van-rental identity; same markup. */
.vk-hero{min-height:480px;grid-template-columns:minmax(0,55%) minmax(0,45%);border:1px solid #d8e6f6;border-radius:22px;background:radial-gradient(circle at 78% 25%,rgba(72,154,255,.24),transparent 32%),linear-gradient(112deg,#f9fcff 0%,#edf6ff 54%,#d9ecff 100%);box-shadow:0 20px 60px rgba(7,26,51,.11)}
.vk-hero:before{content:'';position:absolute;inset:auto -8% -45% 42%;height:90%;background:radial-gradient(ellipse,rgba(18,97,216,.16),transparent 67%);pointer-events:none}
.vk-hero-waves{opacity:.12}.vk-hero-copy{padding:clamp(36px,6vw,70px)}
.vk-hero .vk-eyebrow{display:inline-flex!important;align-items:center;gap:7px;background:#fff;border:1px solid #d9e8f8;border-radius:999px;padding:7px 11px;margin-bottom:18px;box-shadow:0 5px 16px rgba(7,26,51,.05)}
.vk-hero h1{font-family:var(--vk-font-display);font-style:normal;font-weight:850;font-size:clamp(36px,5.3vw,64px);line-height:1.02;letter-spacing:-.055em;color:var(--vk-text);margin-bottom:20px}
.vk-hero p{font-size:15.5px;line-height:1.75;color:#4f627a;max-width:650px}.vk-hero-actions{gap:12px}
.vk-hero-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 22px;border-radius:var(--vk-button-radius);font-size:13px;box-shadow:none;transition:.2s ease}
.vk-hero-actions .vk-whatsapp{background:var(--vk-primary);color:#fff;border:1px solid var(--vk-primary);box-shadow:0 9px 22px rgba(18,97,216,.2)}
.vk-hero-actions .vk-call,.vk-hero-actions .vk-link-secondary{background:#fff;color:var(--vk-primary);border:1px solid #bcd3ee}
.vk-hero-card{margin:34px 34px 34px 0;border-radius:22px;border:1px solid rgba(255,255,255,.8);background:linear-gradient(145deg,#fff,#e8f3ff);box-shadow:0 24px 55px rgba(7,26,51,.18);transform:none;overflow:hidden}
.vk-hero-card img{height:350px;object-fit:cover}.vk-hero-card:after{content:'ROYAL BLUE • VAN RENTAL DUBAI';position:absolute;left:16px;bottom:16px;line-height:1;background:rgba(7,26,51,.88);color:#fff;padding:9px 12px;border-radius:8px;font:700 10px/1 var(--vk-font-body);letter-spacing:1px}
/* Navigation and chips */
.vk-editorial-nav{border-left:4px solid var(--vk-primary)}.vk-editorial-nav-links a,.vk-editorial-related-buttons a{border-radius:8px!important;color:var(--vk-primary)!important;background:#f7fbff!important;border:1px solid #cfe0f3!important;font-weight:700!important}.vk-editorial-nav-links a:hover,.vk-editorial-related-buttons a:hover{background:var(--vk-primary)!important;color:#fff!important;border-color:var(--vk-primary)!important}
/* Quick answer / overview */
.vk-editorial-answer{background:linear-gradient(135deg,#fff,#f3f8ff);border-top:3px solid var(--vk-primary)}.vk-editorial-answer-quote{font-family:var(--vk-font-body)!important;font-style:normal!important;color:var(--vk-body-text)!important}
/* Cards: clean automotive/editorial cards */
:where(.vk-editorial-feature-item,.vk-editorial-services-item,.vk-editorial-vcard,.vk-editorial-twocol-item,.vk-editorial-destination-card,.vk-editorial-step,.vk-editorial-payment-card,.vk-editorial-test-card,.vk-editorial-contact-tile,.vk-editorial-trust-badge,.vk-editorial-suggested-card){border:1px solid var(--vk-border);box-shadow:0 7px 22px rgba(7,26,51,.065);overflow:hidden}
:where(.vk-editorial-feature-item,.vk-editorial-services-item,.vk-editorial-vcard,.vk-editorial-destination-card,.vk-editorial-suggested-card){position:relative}
:where(.vk-editorial-feature-item,.vk-editorial-services-item,.vk-editorial-vcard,.vk-editorial-destination-card,.vk-editorial-suggested-card):before{content:'';position:absolute;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,var(--vk-primary),#67a9ff);opacity:.9}
:where(.vk-editorial-feature-item h3,.vk-editorial-services-item h3,.vk-editorial-vcard h3,.vk-editorial-twocol-item h3,.vk-editorial-destination-card h3,.vk-editorial-step h3,.vk-editorial-payment-card h3){font-style:normal!important;font-weight:800!important;letter-spacing:-.02em!important;color:var(--vk-text)!important}
:where(.vk-editorial-feature-icon,.vk-editorial-contact-icon,.vk-editorial-trust-icon,.vk-editorial-payment-icon){background:#eaf3ff;color:var(--vk-primary);border-radius:10px;padding:8px}
/* Fleet cards */
.vk-editorial-vcard{border-radius:16px!important;background:#fff}.vk-editorial-vcard img{background:linear-gradient(180deg,#f7fbff,#eef5fc);transition:transform .3s ease}.vk-editorial-vcard:hover img{transform:scale(1.025)}
.vk-editorial-vcard .vk-editorial-vbtn,.vk-editorial-vbtn{background:var(--vk-primary)!important;color:#fff!important;border:1px solid var(--vk-primary)!important;border-radius:8px!important;font-weight:800!important;box-shadow:0 8px 18px rgba(18,97,216,.16)}
.vk-editorial-vbtn:hover{background:var(--vk-primary-hover)!important;border-color:var(--vk-primary-hover)!important}
/* Pricing */
.vk-editorial-rate-section{background:linear-gradient(135deg,#f1f7ff,#e8f3ff)!important;border-color:#cfdef0}.vk-editorial-rate-wrap{border:1px solid #cadcf0;overflow:auto;background:#fff}.vk-editorial-rate-table{border-collapse:separate!important;border-spacing:0!important;background:#fff}.vk-editorial-rate-table thead th{background:var(--vk-dark-bg)!important;color:#fff!important;font-weight:800!important;letter-spacing:.01em;border-color:#244563!important}.vk-editorial-rate-table td{border-color:#d9e5f2!important}.vk-editorial-rate-table tbody tr:nth-child(even)>td{background:#f8fbff!important}.vk-editorial-rate-table tbody td:last-child{font-weight:850;color:var(--vk-primary)}.vk-editorial-rate-table tbody tr:hover>td{background:#edf5ff!important}
/* Gallery */
.vk-gallery-main img,.vk-thumbs img{border-radius:14px!important}.vk-gallery-main{border-radius:18px!important;overflow:hidden;box-shadow:var(--vk-shadow-card)}.vk-thumb{border-radius:10px!important;overflow:hidden;border:2px solid transparent!important}.vk-thumb:hover,.vk-thumb.is-active{border-color:var(--vk-primary)!important}
/* Booking */
.vk-editorial-booking-section{background:linear-gradient(145deg,#f7fbff,#edf5ff)!important}.vk-editorial-booking-card{border:1px solid #d4e3f3;box-shadow:0 16px 40px rgba(7,26,51,.09)}.vk-editorial-booking-grid input,.vk-editorial-booking-grid select{min-height:44px;border-radius:8px;background:#fff}.vk-editorial-booking-submit button{min-height:44px;border:0;border-radius:8px;font-weight:800;box-shadow:0 8px 20px rgba(18,97,216,.18)}
/* Process */
.vk-editorial-step{border-top:3px solid #dbeaff}.vk-editorial-step:hover{border-top-color:var(--vk-primary)}
/* Reviews */
.vk-editorial-test-card{background:#fff}.vk-editorial-test-card:before{content:'★★★★★';display:block;color:#f5a623;letter-spacing:2px;font-size:12px;margin-bottom:10px}
/* FAQ */
.vk-editorial-faq-2col details{background:#fff;border:1px solid var(--vk-border)!important;border-radius:10px!important;padding:0 14px!important;margin-bottom:10px;box-shadow:0 4px 14px rgba(7,26,51,.04)}.vk-editorial-faq-2col summary{padding:14px 0!important;color:var(--vk-text);font-weight:750;cursor:pointer}.vk-editorial-faq-2col details[open]{border-color:#b8d3f1!important;box-shadow:0 8px 22px rgba(18,97,216,.08)}
/* CTA: unmistakable Royal Blue close */
.vk-editorial-cta{position:relative;overflow:hidden;border-radius:18px!important;background:linear-gradient(120deg,#071A33 0%,#0a3266 55%,#1261D8 120%)!important;box-shadow:0 18px 44px rgba(7,26,51,.18)}.vk-editorial-cta:after{content:'';position:absolute;width:280px;height:280px;border-radius:50%;right:-90px;top:-150px;background:rgba(255,255,255,.08)}.vk-editorial-cta h2{font-family:var(--vk-font-display)!important;font-style:normal!important;font-weight:850!important;letter-spacing:-.035em}.vk-editorial-cta-actions .vk-book{background:#fff!important;color:var(--vk-primary)!important}.vk-editorial-cta-actions .vk-whatsapp{background:#16A66A!important;color:#fff!important}.vk-editorial-cta-actions .vk-call{border:1px solid rgba(255,255,255,.4)!important}
/* Focus / accessibility */
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid rgba(18,97,216,.28)!important;outline-offset:3px}
@media(max-width:768px){.vk-hero{grid-template-columns:1fr;border-radius:16px}.vk-hero-copy{padding:34px 24px 20px}.vk-hero h1{font-size:clamp(34px,11vw,48px)}.vk-hero-card{margin:0 24px 28px}.vk-hero-card img{height:250px}.vk-hero-card:after{font-size:9px}.vk-editorial-rate-section{padding-left:14px!important;padding-right:14px!important}}
@media(max-width:480px){.vk-hero-actions{display:grid;grid-template-columns:1fr}.vk-hero-actions a{width:100%;box-sizing:border-box}.vk-hero-card{margin-left:16px;margin-right:16px}.vk-hero-copy{padding-left:20px;padding-right:20px}}
