/* ===== Ven Group Media — rebrand overrides ===== */

/* Page preloader (loading buffer) */
#vg-preloader{
  position:fixed; inset:0; z-index:100000;
  background:linear-gradient(135deg,#0092ba 0%,#0079a0 55%,#00566e 100%);
  display:flex; align-items:center; justify-content:center;
  opacity:0; visibility:hidden;                 /* hidden by default — no flash */
  transition:opacity .35s ease, visibility .35s ease;
}
html.vg-show-preloader #vg-preloader{ opacity:1; visibility:visible; }  /* shown only when randomly chosen */
#vg-preloader.vg-loaded{ opacity:0 !important; visibility:hidden !important; }
#vg-preloader .vg-spin{
  width:54px; height:54px; border-radius:50%;
  border:5px solid rgba(255,255,255,.25); border-top-color:#fff;
  animation:vg-spin 0.8s linear infinite;
}
@keyframes vg-spin{ to{ transform:rotate(360deg); } }


/* Text wordmark logo (replaces old PNG) */
#logo-container { display:flex; align-items:center; }
.vg-logo{
  display:inline-block; font-family:'Oswald','Open Sans',sans-serif; font-weight:700;
  font-size:27px; line-height:1; letter-spacing:.5px; color:#ffffff; text-decoration:none;
  text-transform:uppercase;
}
.vg-logo b{ color:#3fc9e8; font-weight:700; }
.vg-logo:hover{ text-decoration:none; opacity:.92; }

/* ===== Hero slider (rebuilt, theme slider JS removed) ===== */
.content-slider-wrapper{
  position:relative; overflow:hidden;
  background:linear-gradient(135deg,#0092ba 0%,#0079a0 55%,#00566e 100%);
}
#cs-slider-ul{
  position:relative; list-style:none; margin:0 !important; padding:56px 0 120px !important;
  min-height:0 !important; height:auto !important;
}
#cs-slider-ul{ transition:none !important; }
#cs-slider-ul .cs-content{ padding-top:0 !important; margin-top:0 !important; }
#cs-slider-ul .col{ padding-top:0 !important; margin-top:0 !important; min-height:0 !important; }
/* theme hides slide elements (opacity:0) until its animation JS runs — we stripped that JS */
.cs-element{ opacity:1 !important; transform:none !important; visibility:visible !important; }
#slider-container, .content-slider, .content-slider .cols-wrapper,
.content-slider .section-boxed{ height:auto !important; }
#cs-slider-ul .col{ min-height:0 !important; }
#cs-slider-ul > li{ display:none; }
#cs-slider-ul > li.vg-active{ display:block; animation:vgfade .7s ease both; }
@keyframes vgfade{ from{opacity:0; transform:translateY(10px);} to{opacity:1; transform:none;} }
#cs-slider-ul .cs-content{ max-width:640px !important; width:auto !important; float:none !important; }
.cs-small-title{
  font-family:'Oswald',sans-serif; font-weight:300; text-transform:uppercase;
  font-size:17px; letter-spacing:1.5px; margin:0 0 6px; color:#eafcff; opacity:.95;
}
h1.cs-title{
  font-family:'Oswald',sans-serif; font-weight:700; color:#ffffff !important;
  font-size:52px; line-height:1.04; margin:0 0 16px;
}
#cs-slider-ul .cs-content p{ color:#e8feff; font-size:17px; line-height:1.6; max-width:560px; }
.content-slider .button, #cs-slider-ul .button{
  display:inline-block; margin:14px 12px 0 0 !important; padding:12px 26px !important;
  border-radius:3px; font-weight:700; text-transform:uppercase; letter-spacing:.5px;
  background:#ffffff !important; color:#0092ba !important; border:2px solid #ffffff;
}
#cs-slider-ul .button.btn-alt{
  background:transparent !important; color:#ffffff !important; border:2px solid #ffffff;
}
#cs-slider-ul .button:hover{ background:#062c37 !important; color:#fff !important; border-color:#062c37; }
#cs-slider-ul .button.btn-alt:hover{ background:#ffffff !important; color:#0092ba !important; }

