.elementor-563 .elementor-element.elementor-element-7a47bb04:not(.elementor-motion-effects-element-type-background), .elementor-563 .elementor-element.elementor-element-7a47bb04 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(135deg, #061A2D 0%, #0B2942 100%);}.elementor-563 .elementor-element.elementor-element-7a47bb04 > .elementor-container{max-width:1280px;}.elementor-563 .elementor-element.elementor-element-7a47bb04{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:80px 0px 80px 0px;}.elementor-563 .elementor-element.elementor-element-7a47bb04 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-563 .elementor-element.elementor-element-766f3a7a{font-family:"Inter", Sans-serif;}.elementor-563 .elementor-element.elementor-element-5109dc0d{--spacer-size:16px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-563 .elementor-element.elementor-element-5e87eb4d{text-align:center;}.elementor-563 .elementor-element.elementor-element-5e87eb4d .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:50px;font-weight:900;line-height:1.1em;color:#FFFFFF;}.elementor-563 .elementor-element.elementor-element-5e434095{--spacer-size:16px;}.elementor-563 .elementor-element.elementor-element-45042648{font-family:"Inter", Sans-serif;}.elementor-563 .elementor-element.elementor-element-73323f27:not(.elementor-motion-effects-element-type-background), .elementor-563 .elementor-element.elementor-element-73323f27 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#061A2D;}.elementor-563 .elementor-element.elementor-element-73323f27 > .elementor-container{max-width:1280px;}.elementor-563 .elementor-element.elementor-element-73323f27{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:56px 0px 56px 0px;}.elementor-563 .elementor-element.elementor-element-73323f27 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-563 .elementor-element.elementor-element-30a65bff{font-family:"Inter", Sans-serif;}.elementor-563 .elementor-element.elementor-element-347b0c6b{font-family:"Inter", Sans-serif;}.elementor-563 .elementor-element.elementor-element-2b97afa{font-family:"Inter", Sans-serif;}.elementor-563 .elementor-element.elementor-element-54924956{font-family:"Inter", Sans-serif;}.elementor-563 .elementor-element.elementor-element-714d0c73:not(.elementor-motion-effects-element-type-background), .elementor-563 .elementor-element.elementor-element-714d0c73 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-563 .elementor-element.elementor-element-714d0c73 > .elementor-container{max-width:1280px;}.elementor-563 .elementor-element.elementor-element-714d0c73{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:72px 0px 72px 0px;}.elementor-563 .elementor-element.elementor-element-714d0c73 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-563 .elementor-element.elementor-element-57e68d42{font-family:"Inter", Sans-serif;}.elementor-563 .elementor-element.elementor-element-3c4f0a7b{--spacer-size:14px;}.elementor-563 .elementor-element.elementor-element-3bf9de71{text-align:center;}.elementor-563 .elementor-element.elementor-element-3bf9de71 .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:36px;font-weight:900;line-height:1.2em;color:#111827;}.elementor-563 .elementor-element.elementor-element-18e468d0{font-family:"Inter", Sans-serif;}.elementor-563 .elementor-element.elementor-element-6b77f965{--spacer-size:36px;}.elementor-563 .elementor-element.elementor-element-71a40165{font-family:"Inter", Sans-serif;}.elementor-563 .elementor-element.elementor-element-e00a100{padding:0px 0px 0px 0px;}.elementor-563 .elementor-element.elementor-element-63c865a8 > .elementor-element-populated{padding:0px 8px 0px 8px;}.elementor-563 .elementor-element.elementor-element-5fa0021b{font-family:"Inter", Sans-serif;}.elementor-563 .elementor-element.elementor-element-3ab9a0df > .elementor-element-populated{padding:0px 8px 0px 8px;}.elementor-563 .elementor-element.elementor-element-6a82e932{font-family:"Inter", Sans-serif;}.elementor-563 .elementor-element.elementor-element-419a2f2 > .elementor-element-populated{padding:0px 8px 0px 8px;}.elementor-563 .elementor-element.elementor-element-483c570f{font-family:"Inter", Sans-serif;}.elementor-563 .elementor-element.elementor-element-32ef0f39{--spacer-size:20px;}.elementor-563 .elementor-element.elementor-element-6b6927a8{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-563 .elementor-element.elementor-element-30b1cbb2 > .elementor-element-populated{padding:0px 8px 0px 8px;}.elementor-563 .elementor-element.elementor-element-74a31c25{font-family:"Inter", Sans-serif;}.elementor-563 .elementor-element.elementor-element-2a94b923 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-563 .elementor-element.elementor-element-4b81d131{font-family:"Inter", Sans-serif;}.elementor-563 .elementor-element.elementor-element-60d0eaf3 > .elementor-element-populated{padding:0px 8px 0px 8px;}.elementor-563 .elementor-element.elementor-element-5f7be3b6{font-family:"Inter", Sans-serif;}.elementor-563 .elementor-element.elementor-element-52b7eb3d:not(.elementor-motion-effects-element-type-background), .elementor-563 .elementor-element.elementor-element-52b7eb3d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#EAF5FF;}.elementor-563 .elementor-element.elementor-element-52b7eb3d > .elementor-container{max-width:1280px;}.elementor-563 .elementor-element.elementor-element-52b7eb3d{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:72px 0px 72px 0px;}.elementor-563 .elementor-element.elementor-element-52b7eb3d > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-563 .elementor-element.elementor-element-6b14934{font-family:"Inter", Sans-serif;}.elementor-563 .elementor-element.elementor-element-21b8db20{--spacer-size:14px;}.elementor-563 .elementor-element.elementor-element-67bf0c20{text-align:center;}.elementor-563 .elementor-element.elementor-element-67bf0c20 .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:38px;font-weight:900;line-height:1.2em;color:#111827;}.elementor-563 .elementor-element.elementor-element-7a3b8467{--spacer-size:8px;}.elementor-563 .elementor-element.elementor-element-185947e1{font-family:"Inter", Sans-serif;}.elementor-563 .elementor-element.elementor-element-3f095e77{--spacer-size:16px;}.elementor-563 .elementor-element.elementor-element-107a97e1{font-family:"Inter", Sans-serif;}@media(max-width:1024px){.elementor-563 .elementor-element.elementor-element-7a47bb04{padding:60px 0px 60px 0px;}.elementor-563 .elementor-element.elementor-element-5e87eb4d .elementor-heading-title{font-size:41px;}.elementor-563 .elementor-element.elementor-element-73323f27{padding:42px 0px 42px 0px;}.elementor-563 .elementor-element.elementor-element-714d0c73{padding:54px 0px 54px 0px;}.elementor-563 .elementor-element.elementor-element-3bf9de71 .elementor-heading-title{font-size:29px;}.elementor-563 .elementor-element.elementor-element-52b7eb3d{padding:54px 0px 54px 0px;}.elementor-563 .elementor-element.elementor-element-67bf0c20 .elementor-heading-title{font-size:31px;}}@media(max-width:767px){.elementor-563 .elementor-element.elementor-element-7a47bb04{padding:50px 20px 50px 20px;}.elementor-563 .elementor-element.elementor-element-5109dc0d{--spacer-size:10px;}.elementor-563 .elementor-element.elementor-element-5e87eb4d .elementor-heading-title{font-size:30px;}.elementor-563 .elementor-element.elementor-element-5e434095{--spacer-size:10px;}.elementor-563 .elementor-element.elementor-element-73323f27{padding:30px 20px 30px 20px;}.elementor-563 .elementor-element.elementor-element-714d0c73{padding:39px 20px 39px 20px;}.elementor-563 .elementor-element.elementor-element-3c4f0a7b{--spacer-size:8px;}.elementor-563 .elementor-element.elementor-element-3bf9de71 .elementor-heading-title{font-size:24px;}.elementor-563 .elementor-element.elementor-element-6b77f965{--spacer-size:22px;}.elementor-563 .elementor-element.elementor-element-32ef0f39{--spacer-size:12px;}.elementor-563 .elementor-element.elementor-element-52b7eb3d{padding:39px 20px 39px 20px;}.elementor-563 .elementor-element.elementor-element-21b8db20{--spacer-size:10px;}.elementor-563 .elementor-element.elementor-element-67bf0c20 .elementor-heading-title{font-size:26px;}.elementor-563 .elementor-element.elementor-element-7a3b8467{--spacer-size:10px;}.elementor-563 .elementor-element.elementor-element-3f095e77{--spacer-size:10px;}}@media(min-width:768px){.elementor-563 .elementor-element.elementor-element-63c865a8{width:35%;}.elementor-563 .elementor-element.elementor-element-3ab9a0df{width:34.427%;}.elementor-563 .elementor-element.elementor-element-419a2f2{width:35%;}.elementor-563 .elementor-element.elementor-element-30b1cbb2{width:34%;}.elementor-563 .elementor-element.elementor-element-2a94b923{width:34.155%;}.elementor-563 .elementor-element.elementor-element-60d0eaf3{width:34%;}}@media(max-width:1024px) and (min-width:768px){.elementor-563 .elementor-element.elementor-element-63c865a8{width:33%;}.elementor-563 .elementor-element.elementor-element-3ab9a0df{width:33%;}.elementor-563 .elementor-element.elementor-element-419a2f2{width:33%;}.elementor-563 .elementor-element.elementor-element-30b1cbb2{width:33%;}.elementor-563 .elementor-element.elementor-element-2a94b923{width:33%;}.elementor-563 .elementor-element.elementor-element-60d0eaf3{width:33%;}}/* Start custom CSS *//* ============================================================
   KESHAV WEB SOLUTIONS — Page Content CSS
   Appearance > Customize > Additional CSS
   (Header/Footer CSS managed separately via Theme Builder)
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { font-family: 'Inter', sans-serif !important; overflow-x: hidden; }
.elementor-section { margin-bottom: 0 !important; }
.elementor-inner-section { margin-bottom: 0 !important; }

/* ── Max width ── */
.elementor-section > .elementor-container { max-width: 1280px !important; }

/* ── Hero sections ── */
.section-reviews-hero,
.section-portfolio-hero,
.section-services-hero,
.section-about-hero,
.section-contact-hero {
  background: linear-gradient(135deg, #061A2D 0%, #08243B 55%, #0B2942 100%) !important;
  overflow: hidden; position: relative;
}
.section-reviews-hero::before,
.section-portfolio-hero::before,
.section-services-hero::before,
.section-about-hero::before,
.section-contact-hero::before {
  content:''; position:absolute; top:-80px; right:-80px;
  width:400px; height:400px; border-radius:50%;
  background:rgba(8,120,249,.07); pointer-events:none;
}

/* ── Badge ── */
.badge, span.badge {
  display:inline-flex !important; align-items:center; gap:6px;
  font-size:11.5px !important; font-weight:700 !important;
  letter-spacing:.06em; border-radius:20px !important;
  padding:5px 14px !important; text-transform:uppercase;
  font-family:'Inter',sans-serif !important;
}

/* ── Buttons ── */
.btn-primary, a.btn-primary, .elementor-button.btn-primary {
  background:#0878F9 !important; color:#fff !important;
  font-weight:600 !important; font-size:15px !important;
  padding:12px 24px !important; border-radius:8px !important;
  border:none !important; transition:all .22s !important;
  display:inline-flex !important; align-items:center; gap:6px;
  text-decoration:none !important; font-family:'Inter',sans-serif !important;
}
.btn-primary:hover, a.btn-primary:hover { background:#0A66E8 !important; color:#fff !important; transform:translateY(-2px); box-shadow:0 6px 20px rgba(8,120,249,.28) !important; }

/* ── Stats strip ── */
.section-stats { background:linear-gradient(135deg,#061A2D 0%,#08243B 100%) !important; }

/* ── CTA section ── */
.section-cta { background:linear-gradient(135deg,#EAF5FF 0%,#F2F8FD 100%) !important; position:relative; overflow:hidden; }
.section-cta::before { content:''; position:absolute; top:-60px; right:-60px; width:280px; height:280px; border-radius:50%; background:rgba(8,120,249,.06); pointer-events:none; }

/* ════════════════════════════════════════════════════════════
   REVIEW CARDS
   ════════════════════════════════════════════════════════════ */

/* Column = the card */
.rev-card-col > .elementor-column-wrap {
  background: #fff !important;
  border: 1px solid #DCE5EF !important;
  border-radius: 12px !important;
  box-shadow: 0 2px 14px rgba(8,36,59,.06) !important;
  transition: all .25s !important;
}
.rev-card-col:hover > .elementor-column-wrap {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 30px rgba(8,120,249,.12) !important;
}
/* Inner content padding */
.rev-card-col > .elementor-column-wrap > .elementor-widget-wrap {
  padding: 0 !important;
}
/* The inner card div gets the padding */
.rev-card-inner {
  padding: 24px !important;
  height: 100%;
}
/* Avatar circle (letter) */
.rev-av {
  flex-shrink: 0 !important;
}
/* Avatar photo (when user replaces letter with img) */
img.rev-av-img {
  width: 48px !important;
  height: 48px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  flex-shrink: 0 !important;
}
/* Row gaps */
.rev-row-1 .elementor-column,
.rev-row-2 .elementor-column { margin-bottom: 0 !important; }

/* ════════════════════════════════════════════════════════════
   PORTFOLIO CARDS
   ════════════════════════════════════════════════════════════ */
.port-card-el > .elementor-column-wrap {
  background: #0B2942 !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  transition: all .25s !important;
}
.port-card-el:hover > .elementor-column-wrap {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 40px rgba(8,120,249,.22) !important;
}
.port-card-el > .elementor-column-wrap > .elementor-widget-wrap { padding:0 !important; }
.port-card-el .elementor-widget { margin:0 !important; }
.port-chrome-bar .elementor-widget-container { padding:0 !important; margin:0 !important; }
.port-card-img .elementor-widget-container { padding:0 !important; }
.port-card-img img { width:100% !important; height:170px !important; object-fit:cover !important; display:block !important; border-radius:0 !important; }
.port-card-info .elementor-widget-container { padding:0 !important; }
.port-row .elementor-column { padding:0 8px !important; }

/* ════════════════════════════════════════════════════════════
   SERVICES DETAIL CARDS
   ════════════════════════════════════════════════════════════ */
.svc-detail {
  background:#fff; border:1px solid #DCE5EF; border-radius:14px;
  padding:36px 32px; transition:all .25s;
}
.svc-detail:hover { box-shadow:0 8px 32px rgba(8,120,249,.12); transform:translateY(-3px); }
.svc-detail-grid { display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:start; }
.feat-list { list-style:none !important; padding:0 !important; margin:0 !important; display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.feat-list li { display:flex; align-items:center; gap:8px; font-size:13.5px; color:#5B6472; font-family:'Inter',sans-serif; line-height:1.5; }
.feat-list li::before { content:'→'; color:#0878F9; font-weight:700; flex-shrink:0; }

/* ════════════════════════════════════════════════════════════
   FAQ — Elementor Toggle
   ════════════════════════════════════════════════════════════ */
.elementor-toggle-item { border:1px solid #DCE5EF !important; border-radius:10px !important; overflow:hidden; margin-bottom:12px !important; }
.elementor-toggle .elementor-tab-title { padding:16px 20px !important; font-weight:600 !important; font-size:15px !important; color:#111827 !important; font-family:'Inter',sans-serif !important; border:none !important; background:#fff !important; }
.elementor-toggle .elementor-tab-title.elementor-active { color:#0878F9 !important; }
.elementor-toggle .elementor-tab-title .elementor-toggle-icon { color:#5B6472 !important; }
.elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon { color:#0878F9 !important; }
.elementor-toggle .elementor-tab-content { padding:0 20px 18px !important; font-size:14.5px !important; color:#5B6472 !important; line-height:1.7 !important; font-family:'Inter',sans-serif !important; border:none !important; background:#fff !important; }

/* ════════════════════════════════════════════════════════════
   CONTACT FORM
   ════════════════════════════════════════════════════════════ */
.elementor-form .elementor-field-label { font-size:13px !important; font-weight:600 !important; color:#111827 !important; font-family:'Inter',sans-serif !important; }
.elementor-form .elementor-field { border:1px solid #DCE5EF !important; border-radius:8px !important; padding:11px 14px !important; font-size:14px !important; font-family:'Inter',sans-serif !important; background:#fff !important; transition:border-color .2s,box-shadow .2s !important; }
.elementor-form .elementor-field:focus { border-color:#0878F9 !important; box-shadow:0 0 0 3px rgba(8,120,249,.12) !important; outline:none !important; }
.elementor-form .elementor-button { background:#0878F9 !important; border-radius:8px !important; font-weight:600 !important; font-size:15px !important; font-family:'Inter',sans-serif !important; border:none !important; width:100% !important; transition:all .22s !important; }
.elementor-form .elementor-button:hover { background:#0A66E8 !important; transform:translateY(-2px) !important; box-shadow:0 6px 20px rgba(8,120,249,.28) !important; }

/* ════════════════════════════════════════════════════════════
   FILTER TABS (Portfolio)
   ════════════════════════════════════════════════════════════ */
.filter-tab { padding:8px 18px !important; border-radius:8px !important; border:1px solid #DCE5EF !important; background:#fff !important; font-size:13.5px !important; font-weight:600 !important; color:#5B6472 !important; cursor:pointer !important; transition:all .2s !important; font-family:'Inter',sans-serif !important; }
.filter-tab:hover, .filter-tab.active { background:#0878F9 !important; color:#fff !important; border-color:#0878F9 !important; }

/* ════════════════════════════════════════════════════════════
   RESPONSIVE
   ════════════════════════════════════════════════════════════ */
@media(max-width:1024px) {
  .svc-detail-grid { grid-template-columns:1fr !important; gap:24px !important; }
  .feat-list { grid-template-columns:1fr !important; }
}
@media(max-width:767px) {
  .rev-row-1 .elementor-column,
  .rev-row-2 .elementor-column { width:100% !important; margin-bottom:16px !important; }
  .port-row .elementor-column { width:50% !important; padding:0 4px !important; margin-bottom:12px !important; }
  .svc-detail { padding:24px 18px !important; border-radius:10px !important; }
  .section-stats .elementor-column { width:50% !important; }
}
@media(max-width:480px) {
  .port-row .elementor-column { width:100% !important; }
  .port-card-img img { height:200px !important; }
  .section-stats .elementor-column { width:50% !important; }
}/* End custom CSS */