/* Editable Elementor layouts inherit the original Jay Digital Pro identity. */
body.jdpf-elementor-page {
  --jdpf-navy: #0b1730;
  --jdpf-blue: #3977ff;
  --jdpf-ink: #101b35;
  --jdpf-copy: #63708a;
  --jdpf-border: #e5eaf2;
}

body.jdpf-elementor-page .elementor-widget:not(:last-child) {
  margin-block-end: 0;
}

body.jdpf-elementor-page .jdpf-editor-section {
  position: relative;
  width: 100%;
  padding: 92px 0;
  --gap: 0;
}

body.jdpf-elementor-page .jdpf-shell {
  width: min(1180px, calc(100% - 52px));
  max-width: 1180px;
  margin-inline: auto;
  gap: 25px;
}

body.jdpf-elementor-page .jdpf-editor-hero {
  isolation: isolate;
  min-height: 575px;
  display: flex;
  justify-content: center;
  padding: 110px 0 90px;
  color: #fff;
}

body.jdpf-elementor-page .jdpf-editor-hero::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  content: "";
  background: linear-gradient(104deg, rgba(8, 17, 37, .98), rgba(9, 18, 39, .89) 57%, rgba(9, 18, 39, .67));
}

body.jdpf-elementor-page .jdpf-hero-title .elementor-heading-title,
body.jdpf-elementor-page .jdpf-editor-hero h1 {
  max-width: 820px;
  color: #fff;
  font-family: Manrope, sans-serif;
  font-size: clamp(42px, 6.2vw, 76px);
  font-weight: 800;
  letter-spacing: -3.2px;
  line-height: 1.06;
}

body.jdpf-elementor-page .jdpf-hero-title em,
body.jdpf-elementor-page .jdpf-section-title em {
  color: #77a4ff;
  font-style: normal;
}

body.jdpf-elementor-page .jdpf-hero-intro p,
body.jdpf-elementor-page .jdpf-section-intro p {
  max-width: 700px;
  margin: 0;
  color: #aeb9ce;
  font-size: 18px;
  line-height: 1.8;
}

body.jdpf-elementor-page .jdpf-eyebrow .elementor-heading-title {
  color: var(--jdpf-blue);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.8px;
  text-transform: uppercase;
}

body.jdpf-elementor-page .jdpf-eyebrow-light .elementor-heading-title {
  color: #8db2ff;
}

body.jdpf-elementor-page .jdpf-actions {
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
}

body.jdpf-elementor-page .jdpf-button .elementor-button {
  min-height: 52px;
  padding: 16px 23px;
  border-radius: 8px;
  font-family: "DM Sans", sans-serif;
  font-size: 15px;
  font-weight: 600;
  transition: transform .22s ease, background-color .22s ease;
}

body.jdpf-elementor-page .jdpf-button .elementor-button:hover {
  transform: translateY(-2px);
}

body.jdpf-elementor-page .jdpf-button-primary .elementor-button {
  color: white;
  background: var(--jdpf-blue);
}

body.jdpf-elementor-page .jdpf-button-ghost .elementor-button {
  border: 1px solid rgba(255, 255, 255, .28);
  color: white;
  background: transparent;
}

body.jdpf-elementor-page .jdpf-button-link .elementor-button {
  min-height: auto;
  padding: 8px 0;
  color: var(--jdpf-blue);
  background: transparent;
}

body.jdpf-elementor-page .jdpf-grid {
  display: grid;
  width: 100%;
  gap: 21px;
}

body.jdpf-elementor-page .jdpf-grid-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.jdpf-elementor-page .jdpf-grid-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.jdpf-elementor-page .jdpf-grid-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.jdpf-elementor-page .jdpf-card {
  min-width: 0;
  gap: 12px;
  padding: 26px;
  border: 1px solid var(--jdpf-border);
  border-radius: 11px;
  background: #fff;
  transition: border-color .22s ease, transform .22s ease;
}

body.jdpf-elementor-page .jdpf-card:hover {
  border-color: #c8d6ff;
  transform: translateY(-3px);
}

body.jdpf-elementor-page .jdpf-card h3 {
  color: var(--jdpf-ink);
  font-family: Manrope, sans-serif;
  font-size: 19px;
  font-weight: 700;
  line-height: 1.4;
}

body.jdpf-elementor-page .jdpf-card p {
  margin: 0;
  color: var(--jdpf-copy);
  font-size: 15px;
  line-height: 1.75;
}

body.jdpf-elementor-page .jdpf-hero-proof {
  max-width: 620px;
  margin-top: 22px;
}

body.jdpf-elementor-page .jdpf-proof-card {
  gap: 3px;
  padding: 10px 12px 10px 0;
  border: 0;
  border-right: 1px solid rgba(255, 255, 255, .13);
  border-radius: 0;
  background: transparent;
}

