/* The supplied artwork is preserved; this viewport isolates its original emblem. */
.dv-brand-emblem{display:block;width:56px;height:56px;flex:0 0 56px;border-radius:50%;background:#f7e3c8 url('des-vantora-logo-4.png') 53% 10%/202% auto no-repeat;box-shadow:0 0 0 1px rgba(196,160,110,.4),0 3px 9px rgba(0,0,0,.12)}
a.dv-brand-lockup{display:flex!important;flex-direction:row!important;align-items:center!important;gap:12px!important;flex-shrink:0;text-decoration:none}
.dv-brand-copy{display:flex;flex-direction:column;gap:5px;min-width:0}
.dv-brand-emblem--footer{width:76px;height:76px;margin-bottom:20px}
.dv-brand-lockup .family-brand__group,.dv-brand-lockup .family-brand__unit{display:block}
body[data-dv-site] nav a{white-space:nowrap}
@media(min-width:900px) and (max-width:1350px){body[data-dv-site="group"] a[data-rid="r2"]{display:none!important}body[data-dv-site="group"] nav{gap:22px!important}}
@media(max-width:1199.98px){a.dv-brand-lockup{gap:9px!important}.dv-brand-lockup .dv-brand-emblem{width:46px;height:46px;flex-basis:46px}.dv-brand-copy>span:first-child{font-size:17px!important;letter-spacing:.035em!important}}
@media(max-width:575.98px){.dv-brand-lockup .dv-brand-emblem{width:42px;height:42px;flex-basis:42px}.dv-brand-copy>span:first-child{font-size:15px!important}.dv-brand-copy>span+span{font-size:8px!important;letter-spacing:.12em!important}.dv-brand-copy{gap:4px}.dv-brand-emblem--footer{width:68px;height:68px}}
:root{
  --dv-green:#0C3619;
  --dv-green-2:#1E5A32;
  --dv-orange:#EE6518;
  --dv-cream:#F7E3C8;
  --dv-cream-soft:#FBF3E8;
  --dv-ink:#151515;
}
.dv-group-switcher{position:fixed;left:18px;bottom:18px;z-index:9999;font-family:Montserrat,Arial,sans-serif}
.dv-group-switcher__button{min-height:44px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:var(--dv-green);color:#fff;padding:10px 15px;box-shadow:0 12px 28px rgba(0,0,0,.2);display:flex;align-items:center;gap:9px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.dv-group-switcher__dot{width:8px;height:8px;border-radius:50%;background:var(--dv-orange);flex:0 0 auto}
.dv-group-switcher__panel{position:absolute;left:0;bottom:54px;width:min(310px,calc(100vw - 36px));background:#fff;border:1px solid rgba(12,54,25,.14);box-shadow:0 24px 54px rgba(0,0,0,.24);border-radius:14px;overflow:hidden;opacity:0;visibility:hidden;transform:translateY(8px);transition:.18s ease}
.dv-group-switcher.is-open .dv-group-switcher__panel{opacity:1;visibility:visible;transform:none}
.dv-group-switcher__brand{display:block;background:var(--dv-cream-soft);padding:12px;border-bottom:1px solid rgba(12,54,25,.1)}
.dv-group-switcher__brand img{display:block;width:100%;max-height:122px;object-fit:contain;border-radius:8px}
.dv-group-switcher__label{padding:13px 16px 8px;font-size:10px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--dv-orange)}
.dv-group-switcher__links{padding:0 8px 10px}
.dv-group-switcher__links a{display:flex!important;align-items:center;justify-content:space-between;gap:14px;padding:11px 10px!important;border-radius:8px!important;color:var(--dv-green)!important;font-size:12px!important;font-weight:700!important;letter-spacing:0!important;text-transform:none!important;text-decoration:none!important;border:0!important;background:transparent!important}
.dv-group-switcher__links a:hover,.dv-group-switcher__links a:focus-visible{background:rgba(12,54,25,.07)!important;color:var(--dv-orange)!important}
.dv-group-switcher__links small{font-size:10px;color:#777;font-weight:500}
.dv-ui-toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,16px);z-index:10050;background:#151515;color:#fff;padding:13px 18px;border-radius:10px;box-shadow:0 16px 40px rgba(0,0,0,.3);font:600 12px/1.45 Montserrat,Arial,sans-serif;opacity:0;pointer-events:none;transition:.2s ease;max-width:min(520px,calc(100vw - 32px));text-align:center}
.dv-ui-toast.is-visible{opacity:1;transform:translate(-50%,0)}
.dv-js-open{display:block!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;max-height:1200px!important}
.dv-js-flex-open{display:flex!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
.dv-js-active{outline:2px solid color-mix(in srgb,var(--dv-orange) 55%,transparent);outline-offset:2px}
@media(max-width:575.98px){.dv-group-switcher{left:12px;bottom:12px}.dv-group-switcher__button{padding:9px 12px;font-size:10px}.dv-group-switcher__panel{bottom:50px}}
@media(prefers-reduced-motion:reduce){.dv-group-switcher__panel,.dv-ui-toast{transition:none!important}}
/* Responsive consolidation fixes for the single-domain build. */
.dc-converted [style*="display:grid"] > *{min-width:0}
.dc-converted img,.dc-converted svg,.dc-converted video{max-width:100%}
.dc-converted{overflow-wrap:anywhere}

@media(max-width:767.98px){
  body[data-dv-site="group"] footer>div:first-child{grid-template-columns:1fr 1fr!important;gap:34px 24px!important;padding:56px 24px 34px!important}
  body[data-dv-site="autocare"] [style*="grid-template-columns:repeat(4, 1fr)"],
  body[data-dv-site="car-rental"] [style*="grid-template-columns:repeat(4, 1fr)"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body[data-dv-site="autocare"] [style*="grid-template-columns:repeat(3, 1fr)"],
  body[data-dv-site="car-rental"] [style*="grid-template-columns:repeat(3, 1fr)"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:575.98px){
  body[data-dv-site="group"] footer>div:first-child{grid-template-columns:1fr!important}
  /* Hide only the compact desktop CTA links beside the burger button. Do not
     hide the same destinations inside the actual mobile navigation panel. */
  body[data-dv-site="autocare"] header div:has(>button[data-dc-onclick]) > a[href="book-service.php"],
  body[data-dv-site="autocare"] header div:has(>button[data-dc-onclick]) > a[href="login.php"],
  body[data-dv-site="car-rental"] header div:has(>button[data-dc-onclick]) > a[href="fleet.php"],
  body[data-dv-site="car-rental"] header div:has(>button[data-dc-onclick]) > a[href="login.php"],
  body[data-dv-site="paper"] header div:has(>button[data-dc-onclick]) > a[href="request-quote.php"]{display:none!important}
  body[data-dv-site="autocare"] header>div>div,
  body[data-dv-site="car-rental"] header>div>div,
  body[data-dv-site="paper"] header>div>div{min-width:0!important}
}
@media(max-width:420px){
  body[data-dv-site="autocare"] [style*="grid-template-columns:repeat(3, 1fr)"],
  body[data-dv-site="car-rental"] [style*="grid-template-columns:repeat(3, 1fr)"]{grid-template-columns:1fr!important}
}
/* Generated photography system: shared by every Des Vantora public site. */
:root{--dv-generated-image:none}
body[data-dv-site="group"]{--dv-generated-image:url('../generated/group-hero.webp')}
body[data-dv-site="autocare"]{--dv-generated-image:url('../generated/autocare-hero.webp')}
body[data-dv-site="car-rental"]{--dv-generated-image:url('../generated/car-rental-hero.webp')}
body[data-dv-site="paper"]{--dv-generated-image:url('../generated/paper-hero.webp')}
body[data-dv-site="perfume"]{--dv-generated-image:url('../generated/perfume-hero.webp')}
body[data-dv-site="restaurant"]{--dv-generated-image:url('../generated/restaurant-hero.webp')}
body[data-dv-site="pub"]{--dv-generated-image:url('../generated/pub-hero.webp')}
body[data-dv-site="gym"]{--dv-generated-image:url('../generated/gym-hero.webp')}
body[data-dv-site="gas"]{--dv-generated-image:url('../generated/gas-hero.webp')}

/* Full-bleed photography for the opening hero and the final pre-footer CTA. */
body[data-dv-site] > section.dv-hero-background{
  background-image:linear-gradient(90deg,rgba(8,42,20,.96) 0%,rgba(8,42,20,.78) 52%,rgba(8,42,20,.28) 100%),var(--dv-generated-image)!important;
  background-position:center!important;background-size:cover!important;background-repeat:no-repeat!important
}
body[data-dv-site] > section.dv-cta-background{
  background-image:linear-gradient(90deg,rgba(8,42,20,.94),rgba(8,42,20,.68)),var(--dv-generated-image)!important;
  background-position:center!important;background-size:cover!important;background-repeat:no-repeat!important
}
body[data-dv-site="group"] > section.dv-hero-background{
  background-image:linear-gradient(90deg,rgba(251,243,232,.97) 0%,rgba(251,243,232,.86) 54%,rgba(251,243,232,.34) 100%),var(--dv-generated-image)!important
}
body[data-dv-site] > section.dv-cta-background,body[data-dv-site] > section.dv-cta-background h2,body[data-dv-site] > section.dv-cta-background p{color:#fff!important}

/* Converted pages use labelled media slots; replace their design placeholders globally. */
body[data-dv-site] .image-slot-placeholder,
body[data-dv-site] div[aria-label*="photo" i],
body[data-dv-site] div[aria-label*="photography" i],
body[data-dv-site] div[aria-label*="image" i],
body[data-dv-site] div[aria-label*="interior" i],
body[data-dv-site] div[aria-label*="facility" i],
body[data-dv-site] div[aria-label*="production" i]{
  background-image:linear-gradient(180deg,rgba(5,28,15,.03),rgba(5,28,15,.28)),var(--dv-generated-image)!important;
  background-position:center!important;background-size:cover!important;background-repeat:no-repeat!important;
  color:transparent!important;overflow:hidden
}
body[data-dv-site] .image-slot-placeholder span,
body[data-dv-site] div[aria-label*="photo" i]>span,
body[data-dv-site] div[aria-label*="image" i]>span{display:none!important}

/* Give inner-page title bands a photographic backdrop while retaining readable copy. */
body[data-dv-site] .page-hero{
  background-image:linear-gradient(90deg,rgba(8,42,20,.96) 0%,rgba(8,42,20,.82) 48%,rgba(8,42,20,.34) 100%),var(--dv-generated-image)!important;
  background-position:center!important;background-size:cover!important;background-repeat:no-repeat!important
}
body[data-dv-site] .family-visual,
body[data-dv-site] .split-visual,
body[data-dv-site] .gallery-item,
body[data-dv-site] .modal-family__box{
  background-image:linear-gradient(180deg,transparent 55%,rgba(6,24,14,.42)),var(--dv-generated-image)!important;
  background-position:center!important;background-size:cover!important;background-repeat:no-repeat!important;
  color:transparent!important
}
body[data-dv-site] .family-visual::after{display:none!important}
body[data-dv-site] .family-visual span,
body[data-dv-site] .split-visual span,
body[data-dv-site] .gallery-item span{display:none!important}

/* Business-specific crops keep the subject visible behind responsive layouts. */
body[data-dv-site="paper"] .image-slot-placeholder,body[data-dv-site="paper"] .split-visual{background-position:62% center!important}
body[data-dv-site="perfume"] .image-slot-placeholder{background-position:70% center!important}
body[data-dv-site="restaurant"] .image-slot-placeholder,body[data-dv-site="restaurant"] .split-visual{background-position:68% center!important}
body[data-dv-site="pub"] .family-visual,body[data-dv-site="pub"] .split-visual{background-position:67% center!important}
body[data-dv-site="gym"] .image-slot-placeholder{background-position:68% center!important}
body[data-dv-site="gas"] .family-visual,body[data-dv-site="gas"] .split-visual{background-position:65% center!important}

/* Group overview cards use the matching business photographs instead of one repeated image. */
body[data-dv-site="group"] #hero-paper,body[data-dv-site="group"] #card-paper,body[data-dv-site="group"] #ind-0{background-image:linear-gradient(180deg,transparent 55%,rgba(5,28,15,.3)),url('../generated/paper-hero.webp')!important}
body[data-dv-site="group"] #hero-auto,body[data-dv-site="group"] #card-autocare,body[data-dv-site="group"] #ind-1{background-image:linear-gradient(180deg,transparent 55%,rgba(5,28,15,.3)),url('../generated/autocare-hero.webp')!important}
body[data-dv-site="group"] #hero-perfume,body[data-dv-site="group"] #card-perfume,body[data-dv-site="group"] #ind-2{background-image:linear-gradient(180deg,transparent 55%,rgba(5,28,15,.3)),url('../generated/perfume-hero.webp')!important}
body[data-dv-site="group"] #hero-restaurant,body[data-dv-site="group"] #card-restaurant,body[data-dv-site="group"] #ind-3{background-image:linear-gradient(180deg,transparent 55%,rgba(5,28,15,.3)),url('../generated/restaurant-hero.webp')!important}
body[data-dv-site="group"] #card-pubs{background-image:linear-gradient(180deg,transparent 55%,rgba(5,28,15,.3)),url('../generated/pub-hero.webp')!important}
body[data-dv-site="group"] #card-gym,body[data-dv-site="group"] #ind-4{background-image:linear-gradient(180deg,transparent 55%,rgba(5,28,15,.3)),url('../generated/gym-hero.webp')!important}
body[data-dv-site="group"] #card-gas-filling-station,body[data-dv-site="group"] #ind-5{background-image:linear-gradient(180deg,transparent 55%,rgba(5,28,15,.3)),url('../generated/gas-hero.webp')!important}

@media(max-width:767.98px){
  body[data-dv-site] .page-hero{background-image:linear-gradient(90deg,rgba(8,42,20,.95),rgba(8,42,20,.68)),var(--dv-generated-image)!important;background-position:62% center!important}
}

/* Page-level photo library ------------------------------------------------- */
/* The original builds mark media with striped inline backgrounds. Cycle a
   curated business-specific library through those slots instead of repeating
   one hero across every page. */
body[data-dv-site] div[style*="repeating-linear-gradient"]{
  background-position:center!important;background-size:cover!important;background-repeat:no-repeat!important;
  color:transparent!important;overflow:hidden
}
body[data-dv-site] div[style*="repeating-linear-gradient"]>span{display:none!important}

body[data-dv-site="autocare"] div[style*="repeating-linear-gradient"]{background-image:linear-gradient(180deg,transparent 58%,rgba(6,24,14,.36)),url('../generated/autocare-hero.webp')!important}
body[data-dv-site="autocare"] div[style*="repeating-linear-gradient"]:nth-of-type(even){background-image:linear-gradient(180deg,transparent 58%,rgba(6,24,14,.36)),url('../generated/autocare-detailing.webp')!important}
body[data-dv-site="autocare"] div[style*="repeating-linear-gradient"]:nth-of-type(3n){background-image:linear-gradient(180deg,transparent 58%,rgba(6,24,14,.36)),url('../generated/automotive-diagnostics.webp')!important}

body[data-dv-site="car-rental"] div[style*="repeating-linear-gradient"]{background-image:linear-gradient(180deg,transparent 58%,rgba(6,24,14,.36)),url('../generated/car-rental-hero.webp')!important}
body[data-dv-site="car-rental"] div[style*="repeating-linear-gradient"]:nth-of-type(even){background-image:linear-gradient(180deg,transparent 58%,rgba(6,24,14,.36)),url('../generated/car-rental-interior.webp')!important}
body[data-dv-site="car-rental"] div[style*="repeating-linear-gradient"]:nth-of-type(3n){background-image:linear-gradient(180deg,transparent 58%,rgba(6,24,14,.36)),url('../generated/car-rental-interior.webp')!important}

body[data-dv-site="paper"] div[style*="repeating-linear-gradient"]{background-image:linear-gradient(180deg,transparent 62%,rgba(6,24,14,.25)),url('../generated/paper-household-products.webp')!important}
body[data-dv-site="paper"] div[style*="repeating-linear-gradient"]:nth-of-type(3n+2){background-image:linear-gradient(180deg,transparent 62%,rgba(6,24,14,.25)),url('../generated/paper-business-supply.webp')!important}
body[data-dv-site="paper"] div[style*="repeating-linear-gradient"]:nth-of-type(3n){background-image:linear-gradient(180deg,transparent 62%,rgba(6,24,14,.25)),url('../generated/paper-quality.webp')!important}

body[data-dv-site="perfume"] div[style*="repeating-linear-gradient"]{background-image:linear-gradient(180deg,transparent 66%,rgba(20,13,8,.22)),url('../generated/perfume-women.webp')!important}
body[data-dv-site="perfume"] div[style*="repeating-linear-gradient"]:nth-of-type(3n+2){background-image:linear-gradient(180deg,transparent 66%,rgba(20,13,8,.22)),url('../generated/perfume-men.webp')!important}
body[data-dv-site="perfume"] div[style*="repeating-linear-gradient"]:nth-of-type(3n){background-image:linear-gradient(180deg,transparent 66%,rgba(20,13,8,.22)),url('../generated/perfume-gift-set.webp')!important}

body[data-dv-site="gym"] div[style*="repeating-linear-gradient"]{background-image:linear-gradient(180deg,transparent 60%,rgba(8,10,12,.36)),url('../generated/gym-hero.webp')!important}
body[data-dv-site="gym"] div[style*="repeating-linear-gradient"]:nth-of-type(3n+2){background-image:linear-gradient(180deg,transparent 60%,rgba(8,10,12,.36)),url('../generated/gym-pool.webp')!important}
body[data-dv-site="gym"] div[style*="repeating-linear-gradient"]:nth-of-type(3n){background-image:linear-gradient(180deg,transparent 60%,rgba(8,10,12,.36)),url('../generated/gym-studio-class.webp')!important}

/* Semantic mappings for high-value restaurant slots. */
body[data-dv-site="restaurant"] #rest-about-chef,body[data-dv-site="restaurant"] #g-people-1{background-image:linear-gradient(180deg,transparent 65%,rgba(8,20,12,.28)),url('../generated/restaurant-chef.webp')!important}
body[data-dv-site="restaurant"] [id*="food"],body[data-dv-site="restaurant"] [id*="grill"],body[data-dv-site="restaurant"] [id*="sig"],body[data-dv-site="restaurant"] #rest-takeaway{background-image:linear-gradient(180deg,transparent 65%,rgba(8,20,12,.28)),url('../generated/restaurant-food.webp')!important}
body[data-dv-site="restaurant"] #g-room-3{background-image:linear-gradient(180deg,transparent 65%,rgba(8,20,12,.28)),url('../generated/restaurant-bar.webp')!important}

body[data-dv-site="pub"] .gallery-item:nth-child(3n+2),body[data-dv-site="pub"] .split-visual:nth-of-type(even){background-image:linear-gradient(180deg,transparent 55%,rgba(6,24,14,.42)),url('../generated/pub-food.webp')!important}
body[data-dv-site="pub"] .gallery-item:nth-child(3n),body[data-dv-site="pub"] .family-visual:nth-of-type(even){background-image:linear-gradient(180deg,transparent 55%,rgba(6,24,14,.42)),url('../generated/pub-live-event.webp')!important}

body[data-dv-site="gas"] .split-visual:nth-of-type(3n+1),body[data-dv-site="gas"] .gallery-item:nth-child(3n+1){background-image:linear-gradient(180deg,transparent 55%,rgba(6,24,14,.34)),url('../generated/gas-tyre-service.webp')!important}
body[data-dv-site="gas"] .split-visual:nth-of-type(3n+2),body[data-dv-site="gas"] .gallery-item:nth-child(3n+2){background-image:linear-gradient(180deg,transparent 55%,rgba(6,24,14,.34)),url('../generated/gas-safety.webp')!important}
body[data-dv-site="gas"] .split-visual:nth-of-type(3n),body[data-dv-site="gas"] .gallery-item:nth-child(3n){background-image:linear-gradient(180deg,transparent 55%,rgba(6,24,14,.34)),url('../generated/gas-lubricants-fleet.webp')!important}
body[data-dv-site="pub"] .dv-photo-food{background-image:linear-gradient(180deg,transparent 55%,rgba(6,24,14,.42)),url('../generated/pub-food.webp')!important}
body[data-dv-site="pub"] .dv-photo-event{background-image:linear-gradient(180deg,transparent 55%,rgba(6,24,14,.42)),url('../generated/pub-live-event.webp')!important}
body[data-dv-site="gas"] .dv-photo-tyre{background-image:linear-gradient(180deg,transparent 55%,rgba(6,24,14,.34)),url('../generated/gas-tyre-service.webp')!important}
body[data-dv-site="gas"] .dv-photo-safety{background-image:linear-gradient(180deg,transparent 55%,rgba(6,24,14,.34)),url('../generated/gas-safety.webp')!important}
body[data-dv-site="gas"] .dv-photo-lubricant{background-image:linear-gradient(180deg,transparent 55%,rgba(6,24,14,.34)),url('../generated/gas-lubricants-fleet.webp')!important}
body[data-dv-site="autocare"] .dv-photo-detailing{background-image:linear-gradient(180deg,transparent 58%,rgba(6,24,14,.36)),url('../generated/autocare-detailing.webp')!important}
body[data-dv-site="car-rental"] .dv-photo-interior{background-image:linear-gradient(180deg,transparent 58%,rgba(6,24,14,.36)),url('../generated/car-rental-interior.webp')!important}
body[data-dv-site="autocare"] .dv-photo-diagnostic{background-image:linear-gradient(180deg,transparent 58%,rgba(6,24,14,.36)),url('../generated/automotive-diagnostics.webp')!important}
body[data-dv-site="gym"] .dv-photo-pool{background-image:linear-gradient(180deg,transparent 60%,rgba(8,10,12,.36)),url('../generated/gym-pool.webp')!important}
body[data-dv-site="gym"] .dv-photo-class{background-image:linear-gradient(180deg,transparent 60%,rgba(8,10,12,.36)),url('../generated/gym-studio-class.webp')!important}
body[data-dv-site="gym"] .dv-photo-training{background-image:linear-gradient(180deg,transparent 60%,rgba(8,10,12,.36)),url('../generated/gym-personal-training.webp')!important}

/* Map slots remain neutral until a verified pin/embed is supplied. */
body[data-dv-site] [id*="map" i],body[data-dv-site] [aria-label*="map" i]{
  background-image:linear-gradient(135deg,#e8ece8 0%,#dce5df 100%)!important;
  background-color:#e4ebe6!important;color:#405348!important
}
body[data-dv-site] [id*="map" i]>span,body[data-dv-site] [aria-label*="map" i]>span{display:block!important;color:#405348!important}
