/* Local Booking CMS - Theme layer
   Only color/background/border/shadow rules belong here.
   Layout and component structure stay in style.css / menu-public.css / header-builder.css.
   Values must come from variables generated by Admin > Impostazioni > Design frontend. */

:root{
  --radius:22px;
  --shadow:0 18px 46px var(--shadow-color);
  --shadow-soft-value:0 10px 28px var(--shadow-soft);
}

html body,
body input,
body textarea,
body select,
body button{font-family:var(--site-font-family)!important;}
/* body{background:var(--body-bg);color:var(--ink);} */
a{color:var(--link-color);}
h1,h2,h3,h4,h5,h6,.section-title,.card h3,.page-content h2,.contact-booking-panel h4{color:var(--heading-color)!important;}
.lead,.section-sub,.muted,.card p,.page-content p,.page-content li,.contact-booking-panel p{color:var(--muted);}

.topbar,.topbar-builder{background:var(--header-bg)!important;color:var(--header-text)!important;border-color:var(--header-border)!important;}
.brand,.brand span,.navlinks a:not(.btn),.hf-component--menu a:not(.btn),.hf-component--text,.hf-lang-current,.lang-pill{color:var(--header-text)!important;}
.hf-lang-list,.navlinks.is-open,.hf-mobile-panel,.hf-mobile-header{background:var(--header-dropdown-bg)!important;color:var(--header-dropdown-text)!important;border-color:var(--header-border)!important;}
.hf-lang-list a,.hf-mobile-nav a{color:var(--header-dropdown-text)!important;}
.hf-lang-list a:hover,.hf-lang-list a.is-active,.hf-mobile-nav a:hover{background:var(--surface-alt)!important;}

.footer,.footer-builder-visual{background:var(--footer-bg)!important;color:var(--footer-text)!important;}
.footer a,.footer strong,.footer-builder-visual a{color:var(--footer-link)!important;}
.footer h1,.footer h2,.footer h3,.footer h4,.footer h5,.footer h6,.footer .footer-builder-col-heading{color:var(--footer-heading)!important;}

.card,.wizard,.page-content,.pill-card,.faq details,.chat-box,.contact-booking-panel,.vdp-menu-item,.vdp-menu-preview-card,.vdp-contact-panel-card,.verify-card,.booking-choice-card,.ba-choice-card{background:var(--card-bg)!important;border-color:var(--border-color)!important;box-shadow:var(--shadow);}
.icon,.contact-modal-close,.chat-msg,.notice,.step-dot,.vdp-card-media--icon .mdi,.vdp-menu-item-image,.vdp-menu-preview-image,.vc-image-empty{background:var(--surface-alt)!important;color:var(--icon-color)!important;}
.icon .mdi,.pill-card .mdi,.footer .mdi,.card .mdi,.brand .mdi,.vdp-card-icon,.vdp-menu-category-head > span,.vd-map-contact-list .mdi,.privacy-notice-icon{color:var(--icon-color)!important;}

.eyebrow,.vd-kicker,.vdp-section-heading .vd-kicker,.section-head .vd-kicker,.vdp-contact-panel-head .vd-kicker,.vd-lux-hero-inner .vd-kicker,.vdp-menu-preview-cat,.vdp-menu-preview-status,.vdp-menu-badges span{color:var(--label-text)!important;background:var(--label-bg)!important;border-color:var(--label-border)!important;}

.hero,.page-hero:not(.page-hero-bg):not(.has-cover-image){background:radial-gradient(circle at 82% 20%,color-mix(in srgb,var(--accent) 22%,transparent),transparent 30%),linear-gradient(135deg,var(--soft),var(--cream))!important;}
.highlight{background:var(--primary-dark)!important;color:var(--button-primary-text)!important;}
/* .cta-band:not(.vdp-action-card-band),.vdp-booking-cta{background:linear-gradient(135deg,var(--primary-dark),var(--primary))!important;color:var(--button-primary-text)!important;} */