/* slider controls */
.vg-arrow{
  position:absolute; top:50%; transform:translateY(-50%); z-index:5; cursor:pointer;
  width:44px; height:44px; border-radius:50%; background:rgba(255,255,255,.15);
  color:#fff; font-size:24px; line-height:44px; text-align:center; user-select:none;
  transition:background .2s;
}
.vg-arrow:hover{ background:rgba(255,255,255,.35); }
.vg-prev{ left:14px; } .vg-next{ right:14px; }
.vg-dots{ position:absolute; bottom:26px; left:0; right:0; text-align:center; z-index:5; pointer-events:none; }
.vg-dots span{
  display:inline-block; width:11px; height:11px; margin:0 5px; border-radius:50%;
  background:rgba(255,255,255,.4); cursor:pointer; transition:background .2s; pointer-events:auto;
}
.vg-dots span.on{ background:#fff; }

/* ===== Login modal (theme easy-modal JS removed) ===== */
.vg-modal-overlay{
  display:none; position:fixed; inset:0; background:rgba(255,255,255,.6);
  z-index:9998;
}
.vg-modal-overlay.open{ display:block; }
#eModal-1.modal{
  display:none; position:fixed; top:50%; left:50%; transform:translate(-50%,-50%);
  z-index:9999; background:#0092ba; color:#fff; padding:34px; width:290px; border-radius:4px;
  box-shadow:0 18px 60px rgba(0,0,0,.35);
}
#eModal-1.modal.open{ display:block; }
#eModal-1 h1{ color:#fff; font-size:26px; margin:0 0 14px; }
#eModal-1 input[type=text],#eModal-1 input[type=password]{ color:#333; }
#eModal-1 .close-modal{
  position:absolute; top:-12px; right:-12px; width:30px; height:30px; line-height:30px;
  text-align:center; background:#000; color:#fff; border-radius:50%; cursor:pointer; font-size:16px;
}

/* form success message */
.vg-form-msg{
  display:none; margin:14px 0 0; padding:12px 16px; background:#eafcff; color:#00566e;
  border-left:4px solid #0092ba; font-size:15px; border-radius:2px;
}
.vg-form-msg.show{ display:block; }

/* mobile nav + search toggles */
.navigation-container.vg-open .nav-menu{ display:block !important; }
.search-wrapper{ display:none; }
.search-wrapper.vg-show{ display:block; }
@media (min-width:960px){ .search-wrapper.vg-show{ display:inline-block; } }

/* parallax elements animate in via stripped JS — force visible */
.pexeto-parallax, .pexeto-parallax .services-box, .pexeto-parallax .circle-wrapper,
.pexeto-parallax .services-img, .pexeto-parallax .services-content{
  opacity:1 !important; transform:none !important; visibility:visible !important;
}
/* service circles: bigger, proper cover crop, subtle ring */
.services-circle .services-box{ text-align:center; }
.services-circle .circle-wrapper{ width:160px !important; height:160px !important; margin:0 auto 14px !important; }
.services-circle .services-img{
  width:160px !important; height:160px !important; border-radius:50% !important;
  background-size:cover !important; background-position:center !important; display:block !important;
  box-shadow:0 8px 24px rgba(0,0,0,.15); border:4px solid #fff;
}
.services-circle .services-content h3 a{ color:#1e1b1a !important; font-size:16px; }

/* ===== Services section (custom, replaces theme circle style) ===== */
.vg-services{ display:flex; flex-wrap:wrap; align-items:center; gap:44px; padding:64px 0; }
.vg-serv-intro{ flex:1 1 260px; max-width:340px; }
.vg-serv-intro h2{ font-family:'Oswald',sans-serif; font-weight:700; font-size:32px; margin:0 0 14px; color:#1e1b1a; }
.vg-serv-intro p{ color:#555; line-height:1.7; font-size:15px; margin:0 0 4px; }
.vg-serv-more{ display:inline-block; margin-top:14px; color:#0092ba !important; font-weight:700; text-transform:uppercase; letter-spacing:.5px; font-size:14px; text-decoration:none; }
.vg-serv-more:hover{ color:#00566e !important; }
.vg-serv-grid{ flex:2 1 560px; display:flex; gap:30px; justify-content:center; flex-wrap:wrap; }
.vg-serv-card{ display:block; text-align:center; text-decoration:none; width:180px; }
.vg-serv-ph{
  display:block; width:172px; height:172px; margin:0 auto 18px; border-radius:50%;
  background-size:cover, cover; background-position:center;
  background-blend-mode:luminosity;         /* photo luminance + teal hue = duotone */
  box-shadow:0 12px 30px rgba(0,86,110,.28); border:4px solid #fff;
  transition:transform .25s ease, box-shadow .25s ease;
}
.vg-serv-card:hover .vg-serv-ph{ transform:translateY(-6px); box-shadow:0 20px 44px rgba(0,146,186,.40); }
.vg-serv-title{ display:block; font-family:'Oswald',sans-serif; font-weight:700; font-size:16px; color:#1e1b1a; text-transform:uppercase; letter-spacing:.3px; line-height:1.3; }
.vg-serv-card:hover .vg-serv-title{ color:#0092ba; }
@media (max-width:760px){ .vg-services{ padding:44px 0; gap:28px; } }

/* misc: hide leftover preloaders/loaders if any */
.pg-loading,.cs-loader{ display:none !important; }
