/* Elite Web Venture theme: re-skins the template in the EWV green / dark palette. Loaded after style.css. */
:root {
  --perple: #0d1f14;   /* was navy: headings, dark bands */
  --yellow: #8BC34A;   /* was gold: accents, checkmarks, primary buttons */
  --red: #4CAF50;      /* was gold: hovers, active tabs */
  --ewv-green: #4CAF50;
  --ewv-lime: #8BC34A;
  --ewv-deep: #1B5E20;
  --ewv-dark: #0d1f14;
  --ewv-darker: #07130b;
}

/* Buttons */
.yellow_btn { background-color: var(--ewv-lime); color: var(--ewv-dark) !important; }
.yellow_btn:hover { background-color: var(--ewv-green); color: #fff !important; }
.red_btn { background-color: var(--ewv-dark); }
.red_btn:hover { background-color: var(--ewv-lime); color: var(--ewv-dark) !important; }
.white_btn:hover { background-color: var(--ewv-lime); }
header .theme_btn.red_btn { background-color: var(--ewv-green); }
header .theme_btn.red_btn:hover { background-color: var(--ewv-lime); }
ul.subMenu li { border-color: var(--ewv-lime) !important; }

/* Logo */
/* EWV logo is square; the template sizes a wide logo by width, which squashed it. Size by height instead. */
img.logo.img-fluid.ewv-logo { width: 40% !important; max-width: none !important; height: auto; }
.ewv-footer-logo { max-width: 150px; }

/* Dark / green bands instead of the template's navy, yellow, purple and red artwork */
section.banner {
  background-image: radial-gradient(circle at 78% 35%, rgba(139,195,74,.22) 0, rgba(139,195,74,0) 42%),
                    linear-gradient(135deg, #07130b 0%, #0d1f14 45%, #14331f 100%);
  background-color: var(--ewv-dark);
}
section.Recent_PROJECTS, section.recently_done.Recent_PROJECTS { background-image: linear-gradient(180deg, #0d1f14 0%, #10271a 100%); }
section.cta_sec.light { background-image: linear-gradient(115deg, var(--ewv-deep) 0%, var(--ewv-green) 100%); }
section.testimonials { background-image: linear-gradient(160deg, #0d1f14 0%, #14331f 100%); }
section.form_sec { background-image: radial-gradient(circle at 15% 20%, rgba(139,195,74,.18) 0, rgba(139,195,74,0) 40%), linear-gradient(160deg, #07130b, #0d1f14); }
footer { background-image: none; background-color: var(--ewv-darker); }
section.footer_cta .f_cta_inner { background-image: linear-gradient(120deg, var(--ewv-deep), var(--ewv-green)); box-shadow: 0 4px 60px 0 rgba(76,175,80,.45); }

/* Photo banners and service bands keep their imagery under a dark green overlay */
section.inner_banner, section.logo_design, section.perofessional_web, section.mobile_application,
section.seo_bg, section.creative_services, section.how_affrodable { position: relative; }
section.inner_banner::before, section.logo_design::before, section.perofessional_web::before, section.mobile_application::before,
section.seo_bg::before, section.creative_services::before, section.how_affrodable::before {
  content: ""; position: absolute; inset: 0; background: linear-gradient(135deg, rgba(7,19,11,.88), rgba(20,51,31,.78)); z-index: 0;
}
section.inner_banner > .container, section.logo_design > .container, section.perofessional_web > .container, section.mobile_application > .container,
section.seo_bg > .container, section.creative_services > .container, section.how_affrodable > .container { position: relative; z-index: 1; }

/* Hero */
.ewv-hero h5 { color: var(--ewv-lime); letter-spacing: 2px; text-transform: uppercase; font-size: 15px; font-weight: 600; }
section.banner .ewv-hero h1.ewv-hero-h1 { font-size: 44px; line-height: 1.18; font-weight: 700; text-transform: none; margin: 12px 0 18px; color: #fff; }
section.banner .ewv-hero h1.ewv-hero-h1 span { color: var(--ewv-lime); }
.ewv-hero-call { font-size: 14px; margin-top: 18px; }
.ewv-hero-call a { color: var(--ewv-lime); font-weight: 600; }
.ewv-light-link { color: var(--ewv-lime) !important; font-weight: 600; }
section.banner ul.txt_list li:before { color: var(--ewv-lime); }
@media (min-width: 992px) {
  section.banner .banner_img_wrap { min-height: 560px; }
  header ul.navigation { white-space: nowrap; }
}
@media (max-width: 991px) { section.banner .ewv-hero h1.ewv-hero-h1 { font-size: 34px; } }
@media (max-width: 575px) { section.banner .ewv-hero h1.ewv-hero-h1 { font-size: 28px; } }

/* Homepage "Turn visitors into customers": browser + phone mockup built in CSS */
.ewv-why-web { background: radial-gradient(circle at 12% 30%, rgba(139,195,74,.12) 0, rgba(139,195,74,0) 45%), #fff; overflow: hidden; }
.ewv-device-stage { position: relative; padding: 10px 70px 60px 0; }
.ewv-browser-mock { background: #fff; border-radius: 14px; box-shadow: 0 30px 70px rgba(13,31,20,.18); overflow: hidden; border: 1px solid #e3e9e4; }
.ewv-browser-bar { height: 38px; background: #f1f4f2; display: flex; align-items: center; gap: 7px; padding: 0 14px; border-bottom: 1px solid #e3e9e4; }
.ewv-browser-bar span { width: 11px; height: 11px; border-radius: 50%; background: #d5dcd7; }
.ewv-browser-bar span:nth-child(1) { background: #ff6159; }
.ewv-browser-bar span:nth-child(2) { background: #ffbd2e; }
.ewv-browser-bar span:nth-child(3) { background: #28c940; }
.ewv-browser-bar em { font-style: normal; font-size: 12px; color: #6b766f; background: #fff; border-radius: 20px; padding: 3px 16px; margin-left: 14px; flex: 1; max-width: 260px; }
.ewv-browser-screen, .ewv-phone-screen { overflow: hidden; position: relative; }
.ewv-browser-screen { height: 340px; }
.ewv-browser-screen img, .ewv-phone-screen img { width: 100%; display: block; transition: transform 6s ease-in-out; }
.ewv-device-stage:hover .ewv-browser-screen img { transform: translateY(calc(-100% + 340px)); }
.ewv-phone-mock { position: absolute; right: 10px; bottom: 0; width: 150px; background: #0d1f14; border-radius: 26px; padding: 10px 7px; box-shadow: 0 24px 50px rgba(13,31,20,.35); }
.ewv-phone-screen { height: 280px; border-radius: 18px; background: #fff; }
.ewv-device-stage:hover .ewv-phone-screen img { transform: translateY(calc(-100% + 280px)); }
.ewv-float-tag { position: absolute; background: #fff; border-radius: 30px; padding: 9px 16px; font-size: 13px; font-weight: 600; color: var(--ewv-dark); box-shadow: 0 10px 30px rgba(13,31,20,.14); white-space: nowrap; }
.ewv-float-tag i { color: var(--ewv-green); margin-right: 6px; }
.ewv-tag-1 { top: 70px; left: -18px; }
.ewv-tag-2 { top: 190px; right: 40px; }
.ewv-tag-3 { bottom: 20px; left: 30px; }
.ewv-why-title { font-size: 40px; line-height: 1.2; margin-bottom: 16px; }
.ewv-why-lead { font-size: 16px; line-height: 1.75; color: #4f5a54; margin-bottom: 26px; }
.ewv-why-point { display: flex; gap: 14px; align-items: flex-start; margin-bottom: 22px; }
.ewv-why-icon { flex: 0 0 44px; width: 44px; height: 44px; border-radius: 12px; background: rgba(76,175,80,.12); color: var(--ewv-green); display: flex; align-items: center; justify-content: center; font-size: 20px; }
.ewv-why-point h5 { font-size: 16px; font-weight: 600; margin: 0 0 4px; color: var(--ewv-dark); }
.ewv-why-point p { font-size: 14px; line-height: 1.6; margin: 0; color: #5b6560; }
@media (max-width: 991px) {
  .ewv-device-stage { max-width: 560px; margin: 0 auto; }
  .ewv-why-title { font-size: 32px; }
}
@media (max-width: 575px) {
  .ewv-device-stage { padding: 0 40px 50px 0; }
  .ewv-browser-screen { height: 220px; }
  .ewv-device-stage:hover .ewv-browser-screen img { transform: translateY(calc(-100% + 220px)); }
  .ewv-phone-mock { width: 105px; border-radius: 20px; padding: 7px 5px; }
  .ewv-phone-screen { height: 190px; border-radius: 14px; }
  .ewv-device-stage:hover .ewv-phone-screen img { transform: translateY(calc(-100% + 190px)); }
  .ewv-float-tag { font-size: 11px; padding: 7px 12px; }
  .ewv-tag-1 { left: 0; top: 50px; }
  .ewv-tag-2 { right: 10px; top: 130px; }
  .ewv-why-title { font-size: 27px; }
}

/* Inner page banners: clear space under the fixed header and a balanced bottom */
section.inner_banner { height: auto; min-height: 480px; padding: 170px 0 90px; }
@media (max-width: 991px) { section.inner_banner { min-height: 0; padding: 150px 0 70px; } }
@media (max-width: 575px) { section.inner_banner { padding: 130px 0 56px; } }

/* Reviews page: show full quotes (template capped them at 115px with a scroll box) */
.testimonials_sec .testi_clm { margin-top: 30px; }
.testimonials_sec .testi_clm p { height: auto; overflow: visible; }
.testi_clm:hover { background-color: var(--ewv-deep); }
.testi_clm:hover img { filter: none; }

/* Mobile app tiles are tall phone screens: crop from the top so headings stay visible */
.ewv-tile img { object-position: top; }

/* Contact strip overlaps the form band above it by design; on pages without that form, give it room */
section.footer_cta.ewv-no-form { margin-top: 60px; }

/* Inner page banners: a real H1 in the template's banner heading style */
section.inner_banner h1.ewv-page-h1 { font-size: 42px; font-weight: 700; line-height: 1.2; margin-bottom: 16px; color: #fff; }
.ewv-kicker-light { color: var(--ewv-lime); }
@media (max-width: 767px) { section.inner_banner h1.ewv-page-h1 { font-size: 30px; } }

/* Package tabs (template styles these by #pills-tab; this class covers every instance) */
ul.ewv-pills { margin: 0 auto 40px !important; display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 14px; }
ul.ewv-pills li button { border-radius: 30px; color: var(--ewv-dark); font-weight: 500; padding: 8px 18px; font-size: 14px; border: 1px solid #d5e3d8; background: #fff; }
ul.ewv-pills li button.active, ul.ewv-pills li button:hover { background-color: var(--ewv-green) !important; border-color: var(--ewv-green); color: #fff; }

/* Service intro section: the template's gold paint-stroke artwork is replaced by a soft tint */
section.seasoned { background-image: radial-gradient(circle at 0% 0%, rgba(139,195,74,.14) 0, rgba(139,195,74,0) 45%); }

/* Packages band: template's orange blob artwork removed */
section.Affordable { background-image: none; background-color: #fff; padding: 90px 0 70px; }
section.Affordable .col-12.mb-4 h2 { margin-bottom: 14px; }
@media (max-width: 767px) { section.Affordable { padding: 60px 0 50px; } }

/* Process band: readable step titles, gold icons shifted to brand green */
section.detailed h5.txt_color { color: #fff !important; }
section.detailed .img_icon img { filter: hue-rotate(45deg) saturate(1.1); }

/* Social icons in brand green */
footer ul.footer_socials li a, footer ul.footer_socials li a i { background-color: var(--ewv-green) !important; color: #fff !important; }

/* Package cards: keep rows even when feature lists are long */
.pricing_clm { display: flex; flex-direction: column; height: calc(100% - 40px); }
.pricing_clm:hover { background-color: var(--ewv-dark); }
.pricing_clm .ewv-feature-list { max-height: 330px; overflow-y: auto; text-align: left; padding-right: 6px; flex: 1 1 auto; }
.pricing_clm .ewv-feature-list::-webkit-scrollbar { width: 5px; }
.pricing_clm .ewv-feature-list::-webkit-scrollbar-thumb { background: var(--ewv-lime); border-radius: 4px; }
.pricing_clm .pop_btn { align-self: center; }
.ewv-inline-link { color: var(--ewv-green); font-weight: 600; text-decoration: underline; }

/* "What every project includes" (replaces the template's statistics band) */
.ewv-promise .clm { padding: 28px 22px !important; }
.ewv-promise-icon { font-size: 30px; color: var(--ewv-green); margin-bottom: 14px; display: inline-block; }

/* Portfolio tiles */
.ewv-tile { display: block; position: relative; border-radius: 10px; overflow: hidden; background: #fff; }
.ewv-tile img { aspect-ratio: 4 / 3; object-fit: cover; }
.ewv-play { position: absolute; inset: 0; margin: auto; width: 56px; height: 56px; border-radius: 50%; background: rgba(76,175,80,.92); color: #fff; display: flex; align-items: center; justify-content: center; font-size: 20px; }

/* Testimonials */
.ewv-testi-avatar { width: 70px; height: 70px; border-radius: 50%; object-fit: cover; }
.ewv-testi-role { color: #5b6560; }

/* Forms */
select.input.ewv-select { color: #6c757d; appearance: auto; }
.popupform-main-new-popup select.ewv-pop-select { width: 100%; height: 45px; margin-bottom: 12px; border: 1px solid #ddd; border-radius: 6px; padding: 0 10px; font-size: 14px; color: #555; background: #fff; }
.popupform-main-new-popup .ewv-pop-sub { font-size: 14px; margin: 0 0 12px; color: #444; }
.popupform-main-new-popup button[type=submit] { background-color: var(--ewv-green) !important; }

/* Footer extras */
.ewv-reviews-link { color: #fff; font-size: 14px; }
.ewv-reviews-link i { color: var(--ewv-lime); }
footer .footer_links li span { color: #fff; font-size: 14px; }

/* New content blocks used on service pages */
.ewv-services-grid .content_box { text-align: left; padding: 26px 22px; }
.ewv-services-grid .content_box h5 { font-weight: 600; margin: 0 0 8px; }
.ewv-services-grid .content_box p { margin: 0 0 10px; }
.ewv-services-grid .content_box .ewv-benefit { color: var(--ewv-deep); font-weight: 500; font-size: 14px; border-top: 1px dashed #d9e3dc; padding-top: 10px; margin: 10px 0 0; }
.ewv-services-grid .content_box .ewv-card-icon { font-size: 26px; color: var(--ewv-green); margin-bottom: 14px; display: inline-block; }
.ewv-check-list { list-style: none; padding: 0; margin: 0 0 20px; }
.ewv-check-list li { position: relative; padding-left: 28px; margin: 0 0 10px; }
.ewv-check-list li::before { content: "\f00c"; font-family: 'FontAwesome'; position: absolute; left: 0; color: var(--ewv-green); }
.ewv-faq .accordion-button:not(.collapsed) { background-color: rgba(76,175,80,.1); color: var(--ewv-dark); }
.ewv-faq .accordion-button:not(.collapsed)::after { filter: hue-rotate(265deg) saturate(1.3); }
.ewv-faq .accordion-button:focus { box-shadow: 0 0 0 .2rem rgba(76,175,80,.25); }
.ewv-section { padding: 80px 0; }
.ewv-section.ewv-soft { background: #f5f8f5; }
.ewv-kicker { display: inline-block; font-size: 13px; font-weight: 600; letter-spacing: 2px; text-transform: uppercase; color: var(--ewv-green); margin-bottom: 10px; }
.ewv-industry { background: #fff; border-left: 4px solid var(--ewv-lime); border-radius: 8px; padding: 22px; height: 100%; box-shadow: 0 6px 20px rgba(13,31,20,.06); text-align: left; }
.ewv-industry h5 { font-weight: 600; font-size: 17px; }
.ewv-industry h5 i { color: var(--ewv-green); margin-right: 8px; }
section.inner_banner.ewv-plain-banner { background-image: linear-gradient(135deg, #07130b 0%, #0d1f14 50%, #14331f 100%); }
.ewv-legal { text-align: left; }
.ewv-legal h3 { font-size: 20px; font-weight: 600; margin: 28px 0 12px; }
.ewv-legal p { line-height: 1.8; }

@media (max-width: 767px) {
  .ewv-section { padding: 56px 0; }
  .pricing_clm .ewv-feature-list { max-height: 260px; }
}