.btn,.site-btn,button.btn,a.btn{border-color:var(--button-primary-border);}
.btn-primary,.site-btn-primary,button.btn-primary,a.btn-primary,.nav-toggle,.step-dot.active,.chat-head,.chat-toggle,.booking-progress .step.is-active,.lb-booking-progress .step.is-active,.booking-date-btn.is-selected,.booking-time-btn.is-selected,.ba-date-btn.is-selected,.ba-time-btn.is-selected{
  background:linear-gradient(135deg,var(--button-primary-bg1),var(--button-primary-bg2))!important;
  color:var(--button-primary-text)!important;
  border-color:var(--button-primary-border)!important;
  box-shadow:0 14px 34px var(--button-primary-shadow)!important;
}
.btn-primary .mdi,.site-btn-primary .mdi,button.btn-primary .mdi,a.btn-primary .mdi{color:var(--button-primary-icon)!important;}
.btn-primary:hover,.site-btn-primary:hover,button.btn-primary:hover,a.btn-primary:hover{
  background:linear-gradient(135deg,var(--button-primary-hover-bg1),var(--button-primary-hover-bg2))!important;
  color:var(--button-primary-text)!important;
}
.btn-secondary,.site-btn-secondary,button.btn-secondary,a.btn-secondary,.btn-outline,.site-btn-outline{
  background:linear-gradient(135deg,var(--button-secondary-bg1),var(--button-secondary-bg2))!important;
  color:var(--button-secondary-text)!important;
  border-color:var(--button-secondary-border)!important;
  box-shadow:0 12px 28px var(--button-secondary-shadow)!important;
}
.btn-secondary .mdi,.site-btn-secondary .mdi,button.btn-secondary .mdi,a.btn-secondary .mdi,.btn-outline .mdi{color:var(--button-secondary-icon)!important;}
.btn-secondary:hover,.site-btn-secondary:hover,button.btn-secondary:hover,a.btn-secondary:hover,.btn-outline:hover{
  background:linear-gradient(135deg,var(--button-secondary-hover-bg1),var(--button-secondary-hover-bg2))!important;
  color:var(--button-secondary-text)!important;
}

.vdp-action-card-band{background:linear-gradient(135deg,var(--vdp-action-card-bg1,var(--button-primary-bg1)),var(--vdp-action-card-bg2,var(--button-primary-bg2)))!important;color:var(--button-primary-text)!important;}
.vdp-action-card-band::before{background-image:linear-gradient(135deg,var(--vdp-action-card-overlay,transparent),var(--vdp-action-card-overlay,transparent)),var(--vdp-action-card-bg,none)!important;}

.vd-map-contact-section{background:var(--footer-bg)!important;}
.vd-map-contact-box{background:color-mix(in srgb,var(--card-bg) 92%,transparent)!important;color:var(--ink)!important;border-color:var(--border-color)!important;box-shadow:var(--shadow);}

.booking-shell,.booking-wizard,.lb-booking-wizard{--ba-primary:var(--primary);--ba-ink:var(--ink);--ba-soft:var(--soft);--bk-primary:var(--primary);--bk-ink:var(--ink);--bk-border:var(--border-color);--bk-soft:var(--soft);--bk-muted:var(--muted);}
.booking-field-error{color:var(--danger)!important;}
.booking-advanced-fields input,.booking-advanced-fields select,.booking-advanced-fields textarea,.field input,.field select,.field textarea{border-color:var(--border-color);background:var(--surface-bg);color:var(--ink);}

.vdp-menu-page .page-hero,.vdp-menu-hero{background:radial-gradient(circle at 12% 18%,color-mix(in srgb,var(--surface-bg) 16%,transparent),transparent 32%),linear-gradient(135deg,var(--primary-dark),var(--primary))!important;color:var(--button-primary-text)!important;}
.vdp-menu-category-head > span{background:color-mix(in srgb,var(--primary) 14%,var(--surface-bg))!important;color:var(--primary-dark)!important;}
.vdp-menu-item-head strong,.vdp-menu-preview-foot strong{color:var(--primary-dark)!important;}
.vdp-menu-preview-section{background:var(--soft)!important;color:var(--ink)!important;}
.vdp-menu-preview-card h3,.vdp-menu-category h3{color:var(--heading-color)!important;}
.vdp-menu-preview-card p,.vdp-menu-category-desc,.vdp-menu-item p{color:var(--muted)!important;}

