@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Manrope:wght@600;700;800&display=swap');

/* =========================================================
   VENDING IMPERIUM — corporate redesign (styling only)
   Palette taken from the logo. Remove this CSS to restore
   the previous look; no page text is changed by it.
   ========================================================= */
:root{
  --vi-forest:#0F2A1B; --vi-green-900:#163A25; --vi-green-700:#1F4D31;
  --vi-leaf:#6CB33F; --vi-leaf-light:#9BD06A;
  --vi-orange:#F28A1E; --vi-orange-deep:#E4572E;
  --vi-ink:#15241B; --vi-body:#3E4D43; --vi-muted:#66756B;
  --vi-soft:#F4F7F1; --vi-line:#E2E9DD; --vi-white:#FFFFFF;
  --vi-radius:16px;
  --vi-shadow:0 18px 40px -18px rgba(15,42,27,.28);
  --vi-shadow-sm:0 6px 18px -8px rgba(15,42,27,.18);
  --vi-grad-accent:linear-gradient(135deg,#F28A1E 0%,#E4572E 100%);
  --vi-grad-dark:radial-gradient(circle at 85% 15%,rgba(108,179,63,.28) 0,transparent 42%),radial-gradient(circle at 8% 92%,rgba(242,138,30,.20) 0,transparent 38%),linear-gradient(135deg,#0F2A1B 0%,#163A25 55%,#1F4D31 100%);
}

/* ---------- Global type & colour (overrides Elementor kit) ---------- */
body{
  --e-global-color-primary:#12301F !important;
  --e-global-color-secondary:#F4F7F1 !important;
  --e-global-color-text:#3E4D43 !important;
  --e-global-color-accent:#F28A1E !important;
  --e-global-color-14ef391:#F28A1E !important;
  background:#FFFFFF !important;
  color:var(--vi-body);
  font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif !important;
  -webkit-font-smoothing:antialiased;
}
.elementor-heading-title{
  font-family:'Manrope','Inter',sans-serif !important;
  color:var(--vi-ink) !important;
  letter-spacing:-0.015em !important;
  -webkit-text-stroke:0 !important; text-shadow:none !important;
}
.elementor-heading-title u{ text-decoration:none !important; }
:where(.elementor-widget-heading) h1.elementor-heading-title{ font-size:clamp(40px,5.6vw,72px) !important; font-weight:800 !important; line-height:1.05 !important; }
:where(.elementor-widget-heading) h2.elementor-heading-title{ font-size:clamp(30px,3.4vw,46px) !important; font-weight:800 !important; line-height:1.12 !important; }
:where(.elementor-widget-heading) h4.elementor-heading-title{ font-size:20px !important; font-weight:700 !important; line-height:1.3 !important; text-transform:none !important; }
:where(.elementor-widget-heading) h5.elementor-heading-title{ font-family:'Inter',sans-serif !important; font-size:18px !important; font-weight:400 !important; color:var(--vi-muted) !important; letter-spacing:0 !important; line-height:1.6 !important; }
:where(.elementor-widget-heading) h6.elementor-heading-title{ font-family:'Inter',sans-serif !important; font-size:13px !important; font-weight:600 !important; text-transform:uppercase !important; letter-spacing:.18em !important; color:var(--vi-orange-deep) !important; }
.elementor-widget-text-editor,
.elementor-widget-text-editor p,
.elementor-widget-text-editor li,
.elementor-image-box-description,
.elementor-testimonial-content,
.elementor-tab-content{
  font-family:'Inter',sans-serif !important;
  font-size:16.5px !important; line-height:1.75 !important;
  color:var(--vi-body) !important; font-weight:400 !important;
  text-transform:none !important;
}
.elementor-widget-text-editor strong{ color:var(--vi-ink); font-weight:600; }
a{ transition:color .2s ease; }

/* Section-title accent bar */
.elementor-element-30e5297 .elementor-heading-title::after,
.elementor-element-32bd412c .elementor-heading-title::after,
.elementor-element-6abcc723 .elementor-heading-title::after,
.elementor-element-5ddf41ff .elementor-heading-title::after,
.elementor-element-609f773c .elementor-heading-title::after,
.elementor-element-6d62f0ec .elementor-heading-title::after{
  content:""; display:block; width:56px; height:4px; border-radius:4px;
  background:var(--vi-grad-accent); margin:20px auto 0;
}

/* ---------- Buttons ---------- */
.elementor-button,
.elementor-widget-button .elementor-button{
  background:var(--vi-grad-accent) !important;
  color:#fff !important; fill:#fff !important;
  border:0 !important; border-radius:8px !important;
  padding:17px 36px !important;
  font-family:'Inter',sans-serif !important; font-size:14px !important; font-weight:600 !important;
  letter-spacing:.08em !important; text-transform:uppercase !important; line-height:1 !important;
  box-shadow:0 12px 28px -10px rgba(228,87,46,.55) !important;
  transition:transform .25s ease, box-shadow .25s ease, filter .25s ease !important;
}
.elementor-button:hover,.elementor-button:focus{
  color:#fff !important; transform:translateY(-2px);
  filter:brightness(1.06); box-shadow:0 18px 34px -12px rgba(228,87,46,.65) !important;
}
.elementor-button:hover svg{ fill:#fff !important; }

/* ---------- Site header (theme) ---------- */
.site-header,#site-header,header.site-header{
  background:var(--vi-forest) !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
  box-shadow:0 8px 28px -12px rgba(0,0,0,.45) !important;
  padding-top:12px !important; padding-bottom:12px !important;
  position:sticky; top:0; z-index:999;
}
.admin-bar .site-header{ top:32px; }
.site-header .custom-logo,.site-header .site-logo img,.custom-logo-link img{
  max-height:68px !important; width:auto !important; height:auto;
  filter:drop-shadow(0 4px 10px rgba(0,0,0,.35));
}
.site-header .site-title,.site-header .site-title a{ color:#fff !important; font-family:'Manrope',sans-serif !important; font-weight:800 !important; letter-spacing:.02em; }
.site-header .site-description{ color:var(--vi-leaf-light) !important; font-size:13px !important; max-width:520px; line-height:1.5; }
.site-header nav a,.site-header .site-navigation a,.site-header .menu a{
  color:#E8F0E3 !important; font-family:'Inter',sans-serif !important;
  font-size:14px !important; font-weight:500 !important;
  letter-spacing:.08em !important; text-transform:uppercase !important;
}
.site-header nav a:hover,.site-header .menu .current-menu-item > a,.site-header .menu a:hover{ color:var(--vi-orange) !important; }
.site-header .sub-menu,.site-header .site-navigation-dropdown{ background:var(--vi-green-900) !important; }
.site-navigation-toggle,.site-navigation-toggle-holder .site-navigation-toggle{ background:transparent !important; color:#fff !important; border:1px solid rgba(255,255,255,.3) !important; border-radius:8px !important; }
.site-navigation-toggle i,.site-navigation-toggle svg{ color:#fff !important; fill:#fff !important; }

/* ---------- Site footer (theme) ---------- */
.site-footer,#site-footer{ background:#0B1F14 !important; color:#B9C7BD !important; border-top:3px solid var(--vi-orange) !important; }
.site-footer a,.site-footer .site-title a{ color:#E8F0E3 !important; }
.site-footer a:hover{ color:var(--vi-orange) !important; }

/* =========================================================
   HOME
   ========================================================= */
/* Hero */
.elementor-element-d5cfde3{
  background:var(--vi-grad-dark) !important;
  --min-height:88vh !important; --gap:22px !important;
  --padding-top:90px !important; --padding-bottom:110px !important;
  --padding-left:6% !important; --padding-right:6% !important;
  position:relative; overflow:hidden;
}
.elementor-element-d5cfde3::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:56px 56px;
  -webkit-mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%);
          mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%);
}
.elementor-element-d5cfde3 > *{ position:relative; z-index:1; }
.elementor-element-3ecd55be{ background:transparent !important; order:2; }
.elementor-element-3ecd55be .elementor-heading-title,
.elementor-element-3ecd55be .elementor-heading-title a{ color:#FFFFFF !important; font-size:clamp(46px,7vw,92px) !important; }
.elementor-element-b22e2cb{ order:1; }
.elementor-element-b22e2cb img{
  width:190px !important; height:190px !important; object-fit:cover;
  border-radius:24px !important;
  box-shadow:0 0 0 6px rgba(155,208,106,.18),0 28px 60px -20px rgba(0,0,0,.6) !important;
}
.elementor-element-0cbeedf{ order:3; }
.elementor-element-0cbeedf .elementor-heading-title{
  color:#D9E8D0 !important; font-family:'Inter',sans-serif !important;
  font-size:clamp(18px,1.9vw,24px) !important; font-weight:400 !important;
  letter-spacing:.01em !important; line-height:1.5 !important;
}
.elementor-element-b7ce88c{ order:4; margin-top:10px !important; }

/* Our Offerings */
.elementor-element-76b52626{
  --margin-top:0px !important;
  --padding-top:110px !important; --padding-bottom:110px !important;
  --padding-left:6% !important; --padding-right:6% !important;
  background:#FFFFFF !important;
}
.elementor-element-30e5297 .elementor-heading-title{ color:var(--vi-ink) !important; }
.elementor-element-ccbb979 .elementor-heading-title{ color:var(--vi-muted) !important; }
.elementor-element-b2d7dbe{ --gap:28px !important; --margin-top:36px !important; --flex-wrap:wrap !important; justify-content:center !important; }
.elementor-element-43ed2439,.elementor-element-3afe9b04,.elementor-element-4013ea92{
  max-width:none !important; width:auto !important; flex:1 1 300px !important;
  --container-widget-width:auto !important;
}
.elementor-widget-image-box .elementor-image-box-wrapper{
  background:#fff; border:1px solid var(--vi-line); border-radius:var(--vi-radius);
  overflow:hidden; height:100%; box-shadow:var(--vi-shadow-sm);
  transition:transform .3s ease, box-shadow .3s ease;
}
.elementor-widget-image-box:hover .elementor-image-box-wrapper{ transform:translateY(-6px); box-shadow:var(--vi-shadow); }
.elementor-widget-image-box .elementor-image-box-img{ margin:0 !important; width:100% !important; display:block; }
.elementor-widget-image-box .elementor-image-box-img img{ width:100% !important; aspect-ratio:4/3; object-fit:cover; display:block; }
.elementor-widget-image-box .elementor-image-box-content{ padding:28px 28px 32px; border-top:4px solid var(--vi-leaf); }
.elementor-widget-image-box .elementor-image-box-title{
  font-family:'Manrope',sans-serif !important; font-size:22px !important; font-weight:800 !important;
  color:var(--vi-ink) !important; margin-bottom:10px !important; text-transform:none !important;
}
.elementor-widget-image-box .elementor-image-box-description{ color:var(--vi-body) !important; font-size:15.5px !important; }
.elementor-element-33e86e03{ text-align:center !important; margin-top:48px !important; padding:0 !important; }

/* Why Choose Us */
.elementor-element-2b03c396{
  background:var(--vi-grad-dark) !important;
  --margin-top:0px !important; --gap:48px !important;
  --padding-top:110px !important; --padding-bottom:110px !important;
  --padding-left:6% !important; --padding-right:6% !important;
}
.elementor-element-32bd412c{ padding:0 !important; }
.elementor-element-32bd412c .elementor-heading-title{ color:#FFFFFF !important; }
.elementor-element-2230900{ --gap:24px !important; --flex-wrap:wrap !important; }
.elementor-element-3422c57e,.elementor-element-3c11ef1e,.elementor-element-896f1cc,.elementor-element-28ff6772{
  background:rgba(255,255,255,.05) !important;
  border:1px solid rgba(255,255,255,.12) !important; border-radius:var(--vi-radius) !important;
  --padding-top:40px !important; --padding-bottom:40px !important;
  --padding-left:28px !important; --padding-right:28px !important;
  flex:1 1 230px !important; --width:auto !important;
  backdrop-filter:blur(4px); transition:transform .3s ease, background .3s ease, border-color .3s ease;
}
.elementor-element-3422c57e:hover,.elementor-element-3c11ef1e:hover,.elementor-element-896f1cc:hover,.elementor-element-28ff6772:hover{
  transform:translateY(-6px); background:rgba(255,255,255,.08) !important; border-color:rgba(242,138,30,.55) !important;
}
.elementor-element-2b03c396 .elementor-element-2230900 .elementor-heading-title{
  color:#FFFFFF !important; font-family:'Manrope',sans-serif !important; font-size:20px !important; font-weight:700 !important; text-transform:none !important;
}
.elementor-element-2b03c396 .elementor-widget-divider{ --divider-color:#F28A1E !important; }
.elementor-element-2b03c396 .elementor-widget-text-editor,
.elementor-element-2b03c396 .elementor-widget-text-editor p{ color:#C9D8CD !important; font-size:15.5px !important; }

/* Client Testimonials */
.elementor-element-7ec971ec{
  background:var(--vi-soft) !important;
  --margin-top:0px !important; --gap:48px !important;
  --padding-top:110px !important; --padding-bottom:120px !important;
  --padding-left:6% !important; --padding-right:6% !important;
}
.elementor-element-3e87c6c2{ --gap:28px !important; --flex-wrap:wrap !important; align-items:stretch !important; }
.elementor-element-240c4796,.elementor-element-7ff56a9e,.elementor-element-63e03c6{
  max-width:none !important; width:auto !important; flex:1 1 280px !important; align-self:stretch !important;
  --container-widget-width:auto !important;
  background:#FFFFFF !important; border:1px solid var(--vi-line) !important;
  border-top:4px solid var(--vi-orange) !important; border-radius:var(--vi-radius) !important;
  padding:40px 34px !important; box-shadow:var(--vi-shadow-sm) !important;
}
.elementor-widget-testimonial .elementor-testimonial-content{ font-size:17px !important; line-height:1.75 !important; color:var(--vi-ink) !important; }
.elementor-widget-testimonial .elementor-testimonial-name{
  font-family:'Manrope',sans-serif !important; font-size:15px !important; font-weight:800 !important;
  color:var(--vi-green-700) !important; text-transform:uppercase !important; letter-spacing:.1em !important;
}
.elementor-widget-testimonial .elementor-testimonial-meta{ margin-top:22px !important; }

/* =========================================================
   OUR SERVICES
   ========================================================= */
.elementor-element-25a8cae7{
  background:var(--vi-grad-dark) !important;
  --margin-top:0px !important; --gap:18px !important;
  --padding-top:120px !important; --padding-bottom:110px !important;
}
.elementor-element-37455a3 .elementor-heading-title{ color:#FFFFFF !important; }
.elementor-element-3b43db54 .elementor-heading-title{
  color:#D9E8D0 !important; font-family:'Inter',sans-serif !important;
  font-size:clamp(18px,1.8vw,22px) !important; font-weight:400 !important; letter-spacing:0 !important;
}
/* Service cards 2x2 */
.elementor-element-4f8430b3{
  --margin-top:0px !important; --gap:32px !important; --flex-wrap:wrap !important;
  --padding-top:100px !important; --padding-bottom:100px !important;
  --padding-left:6% !important; --padding-right:6% !important;
}
.elementor-element-66c691b4,.elementor-element-4a9cd723,.elementor-element-527f3161,.elementor-element-225a89b7{
  --width:calc(50% - 16px) !important; --margin-top:0px !important;
  --flex-direction:column !important; flex-direction:column !important;
  background:#FFFFFF !important; border:1px solid var(--vi-line) !important;
  border-radius:var(--vi-radius) !important; overflow:hidden !important;
  box-shadow:var(--vi-shadow-sm) !important;
  transition:transform .3s ease, box-shadow .3s ease;
}
.elementor-element-66c691b4:hover,.elementor-element-4a9cd723:hover,.elementor-element-527f3161:hover,.elementor-element-225a89b7:hover{
  transform:translateY(-6px); box-shadow:var(--vi-shadow) !important;
}
.elementor-element-7cc173af,.elementor-element-4172b5af,.elementor-element-3af31d1c,.elementor-element-57d6684f{
  --width:100% !important; width:100% !important; --min-height:280px !important;
  --margin-top:0px !important; --margin-bottom:0px !important; --margin-left:0px !important; --margin-right:0px !important;
  --padding-top:0px !important; --padding-bottom:0px !important; --padding-left:0px !important; --padding-right:0px !important;
  border:0 !important; --border-radius:0 !important; border-radius:0 !important;
  background-size:cover !important; background-position:center !important;
  background-color:var(--vi-soft) !important;
}
.elementor-element-7cc173af img,.elementor-element-4172b5af img{
  width:100% !important; height:280px !important; object-fit:cover !important; display:block;
}
.elementor-element-591f9b37,.elementor-element-563ce5e0,.elementor-element-2793d952,.elementor-element-328b7604{
  --width:100% !important; width:100% !important;
  --padding-top:34px !important; --padding-bottom:38px !important; --padding-left:36px !important; --padding-right:36px !important;
  justify-content:flex-start !important;
}
.elementor-element-16fa52b6 .elementor-heading-title,.elementor-element-756f131e .elementor-heading-title,
.elementor-element-70b46773 .elementor-heading-title,.elementor-element-308e302f .elementor-heading-title{
  font-size:26px !important; font-weight:800 !important; color:var(--vi-ink) !important; text-align:left !important;
}
.elementor-element-4f8430b3 .elementor-widget-divider{ --divider-color:#F28A1E !important; --divider-border-width:3px !important; }
.elementor-element-4f8430b3 .elementor-divider-separator{ width:48px !important; margin:0 !important; }
.elementor-element-4f8430b3 .elementor-divider{ text-align:left !important; padding-block:12px 14px !important; }
.elementor-element-4f8430b3 .elementor-widget-text-editor{ text-align:left !important; width:100% !important; max-width:100% !important; }

/* Pathway To Installation */
.elementor-element-72365be8{
  background:var(--vi-soft) !important;
  --margin-top:0px !important; --min-height:0px !important; --gap:56px !important;
  --padding-top:110px !important; --padding-bottom:110px !important;
  --padding-left:6% !important; --padding-right:6% !important;
}
.elementor-element-5a5cd79a ol{ list-style:none !important; counter-reset:vi-step; padding:0 !important; margin:26px 0 30px !important; }
.elementor-element-5a5cd79a ol li{
  counter-increment:vi-step; position:relative;
  background:#FFFFFF; border:1px solid var(--vi-line); border-radius:12px;
  padding:18px 20px 18px 74px !important; margin-bottom:14px !important;
  box-shadow:var(--vi-shadow-sm); font-size:15.5px !important;
}
.elementor-element-5a5cd79a ol li::before{
  content:counter(vi-step); position:absolute; left:18px; top:50%; transform:translateY(-50%);
  width:38px; height:38px; border-radius:50%;
  background:var(--vi-grad-accent); color:#fff;
  font:700 16px/38px 'Manrope',sans-serif; text-align:center;
}
.elementor-element-3f7925dc img,.elementor-element-5fef894 img{
  border-radius:var(--vi-radius) !important; box-shadow:var(--vi-shadow) !important;
}

/* FAQ */
.elementor-element-190f0d8e{
  --margin-top:0px !important;
  --padding-top:110px !important; --padding-bottom:120px !important;
  --padding-left:6% !important; --padding-right:6% !important;
}
.elementor-element-292de1f{ --gap:24px !important; --margin-top:40px !important; --flex-wrap:wrap !important; }
.elementor-element-2510ec41,.elementor-element-5048da8b{
  max-width:none !important; width:auto !important; flex:1 1 380px !important;
  border:0 !important; padding:0 !important; --container-widget-width:auto !important;
}
.elementor-widget-toggle .elementor-toggle-item{
  background:#FFFFFF; border:1px solid var(--vi-line); border-radius:12px;
  margin-bottom:14px !important; box-shadow:var(--vi-shadow-sm); overflow:hidden;
}
.elementor-widget-toggle .elementor-tab-title{
  border:0 !important; padding:20px 24px !important;
  font-family:'Manrope',sans-serif !important; font-size:17px !important; font-weight:700 !important;
}
.elementor-widget-toggle .elementor-tab-title a,.elementor-widget-toggle .elementor-toggle-title{ color:var(--vi-ink) !important; font-family:'Manrope',sans-serif !important; font-size:17px !important; font-weight:700 !important; text-transform:none !important; }
.elementor-widget-toggle .elementor-tab-title.elementor-active a{ color:var(--vi-orange-deep) !important; }
.elementor-widget-toggle .elementor-toggle-icon,.elementor-widget-toggle .elementor-toggle-icon svg{ color:var(--vi-orange) !important; fill:var(--vi-orange) !important; }
.elementor-widget-toggle .elementor-tab-content{ border:0 !important; padding:0 24px 22px !important; font-size:15.5px !important; }

/* =========================================================
   CONTACT US
   ========================================================= */
.elementor-element-24c16cf6{
  background:var(--vi-soft) !important;
  --min-height:0px !important; --gap:48px !important; --flex-wrap:wrap !important;
  --padding-top:110px !important; --padding-bottom:120px !important;
  --padding-left:6% !important; --padding-right:6% !important;
  align-items:flex-start !important;
}
.elementor-element-71f79242{
  background:#FFFFFF !important; border:1px solid var(--vi-line) !important;
  border-top:4px solid var(--vi-orange) !important; border-radius:var(--vi-radius) !important;
  box-shadow:var(--vi-shadow) !important;
  --padding-top:48px !important; --padding-bottom:48px !important; --padding-left:48px !important; --padding-right:48px !important;
  --gap:22px !important; flex:1 1 380px !important; --width:auto !important;
}
.elementor-element-4083a1f8{ padding:0 !important; margin:0 !important; }
.elementor-element-4083a1f8 .elementor-heading-title{
  font-family:'Manrope',sans-serif !important; font-size:clamp(34px,4vw,52px) !important; font-weight:800 !important; color:var(--vi-ink) !important;
}
.elementor-element-aa998ed{
  margin:0 !important; width:100% !important; max-width:100% !important;
  font-family:'Inter',sans-serif !important; font-size:18px !important; font-weight:400 !important; line-height:1.9 !important; color:var(--vi-body) !important;
}
.elementor-element-aa998ed p{ font-size:18px !important; margin-bottom:6px !important; }
.elementor-element-aa998ed u{ text-decoration:none !important; font-family:'Manrope',sans-serif; font-weight:800; font-size:20px; color:var(--vi-green-700); letter-spacing:.02em; }
.elementor-element-aa998ed a,.elementor-element-aa998ed a[style]{ color:var(--vi-orange-deep) !important; text-decoration:none !important; font-weight:600; }
.elementor-element-aa998ed a:hover{ color:var(--vi-green-700) !important; }
.elementor-element-694631f img{
  max-width:220px !important; border-radius:var(--vi-radius) !important; box-shadow:var(--vi-shadow-sm) !important;
}
.elementor-element-fef8663,.elementor-element-4686c01{ flex:1 1 380px !important; --width:auto !important; }

/* Contact form (Forminator) */
.forminator-ui.forminator-custom-form{
  background:#FFFFFF !important; border:1px solid var(--vi-line) !important; border-radius:var(--vi-radius) !important;
  padding:40px !important; box-shadow:var(--vi-shadow) !important;
}
.forminator-ui .forminator-label{ font-family:'Inter',sans-serif !important; font-weight:600 !important; font-size:13px !important; letter-spacing:.06em !important; text-transform:uppercase !important; color:var(--vi-ink) !important; }
.forminator-ui .forminator-input,.forminator-ui .forminator-textarea,.forminator-ui select{
  font-family:'Inter',sans-serif !important; font-size:15.5px !important;
  background:var(--vi-soft) !important; border:1px solid var(--vi-line) !important; border-radius:8px !important;
  padding:14px 16px !important; color:var(--vi-ink) !important; box-shadow:none !important;
}
.forminator-ui .forminator-input:focus,.forminator-ui .forminator-textarea:focus{
  border-color:var(--vi-leaf) !important; background:#fff !important; box-shadow:0 0 0 4px rgba(108,179,63,.15) !important; outline:none !important;
}
.forminator-ui .forminator-button,.forminator-ui .forminator-button-submit{
  background:var(--vi-grad-accent) !important; color:#fff !important; border:0 !important; border-radius:8px !important;
  padding:16px 34px !important; font-family:'Inter',sans-serif !important; font-weight:600 !important;
  letter-spacing:.08em !important; text-transform:uppercase !important; font-size:14px !important;
  box-shadow:0 12px 28px -10px rgba(228,87,46,.55) !important;
}

/* =========================================================
   OUR STORY (styling only — text left exactly as it is)
   ========================================================= */
.elementor-element-47a8853c{ background:var(--vi-soft) !important; }
.elementor-element-6aa6c5dc,.elementor-element-689f8e89,.elementor-element-1b7d7832,.elementor-element-5fa27416{
  background:#FFFFFF !important; border:1px solid var(--vi-line) !important; border-top:4px solid var(--vi-leaf) !important;
  border-radius:var(--vi-radius) !important; box-shadow:var(--vi-shadow-sm) !important;
}
.elementor-element-58f9e4e,.elementor-element-5913ec92,.elementor-element-7c5a6286{
  background:#FFFFFF; border:1px solid var(--vi-line); border-top:4px solid var(--vi-orange);
  border-radius:var(--vi-radius); padding:36px 30px; box-shadow:var(--vi-shadow-sm);
}
.elementor-element-37cda134{ border-radius:var(--vi-radius) !important; }

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media (max-width:1024px){
  .elementor-element-66c691b4,.elementor-element-4a9cd723,.elementor-element-527f3161,.elementor-element-225a89b7{ --width:100% !important; }
}
@media (max-width:767px){
  .elementor-element-d5cfde3{ --min-height:auto !important; --padding-top:70px !important; --padding-bottom:80px !important; }
  .elementor-element-b22e2cb img{ width:140px !important; height:140px !important; }
  .elementor-element-76b52626,.elementor-element-2b03c396,.elementor-element-7ec971ec,
  .elementor-element-4f8430b3,.elementor-element-72365be8,.elementor-element-190f0d8e,.elementor-element-24c16cf6{
    --padding-top:72px !important; --padding-bottom:72px !important; --padding-left:20px !important; --padding-right:20px !important;
  }
  .elementor-element-25a8cae7{ --padding-top:80px !important; --padding-bottom:70px !important; }
  .elementor-element-71f79242{ --padding-top:32px !important; --padding-bottom:32px !important; --padding-left:24px !important; --padding-right:24px !important; }
  .elementor-element-591f9b37,.elementor-element-563ce5e0,.elementor-element-2793d952,.elementor-element-328b7604{ --padding-left:24px !important; --padding-right:24px !important; }
  .forminator-ui.forminator-custom-form{ padding:24px !important; }
  .admin-bar .site-header{ top:0; }
}

/* =========================================================
   HEADER MENU (Hello Elementor theme)
   ========================================================= */
.site-header .header-inner{ max-width:1280px !important; width:100% !important; margin:0 auto !important; padding:0 24px !important; align-items:center !important; }
.site-header .site-branding{ display:flex; align-items:center; gap:14px; }
.site-header .site-navigation ul.menu{ gap:6px; align-items:center; }
.site-header .site-navigation ul.menu > li > a{
  padding:10px 16px !important; border-radius:6px; position:relative;
}
.site-header .site-navigation ul.menu > li > a::after{
  content:""; position:absolute; left:16px; right:16px; bottom:4px; height:2px;
  background:var(--vi-orange); transform:scaleX(0); transform-origin:left; transition:transform .25s ease;
}
.site-header .site-navigation ul.menu > li > a:hover::after,
.site-header .site-navigation ul.menu > li.current-menu-item > a::after{ transform:scaleX(1); }
.site-header .site-navigation ul.menu > li.current-menu-item > a{ color:#FFFFFF !important; }
.site-navigation-dropdown ul.menu,.site-navigation-dropdown ul.menu li{ background:var(--vi-green-900) !important; }
.site-navigation-dropdown ul.menu li a{
  background:var(--vi-green-900) !important; color:#E8F0E3 !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
  font-family:'Inter',sans-serif !important; font-size:14px !important; letter-spacing:.08em !important; text-transform:uppercase !important;
  padding:16px 24px !important;
}
.site-navigation-dropdown ul.menu li.current-menu-item a,.site-navigation-dropdown ul.menu li a:hover{ background:var(--vi-green-700) !important; color:var(--vi-orange) !important; }
.site-navigation-toggle-holder .site-navigation-toggle-icon,
.site-navigation-toggle-holder .site-navigation-toggle-icon::before,
.site-navigation-toggle-holder .site-navigation-toggle-icon::after{ background-color:#FFFFFF !important; }


/* --- WPWriter addition --- */

/* Hide the theme's built-in "© 2022 All Rights Reserved" line (not site content) */
.site-footer .copyright,#site-footer .copyright{ display:none !important; }
.site-footer .footer-inner{ max-width:1280px !important; margin:0 auto !important; padding:36px 24px !important; }
.site-footer .site-description{ color:#B9C7BD !important; font-size:14px !important; max-width:560px; }
.site-footer .custom-logo{ max-height:72px !important; width:auto !important; }


/* --- WPWriter addition --- */

/* =========================================================
   UPDATE 2 — new logo everywhere, contact page in brand colours
   ========================================================= */
/* Header: larger logo, no box/border, logo + tagline side by side */
.site-header .site-branding{ flex-direction:row !important; align-items:center !important; gap:18px !important; }
.site-header .site-logo,.site-header .custom-logo-link,.site-header .site-logo a{
  border:0 !important; outline:0 !important; box-shadow:none !important; background:transparent !important; padding:0 !important;
}
.site-header .custom-logo,.site-header .site-logo img{
  width:84px !important; height:84px !important; max-width:none !important; max-height:none !important;
  object-fit:contain !important; border:0 !important; border-radius:50% !important;
}
.site-header .site-description{ max-width:420px !important; font-size:13px !important; line-height:1.5 !important; margin:0 !important; }

/* Home hero: show the new logo in place of the old square logo */
.elementor-element-b22e2cb{
  width:230px !important; height:230px !important; max-width:230px !important;
  background:url("https://vendingimperium.com/wp-content/uploads/2026/09/Subject_fixed_transparent.png") center / contain no-repeat !important;
  filter:drop-shadow(0 24px 40px rgba(0,0,0,.45));
  align-self:center !important;
}
.elementor-element-b22e2cb img{ visibility:hidden !important; box-shadow:none !important; width:230px !important; height:230px !important; }
@media (max-width:767px){
  .elementor-element-b22e2cb,.elementor-element-b22e2cb img{ width:160px !important; height:160px !important; max-width:160px !important; }
  .site-header .custom-logo,.site-header .site-logo img{ width:64px !important; height:64px !important; }
  .site-header .site-description{ display:none !important; }
}

/* Contact Us page — brand colours */
.elementor-element-24c16cf6{
  background:var(--vi-grad-dark) !important;
  --padding-top:120px !important; --padding-bottom:130px !important;
  align-items:stretch !important; position:relative; overflow:hidden;
}
.elementor-element-24c16cf6::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:56px 56px;
  -webkit-mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%);
          mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%);
}
.elementor-element-24c16cf6 > *{ position:relative; z-index:1; }
.elementor-element-71f79242{
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.14) !important; border-top:4px solid var(--vi-orange) !important;
  box-shadow:0 30px 60px -30px rgba(0,0,0,.6) !important; backdrop-filter:blur(6px);
  justify-content:center !important;
}
.elementor-element-4083a1f8 .elementor-heading-title{ color:#FFFFFF !important; }
.elementor-element-4083a1f8 .elementor-heading-title::after{
  content:""; display:block; width:56px; height:4px; border-radius:4px; background:var(--vi-grad-accent); margin-top:18px;
}
.elementor-element-aa998ed,.elementor-element-aa998ed p{ color:#D9E8D0 !important; }
.elementor-element-aa998ed p{ padding:14px 0 !important; margin:0 !important; border-bottom:1px solid rgba(255,255,255,.10); }
.elementor-element-aa998ed p:last-child{ border-bottom:0; }
.elementor-element-aa998ed u{ color:var(--vi-leaf-light) !important; font-size:22px !important; }
.elementor-element-aa998ed a,.elementor-element-aa998ed a[style],.elementor-element-aa998ed a i{ color:var(--vi-orange) !important; font-style:normal !important; }
.elementor-element-aa998ed a:hover{ color:#FFFFFF !important; }
/* Remove the white logo image from the Contact page */
.elementor-element-694631f{ display:none !important; }
/* Form card */
.elementor-element-24c16cf6 .forminator-ui.forminator-custom-form{ border-top:4px solid var(--vi-leaf) !important; box-shadow:0 30px 60px -30px rgba(0,0,0,.6) !important; }


/* --- WPWriter addition --- */

/* =========================================================
   UPDATE 3 — Our Services: show full machine photos (no cropping)
   ========================================================= */
.elementor-element-7cc173af,.elementor-element-4172b5af,.elementor-element-3af31d1c,.elementor-element-57d6684f{
  --min-height:360px !important; min-height:360px !important; height:360px !important;
  background-color:#F4F7F1 !important;
  background-size:contain !important; background-repeat:no-repeat !important; background-position:center !important;
  background-origin:content-box !important;
  --padding-top:18px !important; --padding-bottom:18px !important; --padding-left:18px !important; --padding-right:18px !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
  border-bottom:1px solid var(--vi-line) !important;
}
/* the two boxes that hold a real photo widget: drop the template placeholder behind it */
.elementor-element-7cc173af,.elementor-element-4172b5af{ background-image:none !important; }
.elementor-element-7cc173af .elementor-widget-image,.elementor-element-4172b5af .elementor-widget-image{ width:100% !important; height:100% !important; }
.elementor-element-7cc173af .elementor-widget-container,.elementor-element-4172b5af .elementor-widget-container{ height:100% !important; display:flex; align-items:center; justify-content:center; }
.elementor-element-7cc173af img,.elementor-element-4172b5af img{
  width:100% !important; height:100% !important; max-height:324px !important;
  object-fit:contain !important; object-position:center !important;
}
/* Pathway section photos: show whole image too */
.elementor-element-3f7925dc img,.elementor-element-5fef894 img{ height:auto !important; object-fit:contain !important; }
@media (max-width:767px){
  .elementor-element-7cc173af,.elementor-element-4172b5af,.elementor-element-3af31d1c,.elementor-element-57d6684f{
    --min-height:280px !important; min-height:280px !important; height:280px !important;
  }
  .elementor-element-7cc173af img,.elementor-element-4172b5af img{ max-height:244px !important; }
}


/* --- WPWriter addition --- */

/* =========================================================
   UPDATE 4 — Our Services: frame hugs each photo (no empty space)
   ========================================================= */
/* image areas: no grey box, no fixed height, just hold the framed photo */
.elementor-element-7cc173af,.elementor-element-4172b5af,.elementor-element-3af31d1c,.elementor-element-57d6684f{
  --min-height:0px !important; min-height:0 !important; height:auto !important;
  background-color:transparent !important; border:0 !important; border-bottom:0 !important;
  --padding-top:0px !important; --padding-bottom:0px !important; --padding-left:0px !important; --padding-right:0px !important;
}
.elementor-element-7cc173af,.elementor-element-4172b5af{
  --width:100% !important; width:100% !important; padding:32px 32px 0 !important; box-sizing:border-box !important;
}
.elementor-element-7cc173af .elementor-widget-image,.elementor-element-4172b5af .elementor-widget-image,
.elementor-element-7cc173af .elementor-widget-container,.elementor-element-4172b5af .elementor-widget-container{
  width:auto !important; height:auto !important; border:0 !important; padding:0 !important; background:none !important; box-shadow:none !important;
}
.elementor-element-7cc173af img,.elementor-element-4172b5af img{
  width:auto !important; height:auto !important; max-width:100% !important; max-height:380px !important;
  object-fit:initial !important; display:block !important; margin:0 auto !important;
  border:3px solid var(--vi-green-700) !important; border-radius:12px !important;
  box-shadow:0 14px 30px -14px rgba(15,42,27,.45) !important;
}
/* photos set as box backgrounds: size the box to the photo's exact shape */
.elementor-element-3af31d1c,.elementor-element-57d6684f{
  --width:auto !important; align-self:center !important; flex:0 0 auto !important;
  margin:32px auto 0 !important; box-sizing:border-box !important;
  background-size:100% 100% !important; background-origin:border-box !important; background-clip:border-box !important;
  border:3px solid var(--vi-green-700) !important; border-radius:12px !important;
  box-shadow:0 14px 30px -14px rgba(15,42,27,.45) !important;
}
.elementor-element-3af31d1c{ aspect-ratio:1 / 1 !important; width:min(380px, calc(100% - 64px)) !important; }
.elementor-element-57d6684f{ aspect-ratio:16 / 9 !important; width:calc(100% - 64px) !important; max-width:620px !important; }
@media (max-width:767px){
  .elementor-element-7cc173af,.elementor-element-4172b5af{ padding:24px 24px 0 !important; }
  .elementor-element-7cc173af img,.elementor-element-4172b5af img{ max-height:300px !important; }
  .elementor-element-3af31d1c{ width:min(300px, calc(100% - 48px)) !important; margin-top:24px !important; }
  .elementor-element-57d6684f{ width:calc(100% - 48px) !important; margin-top:24px !important; }
}


/* --- WPWriter addition --- */

/* UPDATE 5 — shorter home hero */
.elementor-element-d5cfde3{
  --min-height:0px !important; min-height:0 !important;
  --padding-top:70px !important; --padding-bottom:80px !important;
}
@media (max-width:767px){
  .elementor-element-d5cfde3{ --padding-top:50px !important; --padding-bottom:60px !important; }
}


/* --- WPWriter addition --- */
.home .wp-block-post-title, .home .wp-block-query-title, .home .entry-title { display: none !important; }

/* --- WPWriter addition --- */

/* UPDATE 6 — Managed Coffee Services page (ID 961): full-width, no theme title */
.page-id-961 .page-header,.page-id-961 .entry-title{ display:none !important; }
.page-id-961 .site-main,.page-id-961 main#content{ max-width:none !important; width:100% !important; padding:0 !important; margin:0 !important; }
.page-id-961 .page-content{ margin:0 !important; padding:0 !important; }
.page-id-961 .page-content > div:first-child{ margin-top:0 !important; }
.page-id-961 .page-content a{ text-decoration:none !important; }
html,body{ overflow-x:hidden; }


/* --- WPWriter addition --- */

/* UPDATE 7 — new Our Story page (ID 967): full-width, no theme title */
.page-id-967 .page-header,.page-id-967 .entry-title{ display:none !important; }
.page-id-967 .site-main,.page-id-967 main#content{ max-width:none !important; width:100% !important; padding:0 !important; margin:0 !important; }
.page-id-967 .page-content{ margin:0 !important; padding:0 !important; }
.page-id-967 .page-content a{ text-decoration:none !important; }


/* --- WPWriter addition --- */

/* UPDATE 8 — new home hero line (display text; permanent change should be made in Elementor) */
.elementor-element-0cbeedf .elementor-heading-title{ font-size:0 !important; line-height:0 !important; letter-spacing:0 !important; }
.elementor-element-0cbeedf .elementor-heading-title::before{
  content:"Southeastern PA\2019s Complete Workplace Refreshment Partner";
  display:block; font-family:'Inter',sans-serif; font-size:clamp(18px,2vw,25px); font-weight:500;
  line-height:1.5; letter-spacing:.01em; color:#D9E8D0;
}


/* --- WPWriter addition --- */

/* UPDATE 9 — hero line without "Workplace" */
.elementor-element-0cbeedf .elementor-heading-title::before{ content:"Southeastern PA\2019s Complete Refreshment Partner"; }


/* --- WPWriter addition --- */

/* UPDATE 10 — FAQ "How do you ensure product freshness and quality?" new answer (display text; make permanent in Elementor) */
.elementor-element-5048da8b .elementor-toggle-item:nth-child(2) .elementor-tab-content,
.elementor-element-5048da8b .elementor-toggle-item:nth-child(2) .elementor-tab-content p{ font-size:0 !important; line-height:0 !important; margin:0 !important; }
.elementor-element-5048da8b .elementor-toggle-item:nth-child(2) .elementor-tab-content::before{
  content:"We use a software-based inventory system that tracks the products in our machines and notifies our team before items reach their expiration date. That lets us pull and replace products ahead of time, so everything on the shelf stays fresh. We also rotate stock frequently and regularly inspect our machines to maintain high standards.";
  display:block; font-family:'Inter',sans-serif; font-size:15.5px; line-height:1.75; color:#3E4D43;
}


/* --- WPWriter addition --- */

/* =========================================================
   UPDATE 11 — Contact form (Forminator #445) — modern, on-brand
   ========================================================= */
#forminator-module-445.forminator-ui{
  background:#FFFFFF !important; border:0 !important; border-top:5px solid #F28A1E !important;
  border-radius:18px !important; padding:44px 44px 40px !important;
  box-shadow:0 40px 80px -40px rgba(0,0,0,.65) !important;
  font-family:'Inter',sans-serif !important; max-width:none !important;
}
#forminator-module-445.forminator-ui .forminator-row{ margin-bottom:18px !important; }
#forminator-module-445.forminator-ui .forminator-row:last-child{ margin-bottom:0 !important; }

/* Section titles (Personal Information / Appointment Details) */
#forminator-module-445.forminator-ui .forminator-title,
#forminator-module-445.forminator-ui .forminator-field-section .forminator-title{
  font-family:'Manrope',sans-serif !important; font-size:15px !important; font-weight:800 !important;
  letter-spacing:.14em !important; text-transform:uppercase !important; color:#1F4D31 !important;
  margin:10px 0 4px !important; padding:0 0 12px 0 !important; border-bottom:2px solid #E2E9DD !important; position:relative;
}
#forminator-module-445.forminator-ui .forminator-title::after{
  content:""; position:absolute; left:0; bottom:-2px; width:48px; height:2px; background:#F28A1E;
}
#forminator-module-445.forminator-ui .forminator-subtitle{ color:#66756B !important; font-size:14px !important; }
#forminator-module-445.forminator-ui .forminator-border{ border-color:#E2E9DD !important; }

/* Labels */
#forminator-module-445.forminator-ui .forminator-label{
  display:block !important; margin:0 0 8px !important;
  font-family:'Inter',sans-serif !important; font-size:12.5px !important; font-weight:600 !important;
  letter-spacing:.08em !important; text-transform:uppercase !important; color:#15241B !important;
}
#forminator-module-445.forminator-ui .forminator-required{ color:#E4572E !important; }
#forminator-module-445.forminator-ui .forminator-description{ color:#66756B !important; font-size:13px !important; }

/* Inputs, textarea, date */
#forminator-module-445.forminator-ui .forminator-input,
#forminator-module-445.forminator-ui input[type="text"],
#forminator-module-445.forminator-ui input[type="email"],
#forminator-module-445.forminator-ui input[type="tel"],
#forminator-module-445.forminator-ui .forminator-datepicker,
#forminator-module-445.forminator-ui .forminator-textarea,
#forminator-module-445.forminator-ui textarea,
#forminator-module-445.forminator-ui select{
  width:100% !important; min-height:52px !important;
  background:#F7F9F5 !important; border:1.5px solid #DDE5D8 !important; border-radius:10px !important;
  padding:14px 16px !important; box-shadow:none !important; outline:none !important;
  font-family:'Inter',sans-serif !important; font-size:15.5px !important; line-height:1.4 !important; color:#15241B !important;
  transition:border-color .2s ease, box-shadow .2s ease, background .2s ease !important;
}
#forminator-module-445.forminator-ui .forminator-textarea,
#forminator-module-445.forminator-ui textarea{ min-height:140px !important; resize:vertical; }
#forminator-module-445.forminator-ui .forminator-input::placeholder,
#forminator-module-445.forminator-ui textarea::placeholder{ color:#8C9A90 !important; opacity:1 !important; }
#forminator-module-445.forminator-ui .forminator-input:hover,
#forminator-module-445.forminator-ui textarea:hover{ border-color:#B9CBB0 !important; }
#forminator-module-445.forminator-ui .forminator-input:focus,
#forminator-module-445.forminator-ui .forminator-datepicker:focus,
#forminator-module-445.forminator-ui textarea:focus,
#forminator-module-445.forminator-ui select:focus{
  background:#FFFFFF !important; border-color:#6CB33F !important; box-shadow:0 0 0 4px rgba(108,179,63,.18) !important;
}
/* icons inside inputs (date / phone) */
#forminator-module-445.forminator-ui .forminator-input-with-icon [class*="forminator-icon-"]{ color:#6CB33F !important; }

/* Dropdowns (Forminator select2) */
#forminator-module-445.forminator-ui .select2-container .select2-selection--single,
#forminator-module-445.forminator-ui .select2-selection{
  min-height:52px !important; height:auto !important;
  background:#F7F9F5 !important; border:1.5px solid #DDE5D8 !important; border-radius:10px !important;
  display:flex !important; align-items:center !important; box-shadow:none !important;
}
#forminator-module-445.forminator-ui .select2-selection__rendered{
  padding:12px 44px 12px 16px !important; line-height:1.4 !important;
  font-family:'Inter',sans-serif !important; font-size:15.5px !important; color:#15241B !important;
}
#forminator-module-445.forminator-ui .select2-selection__arrow{ height:100% !important; right:14px !important; }
#forminator-module-445.forminator-ui .select2-selection__arrow [class*="forminator-icon-"],
#forminator-module-445.forminator-ui .select2-selection__arrow b{ color:#F28A1E !important; border-top-color:#F28A1E !important; }
#forminator-module-445.forminator-ui .select2-container--open .select2-selection,
#forminator-module-445.forminator-ui .select2-container--focus .select2-selection{
  background:#FFFFFF !important; border-color:#6CB33F !important; box-shadow:0 0 0 4px rgba(108,179,63,.18) !important;
}
.forminator-custom-form-445.forminator-dropdown--default .select2-dropdown,
.forminator-select-dropdown-container--open .select2-dropdown{
  border:1.5px solid #DDE5D8 !important; border-radius:10px !important; overflow:hidden;
  box-shadow:0 20px 40px -18px rgba(15,42,27,.35) !important; font-family:'Inter',sans-serif !important;
}
.forminator-select-dropdown-container--open .select2-results__option{ padding:11px 16px !important; font-size:15px !important; color:#15241B !important; }
.forminator-select-dropdown-container--open .select2-results__option--highlighted,
.forminator-select-dropdown-container--open .select2-results__option[aria-selected="true"]{
  background:#F4F7F1 !important; color:#1F4D31 !important; font-weight:600 !important;
}

/* Date picker calendar */
#ui-datepicker-div.forminator-custom-form-445,
.forminator-custom-form-445.ui-datepicker{ border-radius:12px !important; box-shadow:0 20px 40px -18px rgba(15,42,27,.35) !important; font-family:'Inter',sans-serif !important; }
.forminator-custom-form-445.ui-datepicker .ui-datepicker-header{ background:#163A25 !important; color:#FFFFFF !important; border-radius:10px 10px 0 0 !important; }
.forminator-custom-form-445.ui-datepicker .ui-state-active,
.forminator-custom-form-445.ui-datepicker td a:hover{ background:#F28A1E !important; color:#FFFFFF !important; }

/* Validation */
#forminator-module-445.forminator-ui .forminator-has_error .forminator-input,
#forminator-module-445.forminator-ui .forminator-has_error textarea{ border-color:#E4572E !important; box-shadow:0 0 0 4px rgba(228,87,46,.12) !important; }
#forminator-module-445.forminator-ui .forminator-error-message{
  background:transparent !important; color:#E4572E !important; padding:6px 0 0 !important; font-size:13px !important; font-weight:500 !important;
}
#forminator-module-445.forminator-ui .forminator-error-message::before{ display:none !important; }
#forminator-module-445.forminator-ui .forminator-response-message.forminator-success{ background:#EAF5E2 !important; color:#1F4D31 !important; border-radius:10px !important; }

/* Submit button */
#forminator-module-445.forminator-ui .forminator-button-submit,
#forminator-module-445.forminator-ui .forminator-button{
  width:100% !important; min-height:56px !important; margin-top:8px !important;
  background:linear-gradient(135deg,#F28A1E,#E4572E) !important; color:#FFFFFF !important;
  border:0 !important; border-radius:10px !important; padding:16px 28px !important;
  font-family:'Inter',sans-serif !important; font-size:15px !important; font-weight:700 !important;
  letter-spacing:.1em !important; text-transform:uppercase !important;
  box-shadow:0 16px 30px -12px rgba(228,87,46,.6) !important; cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease, filter .2s ease !important;
}
#forminator-module-445.forminator-ui .forminator-button-submit:hover{
  transform:translateY(-2px); filter:brightness(1.06); box-shadow:0 22px 38px -14px rgba(228,87,46,.7) !important;
}
@media (max-width:767px){
  #forminator-module-445.forminator-ui{ padding:30px 22px 28px !important; }
}


/* --- WPWriter addition --- */

/* UPDATE 12 — Our Services: remove scattered bold in the service descriptions */
.elementor-element-4f8430b3 .elementor-widget-text-editor strong,
.elementor-element-4f8430b3 .elementor-widget-text-editor b{ font-weight:inherit !important; color:inherit !important; }


/* --- WPWriter addition --- */

/* UPDATE 13 — Home "Why Choose Us": all text white */
.elementor-element-2b03c396 .elementor-heading-title,
.elementor-element-2b03c396 .elementor-heading-title a,
.elementor-element-2b03c396 .elementor-widget-text-editor,
.elementor-element-2b03c396 .elementor-widget-text-editor p,
.elementor-element-2b03c396 .elementor-widget-text-editor *,
.elementor-element-2b03c396 .elementor-element-2230900 .elementor-heading-title{ color:#FFFFFF !important; }


/* --- WPWriter addition --- */

/* UPDATE 14 — emblem on Coffee / About pages: no frame, larger */
.page-id-961 .page-content img,.page-id-967 .page-content img{
  border:0 !important; padding:0 !important; background:transparent !important;
  box-shadow:none !important; outline:0 !important; border-radius:0 !important;
}
.page-id-961 .page-content img[alt="Vending Imperium logo"]{
  width:170px !important; max-width:170px !important; height:auto !important;
  margin:0 auto 26px !important; display:block !important;
  filter:drop-shadow(0 18px 30px rgba(0,0,0,.5)) !important;
}
.page-id-967 .page-content img[alt="Vending Imperium logo"]{
  width:170px !important; max-width:170px !important; height:auto !important;
  filter:drop-shadow(0 20px 36px rgba(0,0,0,.5)) !important;
}


/* --- WPWriter addition --- */

/* UPDATE 15 — lock tab order: Home, Our Services, Managed Coffee, Contact Us, About Us */
.site-navigation ul.menu,.site-navigation-dropdown ul.menu{ display:flex !important; }
.site-navigation-dropdown ul.menu{ flex-direction:column !important; }
ul.menu > li.menu-item-983{ order:1 !important; }
ul.menu > li.menu-item-984{ order:2 !important; }
ul.menu > li.menu-item-985{ order:3 !important; }
ul.menu > li.menu-item-987{ order:4 !important; }
ul.menu > li.menu-item-986{ order:5 !important; }

/* Emblem on Coffee / About pages back to original crisp size */
.page-id-961 .page-content img[alt="Vending Imperium logo"]{ width:110px !important; max-width:110px !important; margin:0 0 24px !important; }
.page-id-967 .page-content img[alt="Vending Imperium logo"]{ width:140px !important; max-width:140px !important; }


/* --- WPWriter addition --- */

/* UPDATE 16 — Coffee page emblem: larger, centered, served from high-res source */
.page-id-961 .page-content img[alt="Vending Imperium logo"]{ width:170px !important; max-width:170px !important; height:auto !important; margin:0 auto 26px !important; image-rendering:auto; }