body.jdpf-elementor-page .jdpf-proof-card:last-child {
  border-right: 0;
}

body.jdpf-elementor-page .jdpf-proof-card:hover {
  transform: none;
}

body.jdpf-elementor-page .jdpf-proof-card h3 {
  color: #8fb2ff;
  font-size: 24px;
}

body.jdpf-elementor-page .jdpf-proof-card p {
  color: #adbbd2;
  font-size: 13px;
}

body.jdpf-elementor-page .jdpf-section-heading {
  gap: 11px;
  margin-bottom: 15px;
}

body.jdpf-elementor-page .jdpf-section-title .elementor-heading-title,
body.jdpf-elementor-page .jdpf-cta-section h2 {
  color: var(--jdpf-ink);
  font-family: Manrope, sans-serif;
  font-size: clamp(32px, 4vw, 48px);
  font-weight: 800;
  letter-spacing: -1.8px;
  line-height: 1.15;
}

body.jdpf-elementor-page .jdpf-section-intro p {
  color: var(--jdpf-copy);
  font-size: 16px;
}

body.jdpf-elementor-page .jdpf-muted-section {
  background: #f5f7fb;
}

body.jdpf-elementor-page .jdpf-dark-section {
  background: var(--jdpf-navy);
}

body.jdpf-elementor-page .jdpf-dark-section .jdpf-section-title .elementor-heading-title,
body.jdpf-elementor-page .jdpf-section-heading-light .jdpf-section-title .elementor-heading-title {
  color: white;
}

body.jdpf-elementor-page .jdpf-dark-section .jdpf-card {
  border-color: rgba(255, 255, 255, .09);
  background: rgba(255, 255, 255, .055);
}

body.jdpf-elementor-page .jdpf-dark-section .jdpf-card h3 {
  color: #fff;
}

body.jdpf-elementor-page .jdpf-dark-section .jdpf-card p {
  color: #aeb9ce;
}

body.jdpf-elementor-page .jdpf-editable-image img {
  width: 100%;
  min-height: 250px;
  border-radius: 11px;
  object-fit: cover;
}

body.jdpf-elementor-page .jdpf-project-card {
  overflow: hidden;
  padding: 0 0 24px;
}

body.jdpf-elementor-page .jdpf-project-card > .elementor-widget:not(.jdpf-editable-image) {
  padding-inline: 22px;
}

body.jdpf-elementor-page .jdpf-project-card .jdpf-editable-image img {
  min-height: 230px;
  max-height: 270px;
  border-radius: 0;
}

body.jdpf-elementor-page .jdpf-split-grid,
body.jdpf-elementor-page .jdpf-contact-grid {
  align-items: center;
  gap: 46px;
}

body.jdpf-elementor-page .jdpf-review-card {
  gap: 15px;
}

body.jdpf-elementor-page .jdpf-review-card p {
  font-size: 16px;
}

body.jdpf-elementor-page .jdpf-faq-group {
  gap: 18px;
  margin-top: 18px;
}

body.jdpf-elementor-page .elementor-accordion .elementor-accordion-item {
  margin-bottom: 12px;
  overflow: hidden;
  border: 1px solid var(--jdpf-border);
  border-radius: 9px;
}

body.jdpf-elementor-page .elementor-accordion .elementor-tab-title {
  padding: 20px 22px;
  font-size: 16px;
  font-weight: 600;
}

body.jdpf-elementor-page .elementor-accordion .elementor-tab-content {
  padding: 4px 22px 20px;
  color: var(--jdpf-copy);
  line-height: 1.75;
}