/* 4.1.85 - Lead/contact form theme variables, no runtime inline CSS */
.vdp-lead-card{background:color-mix(in srgb,var(--card-bg,#fff) 90%, transparent);border:1px solid var(--border-color,rgba(17,24,39,.08));box-shadow:0 24px 70px var(--shadow-color,rgba(15,23,42,.12));}
.vdp-lead-card label{color:var(--ink,#111827);}
.vdp-lead-card input,.vdp-lead-card textarea,.vdp-lead-card select{border:1px solid var(--border-color,rgba(15,23,42,.14));background:var(--surface-bg,var(--card-bg,#fff));color:var(--ink,#111827);}
.vdp-lead-card input:focus,.vdp-lead-card textarea:focus,.vdp-lead-card select:focus{border-color:var(--primary,#1f7a57);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary,#1f7a57) 14%, transparent);}
.vdp-lead-privacy{color:var(--muted,#64748b);}

/* === 4.1.137 migrated visual rules from style.css === */
/* body{color:var(--ink);background:var(--cream)} */
.topbar{background:rgba(255,248,236,.92);backdrop-filter:blur(12px)}
.brand{color:var(--primary-dark)}
.navlinks a{color:var(--ink)}
.btn-primary{background:var(--primary);color:var(--card-bg,#fff);box-shadow:0 12px 28px rgba(71,116,90,.25)}
.btn-primary:hover{background:var(--primary-dark)}
.btn-outline{color:var(--primary-dark);background:var(--card-bg,#fff)}
.hero{background:radial-gradient(circle at 80% 20%, rgba(216,167,86,.30), transparent 28%),linear-gradient(135deg,var(--soft),var(--cream))}
.eyebrow{background:var(--card-bg,#fff);color:var(--primary)}
h1{color:var(--primary-dark)}
.lead{color:var(--muted)}
.trust span{background:var(--card-bg,#fff);box-shadow:var(--shadow)}
.photo-card{background:linear-gradient(160deg,rgba(24,58,42,.15),rgba(216,167,86,.2)),url("../uploads/hero.jpg");box-shadow:var(--shadow)}
.photo-card:after{color:var(--card-bg,#fff);background:rgba(0,0,0,.35)}
.section-title{color:var(--primary-dark)}
.section-sub{color:var(--muted)}
.card{background:var(--card-bg,#fff);box-shadow:var(--shadow)}
.card h3{color:var(--primary-dark)}
.icon{background:var(--soft)}
.image-box{background:linear-gradient(160deg,rgba(71,116,90,.18),rgba(216,167,86,.16)),url("../uploads/garden.jpg");box-shadow:var(--shadow)}
.highlight{background:var(--primary-dark);color:var(--card-bg,#fff)}
.highlight .section-title{color:var(--card-bg,#fff)}
.highlight p{color:rgba(255,255,255,.82)}
.pill-card{background:var(--card-bg,#fff)}
.faq details{background:var(--card-bg,#fff);box-shadow:0 10px 30px rgba(17,35,28,.06)}
.cta-band{background:linear-gradient(135deg,var(--primary-dark),var(--primary));color:var(--card-bg,#fff)}
.footer{background:#172d23;color:var(--card-bg,#fff)}
.footer a{color:var(--card-bg,#fff)}
.wizard{background:var(--card-bg,#fff);box-shadow:var(--shadow)}
.step-dot{background:#e5e9e5}
.step-dot.active{background:var(--primary)}
.field input,.field select,.field textarea{background:var(--card-bg,#fff)}
.notice{background:var(--soft)}
.chat-box{background:var(--card-bg,#fff);box-shadow:var(--shadow)}
.chat-head{background:var(--primary);color:var(--card-bg,#fff)}
.chat-msg{background:var(--soft)}
.chat-options button{background:var(--card-bg,#fff)}
.chat-toggle{background:var(--accent);box-shadow:var(--shadow)}
.nav-toggle{background:var(--primary);color:var(--card-bg,#fff)}
.lang-pill{background:var(--card-bg,#fff)}
.lang-pill.active{background:var(--primary-dark);color:var(--card-bg,#fff)}
.icon .mdi{color:var(--primary)}
.pill-card{color:var(--ink)}
.pill-card:hover{box-shadow:var(--shadow)}
.pill-card .mdi{color:var(--primary)}
.page-hero{background:linear-gradient(135deg,var(--soft),var(--cream))}
.page-content{background:var(--card-bg,#fff);box-shadow:var(--shadow)}
.page-content h2{color:var(--primary-dark)}
@media (max-width:1024px){.navlinks{background:var(--card-bg,#fff);box-shadow:var(--shadow)}}
.contact-booking-backdrop{background:rgba(12,28,22,.58);backdrop-filter:blur(6px)}
.contact-booking-panel{background:var(--card-bg,#fff);box-shadow:0 30px 90px rgba(0,0,0,.25);color:var(--ink)}
.contact-booking-panel h4{color:var(--primary-dark)}
.contact-booking-panel p{color:var(--muted)}
.contact-modal-close{background:var(--soft);color:var(--primary-dark)}
.btn-whatsapp{background:#25D366;color:var(--card-bg,#fff)}
.btn-whatsapp:hover{background:#1ebd5c}
.location-card{color:inherit}
.page-hero-image{box-shadow:var(--shadow)}
.vc-section h2{color:inherit}
.vc-row>div,.vc-card{background:var(--card-bg);box-shadow:var(--shadow)}
.vc-card .mdi{color:var(--icon-color)}
.vc-image img{box-shadow:var(--shadow)}
.vc-image figcaption{color:var(--muted)}
.vc-dynamic{background:var(--soft)}
.is-scrolled .topbar{background:var(--header-bg)!important;box-shadow:var(--shadow)}
.page-content .vc-custom-hero{color:var(--card-bg,#fff);box-shadow:var(--shadow)}
.page-content .vc-custom-hero h1,.page-content .vc-custom-hero h2,.page-content .vc-custom-hero p{color:var(--card-bg,#fff)!important}
.page-content .vc-custom-hero .eyebrow{background:rgba(255,255,255,.16)!important;color:var(--card-bg,#fff)!important;border-color:rgba(255,255,255,.25)!important}
.page-content .vc-section{box-shadow:var(--shadow)}
.page-content .vc-card{background:var(--card-bg);box-shadow:var(--shadow)}
.page-content .vc-image img{box-shadow:var(--shadow)}
.page-content .vc-image figcaption{color:var(--muted)}
.page-content .vc-image-text img{box-shadow:var(--shadow)}
.page-content .vc-dynamic{background:var(--soft)}
.page-hero-bg{background:linear-gradient(90deg, rgba(24,34,30,.72) 0%, rgba(24,34,30,.42) 42%, rgba(24,34,30,.18) 100%),
    var(--page-hero-bg, none),
    linear-gradient(135deg, var(--primary-dark), var(--primary));color:var(--card-bg,#fff)}
.page-hero-bg .eyebrow,
.page-hero-bg h1,
.page-hero-bg .lead{color:var(--card-bg,#fff)}
.page-hero-bg::after{background:linear-gradient(0deg,rgba(0,0,0,.15),rgba(0,0,0,0))}
.vdp-carousel-track::-webkit-scrollbar-thumb{background:rgba(0,0,0,.18)}
.vdp-carousel-card a{color:inherit}
.vdp-card-icon{color:var(--icon-color, var(--primary))}
.vdp-carousel-btn{background:var(--surface, var(--card-bg,#fff));color:var(--primary);box-shadow:0 12px 32px rgba(0,0,0,.16)}
.separator-line:before{background:linear-gradient(90deg,transparent,var(--border-color,rgba(0,0,0,.15)),transparent)}
.separator-dots:before{background:var(--primary);box-shadow:-24px 0 0 rgba(155,118,84,.45),24px 0 0 rgba(155,118,84,.45),-48px 0 0 rgba(155,118,84,.18),48px 0 0 rgba(155,118,84,.18)}
.separator-wave:before{background:radial-gradient(52px 28px at 50% 100%, transparent 48px, var(--section-bg,var(--cream)) 49px)}
.separator-curve:before{background:var(--section-bg,var(--cream));box-shadow:0 -12px 35px rgba(0,0,0,.04)}
.separator-angle:before{background:linear-gradient(165deg,transparent 0 49%,var(--section-bg,var(--cream)) 50% 100%)}
.vdp-owl-carousel .vdp-carousel-card a{color:inherit}
.vdp-owl-carousel .owl-nav button.owl-prev,
.vdp-owl-carousel .owl-nav button.owl-next{background:var(--card-bg,var(--card-bg,#fff))!important;color:var(--primary)!important;box-shadow:0 14px 34px rgba(0,0,0,.16)!important}
.vdp-owl-carousel .owl-nav button span.mdi{color:var(--primary)!important}
.vdp-owl-carousel .owl-nav button:hover{background:var(--button-bg)!important;color:var(--button-text)!important}
.vdp-owl-carousel .owl-nav button:hover span.mdi{color:var(--button-text)!important}
.vdp-owl-carousel button.owl-dot span{background:rgba(0,0,0,.20)!important}
.vdp-owl-carousel button.owl-dot.active span{background:var(--primary)!important}
.contact-booking-modal .modal-content{background:transparent!important;box-shadow:none!important}
@media (max-width:1024px){body.header-transparent-enabled .topbar .navlinks,
  .topbar[data-transparent="1"] .navlinks,
  .header-transparent-enabled .navlinks.is-open{background:var(--header-bg, var(--card-bg,#fff))!important;color:var(--header-text, var(--ink,var(--ink,#1d1a17)))!important;backdrop-filter:none!important}
body.header-transparent-enabled .topbar .navlinks a:not(.btn),
  .topbar[data-transparent="1"] .navlinks a:not(.btn){color:var(--header-text, var(--ink,var(--ink,#1d1a17)))!important}}
.vdp-distance-label{background:rgba(255,255,255,.94);color:var(--primary-dark);box-shadow:0 10px 24px rgba(0,0,0,.12)}
.vdp-room-mini-services span{background:var(--soft);color:var(--primary)}
.vdp-room-services-list li{background:var(--card-bg);box-shadow:0 10px 24px rgba(0,0,0,.05)}
.vdp-room-services-list .mdi{color:var(--icon-color)}
.vdp-card-media{background:linear-gradient(135deg,var(--soft,var(--surface-alt,var(--surface-alt,#f6f1eb))),rgba(255,255,255,.72))}
.vdp-card-media--icon .mdi{background:var(--card-bg,var(--card-bg,#fff));color:var(--icon-color,var(--primary));box-shadow:0 18px 44px rgba(0,0,0,.10)}
.vdp-card-media--service{background:radial-gradient(circle at 50% 40%,rgba(255,255,255,.95),rgba(255,255,255,.55) 38%,transparent 39%),linear-gradient(135deg,var(--soft,var(--surface-alt,var(--surface-alt,#f6f1eb))),rgba(155,118,84,.12))}
.vdp-card-media--location{background:linear-gradient(135deg,rgba(155,118,84,.14),var(--soft,var(--surface-alt,var(--surface-alt,#f6f1eb))))}
.vdp-card-media--room{background:linear-gradient(135deg,rgba(0,0,0,.04),var(--soft,var(--surface-alt,var(--surface-alt,#f6f1eb))))}
.vdp-carousel-card:not(:has(img)) .vdp-distance-label{background:var(--card-bg,var(--card-bg,#fff))}
.floating-contact-button{background:var(--button-bg,var(--primary,#9b7654));color:var(--button-text,var(--card-bg,#fff));box-shadow:0 18px 45px rgba(0,0,0,.18)}
.floating-contact-button:hover{background:var(--button-hover-bg,#211a15);box-shadow:0 22px 55px rgba(0,0,0,.22)}
.floating-contact-button .floating-contact-icon{background:rgba(255,255,255,.16)}
@media (max-width:640px){.floating-contact-button .floating-contact-icon{background:transparent}}
.vd-review-stars{color:#d4a45f}
.vdp-review-source{color:var(--muted,var(--muted,var(--muted,#756e67)))}
.vd-map-contact-section{background:var(--footer-bg,#151312)}
.vd-map-background{filter:saturate(.88) contrast(.96)}
.vd-map-background iframe{filter:grayscale(.15)}
.vd-map-overlay{background:linear-gradient(90deg,rgba(20,18,16,.72),rgba(20,18,16,.30) 44%,rgba(20,18,16,.10))}
.vd-map-contact-box{background:rgba(255,255,255,.94);backdrop-filter:blur(18px);box-shadow:0 28px 85px rgba(0,0,0,.24);color:var(--ink,var(--ink,var(--ink,#1d1a17)))}
.vd-map-contact-box h2{color:var(--ink,var(--ink,var(--ink,#1d1a17)))}
.vd-map-contact-box p{color:var(--muted,var(--muted,var(--muted,#756e67)))}
/* .vd-map-contact-list a,.vd-map-address{background:var(--soft,var(--surface-alt,var(--surface-alt,#f6f1eb)));color:var(--ink,var(--ink,var(--ink,#1d1a17)))} */
.vd-map-contact-list .mdi{background:var(--button-bg,var(--primary,#9b7654));color:var(--button-text,var(--card-bg,#fff))}
.vd-map-contact-list strong{color:var(--ink,var(--ink,var(--ink,#1d1a17)))}
.vd-map-contact-list em{color:var(--muted,var(--muted,var(--muted,#756e67)))}
.vd-map-address span:last-child{color:var(--muted,var(--muted,var(--muted,#756e67)))}
@media (max-width:760px){.vd-map-overlay{background:linear-gradient(0deg,rgba(20,18,16,.78),rgba(20,18,16,.18))}}
.footer-copyright{color:rgba(255,255,255,.72)}
.privacy-notice-backdrop{background:rgba(18,16,14,.58);backdrop-filter:blur(8px)}
.privacy-notice-panel{background:var(--card-bg,var(--card-bg,#fff));color:var(--ink,var(--ink,var(--ink,#1d1a17)));box-shadow:0 28px 90px rgba(0,0,0,.24)}
.privacy-notice-close{background:rgba(0,0,0,.05);color:var(--ink,var(--ink,var(--ink,#1d1a17)))}
.privacy-notice-icon{background:color-mix(in srgb,var(--primary,var(--primary,#9b7654)) 13%,var(--card-bg,#fff));color:var(--primary,var(--primary,#9b7654))}
.privacy-notice-panel h4{color:var(--ink,var(--ink,var(--ink,#1d1a17)))}
.privacy-notice-panel p{color:var(--muted,var(--muted,var(--muted,#756e67)))}
.privacy-notice-points span{color:var(--text-color,#2c2926)}
.privacy-notice-points .mdi{color:var(--primary,var(--primary,#9b7654))}
.privacy-link-btn{background:transparent;color:var(--primary,var(--primary,#9b7654))}
.privacy-notice-links{color:var(--muted,var(--muted,var(--muted,#756e67)))}
.privacy-notice-links a{color:var(--primary,var(--primary,#9b7654))}
@media (max-width:1024px){body.nav-open:before{background:rgba(15,18,17,.48);backdrop-filter:blur(4px)}}
.vdp-gallery-card{background:var(--soft,var(--surface-alt,var(--surface-alt,#f6f1eb)));box-shadow:0 16px 45px var(--shadow-color,rgba(0,0,0,.10))}
.vd-review-stars{color:#d7a852}
.vc-image-empty{background:rgba(255,255,255,.55);color:var(--muted,#777)}
.vc-image-empty .mdi{color:var(--icon-color,var(--primary,var(--primary,#9b7654)))}
.hf-component--text{color:var(--header-text,var(--ink))}
.footer-builder .hf-component--text{color:var(--footer-text,var(--card-bg,#fff))}
.vdp-staff-card,.vdp-bookable-service-card{background:var(--card-bg,#fff);box-shadow:0 20px 60px rgba(15,23,42,.1)}
.vdp-staff-placeholder{background:var(--soft,var(--surface-alt,var(--surface-alt,var(--surface-alt,#f6f1eb))));color:var(--primary,var(--ink,var(--ink,var(--ink,#1d1a17))))}
.vdp-booking-cta{background:linear-gradient(135deg,var(--primary,var(--ink,var(--ink,var(--ink,#1d1a17)))),var(--primary-dark,var(--ink,var(--ink,var(--ink,#1d1a17)))));color:var(--card-bg,#fff);box-shadow:0 24px 70px rgba(15,23,42,.22)}
.vdp-booking-cta h2{color:inherit}
.vdp-booking-cta p{color:rgba(255,255,255,.82)}
.vdp-service-meta span,.vdp-menu-category-pills a{background:var(--soft,var(--surface-alt,var(--surface-alt,var(--surface-alt,#f6f1eb))))}
.vdp-contact-panel-head h2{color:#120c14}
.vdp-contact-panel-head p{color:#6b4b3b}
.vdp-contact-panel-card{background:rgba(255,255,255,.92);box-shadow:0 24px 70px rgba(49,26,12,.08);backdrop-filter:blur(12px)}
.vdp-contact-panel-card h3{color:#120c14}
.vdp-contact-panel-card h3 i{color:var(--primary,var(--primary,#9b7654))}
.vdp-contact-panel-lines p{color:#3d2d28}
.vdp-contact-panel-lines strong{color:#3a2a22}
.vdp-contact-panel-btn-call{background:linear-gradient(135deg,#ff9b2f,#ff7c1d);color:var(--card-bg,#fff);box-shadow:0 18px 35px rgba(255,124,29,.22)}
.vdp-contact-panel-btn-wa{background:linear-gradient(135deg,#1ecb63,#14a84d);color:var(--card-bg,#fff);box-shadow:0 18px 35px rgba(20,168,77,.20)}
.vdp-contact-panel-hour-row{color:#120c14}
.vdp-contact-panel-map{box-shadow:0 24px 70px rgba(49,26,12,.08)}
.vdp-contact-panel-bgmap iframe{filter:saturate(.9) contrast(.95)}
.vdp-contact-panel-bgshade{background:linear-gradient(90deg,rgba(255,248,239,.94),rgba(255,248,239,.74) 50%,rgba(255,248,239,.30))}
.vdp-contact-panel--map-background .vdp-contact-panel-card{background:rgba(255,255,255,.86)}
@media (max-width:900px){.vdp-contact-panel-bgshade{background:rgba(255,248,239,.84)}}
.vdp-contact-panel-head .vd-kicker{background:rgba(255,255,255,.80);color:#9a4d12;box-shadow:0 10px 28px rgba(120,60,18,.06)}
.vdp-contact-panel-head .vd-kicker i{color:#c75b13}
.vdp-contact-panel-map-placeholder{background:linear-gradient(135deg,#bfe9f4,#d6f4ff);color:#24748b}
.vdp-hero-actions .btn-outline{background:transparent}
.vd-kicker,
.eyebrow,
.vdp-section-heading .vd-kicker,
.section-head .vd-kicker,
.vdp-contact-panel-head .vd-kicker,
.vd-lux-hero-inner .vd-kicker{background:#fff0e3;color:#b94f00}
.vdp-section-separator.separator-svg{color:var(--section-bg,var(--cream))}
.vdp-section-separator.separator-svg svg{fill:currentColor}
.vdp-section-separator[style*="color"].separator-line:before{background:linear-gradient(90deg,transparent,currentColor,transparent)}
.vdp-section-separator[style*="color"].separator-dots:before{background:currentColor;box-shadow:-24px 0 0 currentColor,24px 0 0 currentColor,-48px 0 0 color-mix(in srgb,currentColor 30%,transparent),48px 0 0 color-mix(in srgb,currentColor 30%,transparent)}
.vdp-section-separator.separator-svg::before,
.vdp-section-separator.separator-svg::after,
.vdp-section-separator.separator-svg.separator-wave::before,
.vdp-section-separator.separator-svg.separator-curve::before,
.vdp-section-separator.separator-svg.separator-angle::before,
.vdp-section-separator.separator-svg.separator-double-wave::before,
.vdp-section-separator.separator-svg.separator-tilt::before,
.vdp-section-separator.separator-svg.separator-arc::before,
.vdp-section-separator.separator-svg.separator-zigzag::before{background:none!important;box-shadow:none!important}
.vdp-section-separator.separator-svg{background-color:transparent}
.footer-builder-col-heading{color:inherit}
.footer-builder-col-heading:after{background:currentColor}
.vdp-booking-cta-media{background:var(--soft);box-shadow:var(--shadow)}
.vdp-has-overlay::before{background:var(--vdp-overlay-color,rgba(0,0,0,.45))}
.vdp-blog-list-card a,.vdp-blog-card a{color:inherit}
.vdp-empty-widget,.empty-state{background:rgba(255,255,255,.72)}
.vdp-chat-toggle{background:var(--btn-primary-bg,var(--primary,var(--ink,var(--ink,var(--ink,#1d1a17)))));color:var(--btn-primary-text,var(--card-bg,#fff));box-shadow:0 16px 45px rgba(15,23,42,.22)}
.vdp-chat-panel{background:var(--surface,var(--card-bg,#fff));box-shadow:0 22px 70px rgba(15,23,42,.26)}
.vdp-chat-panel header{background:linear-gradient(135deg,var(--primary,var(--ink,var(--ink,var(--ink,#1d1a17)))),var(--secondary,#374151));color:var(--card-bg,#fff)}
.vdp-chat-panel header button{background:rgba(255,255,255,.12);color:var(--card-bg,#fff)}
.vdp-chat-body{background:linear-gradient(180deg,rgba(248,250,252,.96),rgba(255,255,255,.96))}
.vdp-chat-msg.bot{background:var(--card-bg,#fff)}
.vdp-chat-msg.user{background:var(--primary,var(--ink,var(--ink,var(--ink,#1d1a17))));color:var(--card-bg,#fff)}
.vdp-chat-options button{background:var(--card-bg,#fff)}
.vdp-chat-options button:hover{box-shadow:0 10px 24px rgba(15,23,42,.10)}
.vdp-chat-typing{background:var(--card-bg,#fff)}
.vdp-chat-typing span{background:#94a3b8}
.vdp-chat-form{background:var(--card-bg,#fff)}
.vdp-chat-form button{background:var(--primary,var(--ink,var(--ink,var(--ink,#1d1a17))));color:var(--card-bg,#fff)}
.vdp-chat-node-card{background:rgba(255,255,255,.78)}
.vdp-chat-node-card>summary{background:rgba(15,23,42,.04)}
.vdp-chat-option-row{background:var(--card-bg,#fff)}
.vdp-chat-json-editor{background:var(--ink,var(--ink,var(--ink,#1d1a17)));color:#dbeafe}
.vdp-chat-builder-form .admin-actions{background:rgba(255,255,255,.92);backdrop-filter:blur(10px)}
.vdp-chip-item{background:var(--vdp-chip-bg,var(--card-bg,#fff));color:var(--vdp-chip-color,currentColor)}
.vdp-chip-item .mdi{color:var(--vdp-chip-icon,currentColor)}
.vdp-contact-map-widget .vd-map-contact-list a{color:var(--vdp-contact-map-link-color)!important}
.vdp-contact-map-widget .vd-map-contact-list a span,
.vdp-contact-map-widget .vd-map-address .mdi,
.vdp-contact-map-widget .vd-kicker .mdi{color:var(--vdp-contact-map-icon-color)!important}
.vdp-contact-map-side{box-shadow:0 24px 70px rgba(49,26,12,.08);background:var(--surface-alt,var(--surface-alt,var(--surface-alt,#f6f1eb)))}

/* 4.1.137 Contact Map: frontend and Composer share the same theme variables. */
.vdp-contact-map-widget .vd-map-contact-box{
  background:var(--vdp-contact-map-box-bg,var(--card-bg))!important;
  color:var(--vdp-contact-map-text-color,var(--ink))!important;
  border-color:var(--border-color)!important;
  box-shadow:var(--shadow)!important;
}
.vdp-contact-map-widget .vd-map-contact-box h2{color:var(--vdp-contact-map-heading-color,var(--heading-color))!important;}
.vdp-contact-map-widget .vd-map-contact-box p,
.vdp-contact-map-widget .vd-map-contact-list strong,
.vdp-contact-map-widget .vd-map-contact-list em,
.vdp-contact-map-widget .vd-map-address span:last-child{color:var(--vdp-contact-map-text-color,var(--muted))!important;}
.vdp-contact-map-widget .vd-map-contact-list a{color:var(--vdp-contact-map-link-color,var(--link-color))!important;}
.vdp-contact-map-widget .vd-map-contact-list .mdi,
.vdp-contact-map-widget .vd-map-address .mdi{background:var(--button-bg)!important;color:var(--vdp-contact-map-icon-color,var(--icon-color))!important;}
.vdp-contact-map-widget .vd-kicker{color:var(--vdp-contact-map-label-color,var(--label-text))!important;background:var(--vdp-contact-map-label-bg,var(--label-bg))!important;border-color:var(--vdp-contact-map-label-border,var(--label-border))!important;}
.vdp-contact-map-widget .vd-kicker .mdi{color:var(--vdp-contact-map-label-color,var(--label-text))!important;}