body.jdpf-elementor-page .jdpf-cta-section {
  background: linear-gradient(120deg, #3268dc, #3977ff 55%, #5266ff);
}

body.jdpf-elementor-page .jdpf-cta-section h2,
body.jdpf-elementor-page .jdpf-cta-section p {
  color: #fff;
}

body.jdpf-elementor-page .jdpf-cta-section .jdpf-button-primary .elementor-button {
  color: var(--jdpf-blue);
  background: #fff;
}

body.jdpf-elementor-page .jdpf-contact-card {
  padding: 16px 0;
  border: 0;
  border-bottom: 1px solid var(--jdpf-border);
  border-radius: 0;
}

body.jdpf-elementor-page .jdpf-legal-section .jdpf-shell {
  max-width: 820px;
}

body.jdpf-elementor-page .jdpf-legal-section h2 {
  margin-top: 18px;
  font-size: 25px;
}

body.jdpf-elementor-page .jdpf-legal-section p {
  color: var(--jdpf-copy);
  line-height: 1.8;
}

@media (max-width: 980px) {
  body.jdpf-elementor-page .jdpf-grid-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.jdpf-elementor-page .jdpf-grid-3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.jdpf-elementor-page .jdpf-hero-proof {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  body.jdpf-elementor-page .jdpf-editor-section {
    padding: 69px 0;
  }

  body.jdpf-elementor-page .jdpf-shell {
    width: calc(100% - 34px);
  }

  body.jdpf-elementor-page .jdpf-editor-hero {
    min-height: 510px;
    padding: 92px 0 70px;
  }

  body.jdpf-elementor-page .jdpf-hero-title .elementor-heading-title {
    font-size: 44px;
    letter-spacing: -1.8px;
  }

  body.jdpf-elementor-page .jdpf-grid-2,
  body.jdpf-elementor-page .jdpf-grid-3,
  body.jdpf-elementor-page .jdpf-grid-4 {
    grid-template-columns: minmax(0, 1fr);
  }

  body.jdpf-elementor-page .jdpf-hero-proof {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 9px;
  }

  body.jdpf-elementor-page .jdpf-proof-card h3 {
    font-size: 19px;
  }

  body.jdpf-elementor-page .jdpf-proof-card p {
    font-size: 11px;
  }

  body.jdpf-elementor-page .jdpf-split-grid,
  body.jdpf-elementor-page .jdpf-contact-grid {
    gap: 30px;
  }
}

/* 3.1: closer approved-design composition, while retaining native Elementor widgets. */
body.home.jdpf-elementor-page .jdpf-editor-hero{min-height:720px;padding:86px 0 58px;background-image:linear-gradient(90deg,rgba(5,12,31,.98),rgba(6,14,34,.93) 45%,rgba(6,14,34,.58)),url("https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=2200&q=90")!important;background-position:center!important;background-size:cover!important}
body.home.jdpf-elementor-page .jdpf-editor-hero::before{background:radial-gradient(circle at 73% 28%,rgba(51,111,255,.18),transparent 32%),linear-gradient(180deg,rgba(6,13,34,.08),rgba(6,13,34,.38))}
body.home.jdpf-elementor-page .jdpf-editor-hero .jdpf-shell{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(330px,.75fr);grid-template-areas:"eyebrow proof" "title proof" "intro proof" "actions proof";column-gap:76px;align-content:center;align-items:center}
body.home.jdpf-elementor-page .jdpf-editor-hero .jdpf-eyebrow{grid-area:eyebrow;width:fit-content;margin-bottom:18px;padding:9px 15px;border:1px solid rgba(42,218,255,.28);border-radius:999px;background:rgba(18,45,78,.58)}
body.home.jdpf-elementor-page .jdpf-editor-hero .jdpf-eyebrow .elementor-heading-title{color:#57ddff}
body.home.jdpf-elementor-page .jdpf-editor-hero .jdpf-hero-title{grid-area:title}
body.home.jdpf-elementor-page .jdpf-editor-hero .jdpf-hero-intro{grid-area:intro;margin:25px 0 28px}
body.home.jdpf-elementor-page .jdpf-editor-hero .jdpf-actions{grid-area:actions}
body.home.jdpf-elementor-page .jdpf-hero-title .elementor-heading-title{max-width:700px;font-size:clamp(54px,5.6vw,82px);letter-spacing:-4px;line-height:.98}
body.home.jdpf-elementor-page .jdpf-hero-title span{color:#4dd9ff}
body.home.jdpf-elementor-page .jdpf-hero-intro p{max-width:680px;color:#c7d0e0;font-size:18px;line-height:1.65}
body.home.jdpf-elementor-page .jdpf-hero-proof{grid-area:proof;position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:end;width:100%;min-height:455px;margin:0;padding:215px 30px 30px;overflow:hidden;border:1px solid rgba(121,154,255,.24);border-radius:24px;background:linear-gradient(145deg,rgba(24,39,88,.96),rgba(13,26,66,.9));box-shadow:0 30px 80px rgba(0,0,0,.34);backdrop-filter:blur(16px)}
body.home.jdpf-elementor-page .jdpf-hero-proof::before{position:absolute;top:36px;left:30px;content:"15+\A Years helping businesses\A grow online";white-space:pre;color:#fff;font-family:Manrope,sans-serif;font-size:28px;font-weight:800;line-height:1.22}
body.home.jdpf-elementor-page .jdpf-hero-proof::after{position:absolute;top:158px;right:30px;left:30px;height:50px;content:"";border-bottom:1px solid rgba(255,255,255,.12);background:linear-gradient(90deg,#3184ff 0 15%,transparent 15% 18%,#38a7ff 18% 36%,transparent 36% 39%,#42c9ff 39% 58%,transparent 58% 61%,#4ae0ff 61% 80%,transparent 80% 83%,#55edff 83%);clip-path:polygon(0 78%,15% 78%,15% 64%,36% 64%,36% 48%,58% 48%,58% 31%,80% 31%,80% 12%,100% 12%,100% 100%,0 100%)}
body.home.jdpf-elementor-page .jdpf-proof-card{padding:18px 15px 0;border-top:1px solid rgba(255,255,255,.1);border-right:0}
body.home.jdpf-elementor-page .jdpf-proof-card:first-child{display:none}
body.home.jdpf-elementor-page .jdpf-proof-card h3{color:#fff;font-size:20px}
body.home.jdpf-elementor-page .jdpf-proof-card p{color:#8997b7}
body.jdpf-elementor-page .jdpf-about-image .jdpf-editable-image img{width:100%;aspect-ratio:4/3;min-height:0;max-height:560px;object-fit:cover;object-position:center}
@media(max-width:980px){body.home.jdpf-elementor-page .jdpf-editor-hero .jdpf-shell{grid-template-columns:1fr;grid-template-areas:"eyebrow" "title" "intro" "actions" "proof"}body.home.jdpf-elementor-page .jdpf-hero-proof{max-width:560px;margin-top:36px}}
@media(max-width:680px){body.home.jdpf-elementor-page .jdpf-editor-hero{min-height:auto;padding-top:76px}body.home.jdpf-elementor-page .jdpf-hero-title .elementor-heading-title{font-size:clamp(44px,14vw,62px);letter-spacing:-2.5px}body.home.jdpf-elementor-page .jdpf-hero-proof{min-height:405px;padding-inline:20px;border-radius:18px}}
/* 3.2: reference-matched vertical rhythm and image framing across every editable page. */
@media (min-width:981px){
body.jdpf-elementor-page .jdpf-cta-section{padding-top:64px;padding-bottom:64px}
body.jdpf-elementor-page .jdpf-cta-section .jdpf-shell{gap:16px}
body.jdpf-elementor-page .jdpf-service-hero{min-height:768px}
body.jdpf-elementor-page .jdpf-service-hero + .jdpf-light-section{padding-top:72px;padding-bottom:72px}
body.jdpf-elementor-page .jdpf-service-hero + .jdpf-light-section + .jdpf-muted-section{padding-top:70px;padding-bottom:70px}
body.jdpf-elementor-page .jdpf-legal-section{padding-top:62px;padding-bottom:62px}
body.jdpf-elementor-page .jdpf-faq-section{padding-top:18px;padding-bottom:18px}
body.jdpf-elementor-page .jdpf-faq-section:first-of-type{padding-top:82px}
body.jdpf-elementor-page .jdpf-faq-section:nth-last-child(2){padding-bottom:82px}
}
body.jdpf-elementor-page .jdpf-about-image .jdpf-editable-image img{aspect-ratio:1.02/1;max-height:535px;object-position:center 42%}
body.jdpf-elementor-page .jdpf-trust-grid{align-items:center}
body.jdpf-elementor-page .jdpf-trust-image .jdpf-editable-image img{aspect-ratio:.91/1;min-height:0;max-height:575px;object-position:center}
body.jdpf-elementor-page .jdpf-trust-copy{gap:12px}
body.jdpf-elementor-page .jdpf-trust-copy .jdpf-reason-card{padding:13px 0;border:0;border-bottom:1px solid var(--jdpf-border);border-radius:0;background:transparent}
body.jdpf-elementor-page .jdpf-compact-band{padding:27px 0;background:#eef3ff;text-align:center}
body.jdpf-elementor-page .jdpf-compact-band h3{margin:0;color:#456080;font-size:14px;letter-spacing:.8px;text-transform:uppercase}
body.jdpf-elementor-page .jdpf-advice-section{padding:84px 0;background:#f5f7fb}
body.jdpf-elementor-page .jdpf-advice-section .jdpf-shell{max-width:920px;align-items:flex-start}
body.jdpf-elementor-page .jdpf-compact-process{padding:58px 0;background:#0b1730;color:#fff}
body.jdpf-elementor-page .jdpf-compact-process .jdpf-section-heading{margin-bottom:8px}
body.jdpf-elementor-page .jdpf-compact-process .jdpf-section-title .elementor-heading-title{color:#fff;font-size:32px}
body.jdpf-elementor-page .jdpf-mini-step{padding:15px 18px;border-color:rgba(255,255,255,.12);background:rgba(255,255,255,.06)}
body.jdpf-elementor-page .jdpf-mini-step h3{color:#fff}
body.jdpf-elementor-page .jdpf-review-principles{padding:45px 0;background:#101d38;text-align:center}
body.jdpf-elementor-page .jdpf-review-principles h3{margin:0;color:#fff;font-size:17px;letter-spacing:.35px}
body.jdpf-elementor-page .jdpf-faq-section h2{margin:0 0 15px;font-size:25px}
body.jdpf-elementor-page .jdpf-faq-section .elementor-accordion .elementor-tab-title{padding:16px 20px}
body.jdpf-elementor-page .jdpf-faq-section .elementor-accordion .elementor-accordion-item{margin-bottom:9px}
body.jdpf-elementor-page .jdpf-project-card .jdpf-editable-image img{aspect-ratio:1.61/1;min-height:0;max-height:none}
@media(max-width:680px){body.jdpf-elementor-page .jdpf-compact-band{padding:22px 0}body.jdpf-elementor-page .jdpf-advice-section{padding:62px 0}body.jdpf-elementor-page .jdpf-about-image .jdpf-editable-image img{aspect-ratio:1/1}body.jdpf-elementor-page .jdpf-faq-section{padding:16px 0}}
/* 3.2.1: final reference pass for the remaining oversized content blocks. */
@media(min-width:981px){
body.home.jdpf-elementor-page .jdpf-editor-hero + .jdpf-light-section{padding-top:70px;padding-bottom:70px}
body.home.jdpf-elementor-page .jdpf-service-card{padding:20px;gap:8px}
body.home.jdpf-elementor-page .jdpf-service-card h3{font-size:18px;line-height:1.3}
body.home.jdpf-elementor-page .jdpf-service-card p{font-size:14px;line-height:1.55}
body.home.jdpf-elementor-page .jdpf-muted-section{padding-top:60px;padding-bottom:60px}
body.home.jdpf-elementor-page .jdpf-trust-copy{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 18px}
body.home.jdpf-elementor-page .jdpf-trust-copy .jdpf-section-heading,body.home.jdpf-elementor-page .jdpf-trust-copy .jdpf-button{grid-column:1/-1}
body.home.jdpf-elementor-page .jdpf-trust-copy .jdpf-reason-card{padding:10px 0;gap:5px}
body.home.jdpf-elementor-page .jdpf-trust-copy .jdpf-reason-card h3{font-size:17px;line-height:1.25}
body.home.jdpf-elementor-page .jdpf-trust-copy .jdpf-reason-card p{font-size:14px;line-height:1.45}
body.page-id-10.jdpf-elementor-page .jdpf-editor-hero + .jdpf-light-section{padding-top:68px;padding-bottom:68px}
body.page-id-10.jdpf-elementor-page .jdpf-value-card{padding:18px;gap:7px}
body.page-id-10.jdpf-elementor-page .jdpf-value-card h3{font-size:17px;line-height:1.25}
body.page-id-10.jdpf-elementor-page .jdpf-value-card p{font-size:14px;line-height:1.48}
body.jdpf-elementor-page .jdpf-legal-section{padding-top:45px;padding-bottom:45px}
body.jdpf-elementor-page .jdpf-legal-section h2{margin-top:10px;font-size:23px;line-height:1.25}
body.jdpf-elementor-page .jdpf-legal-section p{line-height:1.62}
}
/* 3.2.2: restore the original hero discovery badges and FAQ visual system. */
body.home.jdpf-elementor-page .jdpf-editor-hero .jdpf-shell{position:relative}
body.home.jdpf-elementor-page .jdpf-hero-float{position:absolute;z-index:3;width:auto;gap:2px;padding:11px 15px;border:1px solid rgba(111,181,255,.35);border-radius:12px;background:rgba(10,25,58,.92);box-shadow:0 14px 34px rgba(0,0,0,.3);backdrop-filter:blur(12px);animation:jdpfHeroFloat 4.2s ease-in-out infinite}
body.home.jdpf-elementor-page .jdpf-hero-float h3{margin:0;color:#fff;font:700 14px/1.2 Manrope,sans-serif}
body.home.jdpf-elementor-page .jdpf-hero-float p{margin:0;color:#9fb1d0;font-size:11px;line-height:1.35}
body.home.jdpf-elementor-page .jdpf-hero-float-seo{top:70px;right:285px}
body.home.jdpf-elementor-page .jdpf-hero-float-speed{right:-15px;bottom:90px;animation-delay:-2.1s}
@keyframes jdpfHeroFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
body.jdpf-elementor-page .jdpf-faq-section .elementor-accordion-item{border-color:#e3e8f2!important;background:#fff!important;box-shadow:0 1px 0 rgba(11,23,48,.02)}
body.jdpf-elementor-page .jdpf-faq-section .elementor-tab-title{color:#11182d!important;background:#fff!important;font-size:17px!important;font-weight:600!important;line-height:1.45}
body.jdpf-elementor-page .jdpf-faq-section .elementor-tab-title.elementor-active{color:#2f67dc!important}
body.jdpf-elementor-page .jdpf-faq-section .elementor-accordion-icon{color:#3977ff!important}
body.jdpf-elementor-page .jdpf-faq-section .elementor-tab-content{color:#667085!important;background:#fff!important;font-size:15px;line-height:1.7}
body.jdpf-elementor-page .jdpf-faq-section h2{color:#11182d!important;font-family:Manrope,sans-serif;font-weight:800}
@media(max-width:980px){body.home.jdpf-elementor-page .jdpf-hero-float-seo{top:auto;right:28px;bottom:435px}body.home.jdpf-elementor-page .jdpf-hero-float-speed{right:8px;bottom:85px}}
@media(max-width:680px){body.home.jdpf-elementor-page .jdpf-hero-float{position:relative;inset:auto!important;display:inline-flex;margin-top:10px;animation:none}body.home.jdpf-elementor-page .jdpf-hero-float-speed{margin-left:8px}}
/* 3.3: full component-by-component parity pass against the approved design. */
body.jdpf-elementor-page .jdpf-business-fit-grid{grid-template-columns:330px 1fr;align-items:center;gap:30px;text-align:left}
body.jdpf-elementor-page .jdpf-business-fit-grid p{margin:0;color:#526078;font-size:14px;text-align:right}
body.jdpf-elementor-page .jdpf-trust-image{position:relative}
body.jdpf-elementor-page .jdpf-trust-image-stats{position:absolute;right:18px;bottom:18px;left:18px;gap:0;padding:14px;border-radius:10px;background:rgba(8,18,40,.92);backdrop-filter:blur(10px)}
body.jdpf-elementor-page .jdpf-image-stat{padding:6px 12px;border:0;border-right:1px solid rgba(255,255,255,.12);border-radius:0;background:transparent;text-align:center}
body.jdpf-elementor-page .jdpf-image-stat:last-child{border-right:0}
body.jdpf-elementor-page .jdpf-image-stat h3{color:#fff;font-size:21px}.jdpf-image-stat p{color:#9eb0ce!important;font-size:11px!important}
body.jdpf-elementor-page .jdpf-advice-grid{grid-template-columns:1.02fr .98fr;align-items:center;gap:70px}
body.jdpf-elementor-page .jdpf-advice-promises p{color:#34425c;line-height:2}
body.jdpf-elementor-page .jdpf-advice-options{gap:12px}
body.jdpf-elementor-page .jdpf-advice-card{padding:19px 21px;gap:4px;border-color:#dfe5ef}
body.jdpf-elementor-page .jdpf-advice-card .jdpf-eyebrow .elementor-heading-title{font-size:10px}
body.jdpf-elementor-page .jdpf-advice-card h3{font-size:18px}
body.jdpf-elementor-page .jdpf-advice-card .jdpf-button-link .elementor-button{position:absolute;inset:0;opacity:0}
body.jdpf-elementor-page .jdpf-home-closing{padding:58px 0}
body.jdpf-elementor-page .jdpf-closing-grid{grid-template-columns:1.3fr .9fr;align-items:center;gap:70px}
body.jdpf-elementor-page .jdpf-closing-metrics{gap:10px}
body.jdpf-elementor-page .jdpf-closing-metric{padding:13px;border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.08);text-align:center}
body.jdpf-elementor-page .jdpf-closing-metric h3{color:#fff;font-size:22px}.jdpf-closing-metric p{color:#dbe5ff!important;font-size:11px!important}
body.jdpf-elementor-page .jdpf-about-image{position:relative}
body.jdpf-elementor-page .jdpf-about-experience{position:absolute;right:-18px;bottom:22px;width:170px;padding:17px;border:0;background:#3977ff;box-shadow:0 18px 40px rgba(21,66,170,.28)}
body.jdpf-elementor-page .jdpf-about-experience h3{color:#fff;font-size:30px}.jdpf-about-experience p{color:#e8efff!important;font-size:12px!important}
body.jdpf-elementor-page .jdpf-center-action{margin:15px auto 0}
body.jdpf-elementor-page .jdpf-catalogue-points p{color:#4d5b73;font-size:13px;line-height:1.9}
body.jdpf-elementor-page .jdpf-catalogue-card{min-height:0}
body.jdpf-elementor-page .jdpf-portfolio-grid{gap:44px 28px}
body.jdpf-elementor-page .jdpf-portfolio-project{gap:17px}
body.jdpf-elementor-page .jdpf-project-visual{position:relative;min-height:395px;overflow:hidden;padding:54px;border-radius:15px;background:linear-gradient(135deg,#dce8ff,#bfd2ff)}
body.jdpf-elementor-page .jdpf-project-rose{background:linear-gradient(135deg,#ffe8ee,#f5c4d3)}body.jdpf-elementor-page .jdpf-project-gold{background:linear-gradient(135deg,#fff1cf,#ecd397)}body.jdpf-elementor-page .jdpf-project-cyan{background:linear-gradient(135deg,#d9f7fa,#a8dfe7)}
body.jdpf-elementor-page .jdpf-project-index{position:absolute;top:19px;left:22px}.jdpf-project-index .elementor-heading-title{color:rgba(15,31,67,.42);font-size:12px;letter-spacing:2px}
body.jdpf-elementor-page .jdpf-browser-card{min-height:260px;padding:49px 34px 28px;border-radius:12px;background:#fff;box-shadow:0 20px 50px rgba(29,48,89,.2)}
body.jdpf-elementor-page .jdpf-browser-card::before{position:absolute;top:18px;left:22px;width:8px;height:8px;content:"";border-radius:50%;background:#ff6b6b;box-shadow:15px 0 #ffc857,30px 0 #58c98d}
body.jdpf-elementor-page .jdpf-browser-card h3{color:#111b35;font:800 28px/1.15 Manrope,sans-serif}
body.jdpf-elementor-page .jdpf-browser-lines p{color:#c7d2e7;font-size:22px;letter-spacing:2px;line-height:1.05}
body.jdpf-elementor-page .jdpf-project-metric{position:absolute;right:25px;bottom:24px;width:145px;padding:15px;border:0;background:#0b1730}
body.jdpf-elementor-page .jdpf-project-metric h3{color:#fff;font-size:22px}.jdpf-project-metric p{color:#aebbd2!important;font-size:11px!important}
body.jdpf-elementor-page .jdpf-project-caption{display:grid;grid-template-columns:1fr auto;align-items:center}.jdpf-project-caption h2{margin:0;color:#111b35;font:800 25px/1.25 Manrope,sans-serif}
body.jdpf-elementor-page .jdpf-testimonial-metrics{z-index:2;margin-top:-32px;padding:0;background:transparent}
body.jdpf-elementor-page .jdpf-testimonial-metrics .jdpf-shell{padding:21px 28px;border-radius:12px;background:#fff;box-shadow:0 16px 42px rgba(14,28,58,.13)}
body.jdpf-elementor-page .jdpf-metric-card{padding:8px;border:0;border-right:1px solid #e5eaf2;border-radius:0;text-align:center}.jdpf-metric-card:last-child{border-right:0}.jdpf-metric-card h3{font-size:24px}.jdpf-metric-card p{font-size:12px!important}
body.jdpf-elementor-page .jdpf-principle-card{padding:6px;border:0;background:transparent;text-align:center}.jdpf-principle-card .jdpf-eyebrow .elementor-heading-title{color:#73a0ff;font-size:22px}.jdpf-principle-card h3{color:#fff;font-size:15px}
body.jdpf-elementor-page .jdpf-faq-tabs{position:sticky;z-index:5;top:0;padding:0;background:#fff;border-bottom:1px solid #e3e8f2}
body.admin-bar.jdpf-elementor-page .jdpf-faq-tabs{top:32px}
body.jdpf-elementor-page .jdpf-faq-tabs .jdpf-shell{max-width:900px}.jdpf-faq-tabs .jdpf-grid{display:flex;justify-content:center;gap:28px}.jdpf-faq-tabs .jdpf-button-link .elementor-button{padding:18px 4px;color:#526078;font-size:13px}
body.jdpf-elementor-page .jdpf-faq-contact{padding:62px 0;background:#0b1730;text-align:center}.jdpf-faq-contact .jdpf-shell{align-items:center}.jdpf-faq-contact h2{color:#fff;font-size:36px}.jdpf-faq-contact p{color:#aebbd2}.jdpf-faq-contact .jdpf-actions{justify-content:center}
@media(max-width:980px){body.jdpf-elementor-page .jdpf-advice-grid,body.jdpf-elementor-page .jdpf-closing-grid{grid-template-columns:1fr;gap:35px}body.jdpf-elementor-page .jdpf-project-visual{min-height:330px;padding:40px}}
@media(max-width:680px){body.jdpf-elementor-page .jdpf-business-fit-grid{grid-template-columns:1fr;text-align:center}.jdpf-business-fit-grid p{text-align:center!important}body.jdpf-elementor-page .jdpf-trust-image-stats{right:8px;bottom:8px;left:8px;padding:8px}body.jdpf-elementor-page .jdpf-about-experience{right:8px;bottom:12px}body.jdpf-elementor-page .jdpf-project-visual{min-height:285px;padding:38px 24px}.jdpf-browser-card h3{font-size:22px!important}body.jdpf-elementor-page .jdpf-faq-tabs{position:relative;top:auto}.jdpf-faq-tabs .jdpf-grid{overflow-x:auto;justify-content:flex-start;gap:16px}}
/* 3.3.1: dimension reconciliation after the complete live/reference audit. */
@media(min-width:981px){
body.jdpf-elementor-page .jdpf-cta-section{padding-top:32px;padding-bottom:32px}
body.home.jdpf-elementor-page .jdpf-business-fit{padding-top:13px;padding-bottom:13px}
body.home.jdpf-elementor-page .jdpf-muted-section{padding-top:33px;padding-bottom:33px}
body.home.jdpf-elementor-page .jdpf-advice-section{padding-top:28px;padding-bottom:28px}
body.home.jdpf-elementor-page .jdpf-dark-section:not(:nth-last-child(2)){padding-top:58px;padding-bottom:58px}
body.home.jdpf-elementor-page .jdpf-light-section:nth-last-child(3){padding-top:47px;padding-bottom:47px}
body.home.jdpf-elementor-page .jdpf-dark-section:nth-last-child(2){padding-top:42px;padding-bottom:42px}
body.home.jdpf-elementor-page .jdpf-home-closing{padding-top:30px;padding-bottom:30px}
body.page-id-10.jdpf-elementor-page .jdpf-editor-hero + .jdpf-light-section{padding-top:44px;padding-bottom:44px}
body.page-id-10.jdpf-elementor-page .jdpf-value-card{padding:14px;gap:5px}
body.page-id-10.jdpf-elementor-page .jdpf-value-card p{font-size:13px;line-height:1.36}
body.jdpf-elementor-page .jdpf-testimonial-metrics{margin-top:-72px}
body.jdpf-elementor-page .jdpf-testimonial-metrics .jdpf-shell{padding-top:15px;padding-bottom:15px}
body.jdpf-elementor-page .jdpf-testimonial-metrics + .jdpf-light-section{padding-top:68px;padding-bottom:68px}
body.jdpf-elementor-page .jdpf-testimonial-metrics + .jdpf-light-section + .jdpf-muted-section{padding-top:31px;padding-bottom:31px}
body.jdpf-elementor-page .jdpf-review-principles{padding-top:34px;padding-bottom:34px}
body.jdpf-elementor-page .jdpf-faq-tabs{height:69px;min-height:69px}
body.jdpf-elementor-page .jdpf-faq-tabs .jdpf-shell{height:69px;min-height:69px;gap:0}
body.jdpf-elementor-page .jdpf-faq-tabs .jdpf-grid{height:69px;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;gap:28px}
body.jdpf-elementor-page .jdpf-faq-tabs .elementor-widget{width:auto!important;flex:0 0 auto}
body.jdpf-elementor-page .jdpf-faq-contact{padding-top:39px;padding-bottom:39px}
body.jdpf-elementor-page .jdpf-legal-section{padding-top:22px;padding-bottom:22px}
body.jdpf-elementor-page .jdpf-legal-section h2{font-size:22px;line-height:1.2}
body.jdpf-elementor-page .jdpf-legal-section p{font-size:15px;line-height:1.55}
}
/* 3.3.2: exact Services copy/actions and original About photo badge treatment. */
body.jdpf-elementor-page .jdpf-catalogue-card .jdpf-catalogue-points p{color:#5f6b82;font-size:13px;line-height:1.85}
body.jdpf-elementor-page .jdpf-catalogue-card .jdpf-quote-link{margin-top:auto}
body.jdpf-elementor-page .jdpf-catalogue-card .jdpf-quote-link .elementor-button{color:#3977ff;font-weight:700}
body.page-id-10.jdpf-elementor-page .jdpf-about-experience{right:auto;bottom:-23px;left:-24px;width:157px;padding:15px 20px;border:1px solid rgba(255,255,255,.7);border-radius:12px;background:rgba(255,255,255,.92);box-shadow:0 15px 35px rgba(15,28,65,.17);backdrop-filter:blur(10px)}
body.page-id-10.jdpf-elementor-page .jdpf-about-experience h3{color:#3977ff;font-size:20.8px;line-height:1.6}
body.page-id-10.jdpf-elementor-page .jdpf-about-experience p{color:#65708a!important;font-size:9.6px!important;line-height:1.6;text-transform:none}
@media(max-width:680px){body.page-id-10.jdpf-elementor-page .jdpf-about-experience{bottom:-16px;left:10px}}
/* 3.3.3: anchor the About badge to the image edge, not the stretched grid column. */
body.page-id-10.jdpf-elementor-page .jdpf-about-image{container-type:inline-size}
body.page-id-10.jdpf-elementor-page .jdpf-about-experience{top:calc(100cqw / 1.02 - 70px);bottom:auto}
@media(max-width:680px){body.page-id-10.jdpf-elementor-page .jdpf-about-experience{top:calc(100cqw - 58px);bottom:auto}}