.elementor-2418 .elementor-element.elementor-element-72eabde.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-2418 .elementor-element.elementor-element-468d742.xpro-widget-bg-overlay:before{transition:background 0.3s;}/* Start custom CSS for section, class: .elementor-element-4d77178 *//* =========================================================
   SREEJITH PM BLOG DESIGN
   Scoped to .sjpm-blog
   ========================================================= */

.sjpm-blog {

  --sjpm-black: #080808;
  --sjpm-dark: #111111;
  --sjpm-text: #202020;
  --sjpm-muted: #666666;
  --sjpm-light: #f6f6f6;
  --sjpm-border: #e5e5e5;
  --sjpm-white: #ffffff;

  max-width: 1120px;

  margin: 0 auto;

  padding: 55px 25px 90px;

  color: var(--sjpm-text);

  font-family:
    Inter,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Roboto,
    Arial,
    sans-serif;

  font-size: 17px;

  line-height: 1.75;

}


/* =========================================================
   RESET
   ========================================================= */

.sjpm-blog *,
.sjpm-blog *::before,
.sjpm-blog *::after {

  box-sizing: border-box;

}


.sjpm-blog a {

  color: inherit;

  text-decoration: none;

}


.sjpm-blog p {

  margin: 0 0 20px;

}


.sjpm-blog h1,
.sjpm-blog h2,
.sjpm-blog h3 {

  color: var(--sjpm-black);

  line-height: 1.15;

  letter-spacing: -0.03em;

}


.sjpm-blog h2 {

  font-size: clamp(30px, 4vw, 46px);

  margin: 10px 0 25px;

}


.sjpm-blog h3 {

  font-size: 22px;

  margin: 30px 0 13px;

}


/* =========================================================
   HEADER
   ========================================================= */

.sjpm-blog-header {

  padding: 60px 0 55px;

  border-bottom: 1px solid var(--sjpm-border);

}


.sjpm-blog-eyebrow {

  display: inline-block;

  margin-bottom: 22px;

  color: #777;

  font-size: 12px;

  font-weight: 800;

  letter-spacing: 0.16em;

  text-transform: uppercase;

}


.sjpm-blog-header h1 {

  max-width: 1000px;

  margin: 0 0 28px;

  font-size: clamp(42px, 7vw, 78px);

  line-height: 1.02;

}


.sjpm-blog-intro {

  max-width: 850px;

  color: var(--sjpm-muted);

  font-size: 20px;

  line-height: 1.7;

}


/* =========================================================
   BUTTONS
   ========================================================= */

.sjpm-blog-header-buttons,
.sjpm-blog-about-buttons,
.sjpm-blog-final-buttons {

  display: flex;

  flex-wrap: wrap;

  gap: 12px;

}


.sjpm-blog-header-buttons {

  margin-top: 30px;

}


.sjpm-blog-btn {

  display: inline-flex;

  align-items: center;

  justify-content: center;

  min-height: 48px;

  padding: 12px 22px;

  border-radius: 100px;

  border: 1px solid var(--sjpm-black);

  font-size: 14px;

  font-weight: 800;

  transition:
    transform .25s ease,
    background .25s ease,
    color .25s ease;

}


.sjpm-blog-btn:hover {

  transform: translateY(-3px);

}


.sjpm-blog-btn-dark {

  background: var(--sjpm-black);

  color: #fff !important;

}


.sjpm-blog-btn-dark:hover {

  background: #333;

}


.sjpm-blog-btn-light {

  background: transparent;

  color: var(--sjpm-black) !important;

}


.sjpm-blog-btn-light:hover {

  background: var(--sjpm-black);

  color: #fff !important;

}


/* =========================================================
   TABLE OF CONTENTS
   ========================================================= */

.sjpm-blog-toc {

  margin: 45px 0;

  padding: 30px;

  background: var(--sjpm-light);

  border: 1px solid var(--sjpm-border);

  border-radius: 24px;

}


.sjpm-blog-toc-heading {

  display: flex;

  flex-direction: column;

  margin-bottom: 20px;

}


.sjpm-blog-toc-heading span {

  color: #888;

  font-size: 11px;

  font-weight: 800;

  letter-spacing: .15em;

}


.sjpm-blog-toc-heading strong {

  margin-top: 3px;

  font-size: 22px;

}


.sjpm-blog-toc-grid {

  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 8px 20px;

}


.sjpm-blog-toc-grid a {

  padding: 9px 0;

  color: #555;

  font-size: 14px;

  transition: .2s ease;

}


.sjpm-blog-toc-grid a:hover {

  color: #000;

  transform: translateX(4px);

}


/* =========================================================
   SECTIONS
   ========================================================= */

.sjpm-blog-section {

  padding: 60px 0;

  border-bottom: 1px solid var(--sjpm-border);

}


.sjpm-blog-section-number {

  display: inline-block;

  margin-bottom: 5px;

  color: #999;

  font-size: 12px;

  font-weight: 800;

  letter-spacing: .15em;

}


.sjpm-blog-section p {

  max-width: 870px;

  color: #444;

}


.sjpm-blog-section a {

  font-weight: 750;

  text-decoration: underline;

  text-decoration-thickness: 1px;

  text-underline-offset: 4px;

}


.sjpm-blog-section a:hover {

  color: #777;

}


/* =========================================================
   INTRO NOTE
   ========================================================= */

.sjpm-blog-note {

  display: flex;

  gap: 12px;

  max-width: 850px;

  margin-top: 30px;

  padding: 20px 22px;

  background: var(--sjpm-light);

  border-left: 4px solid var(--sjpm-black);

  border-radius: 0 14px 14px 0;

}


.sjpm-blog-note strong {

  flex-shrink: 0;

}


/* =========================================================
   SERVICE CARDS
   ========================================================= */

.sjpm-blog-cards {

  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 18px;

  margin-top: 30px;

}


.sjpm-blog-card {

  padding: 30px;

  background: #fff;

  border: 1px solid var(--sjpm-border);

  border-radius: 22px;

  transition:
    transform .3s ease,
    box-shadow .3s ease;

}


.sjpm-blog-card:hover {

  transform: translateY(-6px);

  box-shadow:
    0 20px 50px rgba(0,0,0,.08);

}


.sjpm-blog-card-icon {

  display: flex;

  align-items: center;

  justify-content: center;

  width: 44px;

  height: 44px;

  margin-bottom: 20px;

  border: 1px solid var(--sjpm-border);

  border-radius: 50%;

  font-size: 11px;

  font-weight: 800;

}


.sjpm-blog-card h3 {

  margin-top: 0;

}


.sjpm-blog-card p {

  color: #666;

  font-size: 15px;

}


.sjpm-blog-card a {

  font-size: 14px;

}


/* =========================================================
   CHECK LIST
   ========================================================= */

.sjpm-blog-check-list {

  max-width: 850px;

  margin: 25px 0;

  padding: 0;

  list-style: none;

}


.sjpm-blog-check-list li {

  position: relative;

  padding: 11px 0 11px 32px;

  border-bottom: 1px solid var(--sjpm-border);

  color: #444;

}


.sjpm-blog-check-list li::before {

  content: "✓";

  position: absolute;

  left: 0;

  top: 10px;

  font-weight: 900;

  color: #111;

}


/* =========================================================
   HIGHLIGHT SECTION
   ========================================================= */

.sjpm-blog-highlight {

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 35px;

  margin: 60px 0;

  padding: 42px;

  background: var(--sjpm-black);

  color: #fff;

  border-radius: 25px;

}


.sjpm-blog-highlight-content {

  max-width: 700px;

}


.sjpm-blog-highlight-content > span {

  display: block;

  margin-bottom: 12px;

  color: #aaa;

  font-size: 11px;

  font-weight: 800;

  letter-spacing: .15em;

}


.sjpm-blog-highlight h2 {

  margin: 0 0 15px;

  color: #fff;

}


.sjpm-blog-highlight p {

  margin: 0;

  color: #ccc;

}


.sjpm-blog-highlight-button {

  flex-shrink: 0;

  padding: 13px 21px;

  background: #fff;

  color: #111 !important;

  border-radius: 100px;

  font-size: 14px;

  font-weight: 800;

  transition: .25s ease;

}


.sjpm-blog-highlight-button:hover {

  transform: translateY(-3px);

}


/* =========================================================
   SEO MINI GRID
   ========================================================= */

.sjpm-blog-mini-grid {

  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 14px;

  margin: 30px 0;

}


.sjpm-blog-mini-grid > div {

  padding: 25px;

  background: var(--sjpm-light);

  border-radius: 18px;

}


.sjpm-blog-mini-grid strong {

  font-size: 18px;

}


.sjpm-blog-mini-grid p {

  margin: 8px 0 0;

  font-size: 14px;

  color: #666;

}


/* =========================================================
   NUMBERED LIST
   ========================================================= */

.sjpm-blog-number-list {

  max-width: 850px;

  padding-left: 25px;

}


.sjpm-blog-number-list li {

  padding: 8px 0;

}


/* =========================================================
   METRICS
   ========================================================= */

.sjpm-blog-metrics {

  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 12px;

  margin-top: 30px;

}


.sjpm-blog-metrics > div {

  padding: 25px;

  background: var(--sjpm-light);

  border-radius: 18px;

}


.sjpm-blog-metrics strong {

  display: block;

  margin-bottom: 7px;

  font-size: 19px;

}


.sjpm-blog-metrics span {

  display: block;

  color: #666;

  font-size: 14px;

  line-height: 1.5;

}


/* =========================================================
   PROCESS
   ========================================================= */

.sjpm-blog-process {

  max-width: 900px;

  margin-top: 30px;

}


.sjpm-blog-process-item {

  display: flex;

  gap: 20px;

  padding: 25px 0;

  border-bottom: 1px solid var(--sjpm-border);

}


.sjpm-blog-process-item > span {

  display: flex;

  align-items: center;

  justify-content: center;

  flex: 0 0 48px;

  width: 48px;

  height: 48px;

  border: 1px solid var(--sjpm-border);

  border-radius: 50%;

  font-size: 12px;

  font-weight: 800;

}


.sjpm-blog-process-item h3 {

  margin: 0 0 7px;

  font-size: 20px;

}


.sjpm-blog-process-item p {

  margin: 0;

  font-size: 15px;

}


/* =========================================================
   ABOUT CARD
   ========================================================= */

.sjpm-blog-about {

  margin: 60px 0;

  padding: 50px;

  background: var(--sjpm-light);

  border: 1px solid var(--sjpm-border);

  border-radius: 28px;

}


.sjpm-blog-about-label {

  margin-bottom: 15px;

  color: #888;

  font-size: 11px;

  font-weight: 800;

  letter-spacing: .15em;

}


.sjpm-blog-about h2 {

  max-width: 750px;

}


.sjpm-blog-about p {

  max-width: 800px;

  color: #555;

}


.sjpm-blog-about-buttons {

  margin-top: 25px;

}


/* =========================================================
   FAQ
   ========================================================= */

.sjpm-blog-faq details {

  border-bottom: 1px solid var(--sjpm-border);

}


.sjpm-blog-faq summary {

  position: relative;

  cursor: pointer;

  padding: 22px 45px 22px 0;

  font-size: 18px;

  font-weight: 750;

  list-style: none;

}


.sjpm-blog-faq summary::-webkit-details-marker {

  display: none;

}


.sjpm-blog-faq summary::after {

  content: "+";

  position: absolute;

  right: 5px;

  top: 16px;

  font-size: 26px;

  font-weight: 400;

}


.sjpm-blog-faq details[open] summary::after {

  content: "−";

}


.sjpm-blog-faq details p {

  padding: 0 45px 22px 0;

  color: #666;

  font-size: 15px;

}


/* =========================================================
   RELATED ARTICLE
   ========================================================= */

.sjpm-blog-related {

  margin: 60px 0;

  padding: 35px;

  border: 1px solid var(--sjpm-border);

  border-radius: 22px;

}


.sjpm-blog-related-label {

  margin-bottom: 12px;

  color: #888;

  font-size: 11px;

  font-weight: 800;

  letter-spacing: .15em;

}


.sjpm-blog-related h2 {

  margin-top: 0;

  font-size: 30px;

}


.sjpm-blog-related p {

  max-width: 700px;

  color: #666;

}


.sjpm-blog-related-link {

  display: inline-block;

  font-weight: 800;

  text-decoration: underline !important;

  text-underline-offset: 5px;

}


/* =========================================================
   FINAL CTA
   ========================================================= */

.sjpm-blog-final-cta {

  margin-top: 60px;

  padding: 65px 35px;

  text-align: center;

  background: var(--sjpm-black);

  color: #fff;

  border-radius: 30px;

}


.sjpm-blog-final-label {

  margin-bottom: 15px;

  color: #999;

  font-size: 11px;

  font-weight: 800;

  letter-spacing: .15em;

}


.sjpm-blog-final-cta h2 {

  max-width: 800px;

  margin: 0 auto 20px;

  color: #fff;

  font-size: clamp(32px, 5vw, 56px);

}


.sjpm-blog-final-cta p {

  max-width: 720px;

  margin: 0 auto 30px;

  color: #ccc;

}


.sjpm-blog-final-buttons {

  justify-content: center;

}


.sjpm-blog-btn-white {

  background: #fff;

  color: #111 !important;

  border-color: #fff;

}


.sjpm-blog-btn-white:hover {

  background: #ddd;

}


.sjpm-blog-btn-outline-white {

  background: transparent;

  color: #fff !important;

  border-color: #666;

}


.sjpm-blog-btn-outline-white:hover {

  background: #fff;

  color: #111 !important;

}


/* =========================================================
   FOOTER
   ========================================================= */

.sjpm-blog-footer {

  padding-top: 40px;

  text-align: center;

}


.sjpm-blog-footer-links {

  display: flex;

  justify-content: center;

  align-items: center;

  flex-wrap: wrap;

  gap: 20px;

  margin-bottom: 18px;

}


.sjpm-blog-footer-links a {

  color: #555;

  font-size: 14px;

  font-weight: 700;

}


.sjpm-blog-footer-links a:hover {

  color: #000;

}


.sjpm-blog-footer p {

  color: #888;

  font-size: 13px;

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 850px) {

  .sjpm-blog {

    padding: 35px 20px 60px;

  }


  .sjpm-blog-header {

    padding: 40px 0;

  }


  .sjpm-blog-header h1 {

    font-size: clamp(40px, 10vw, 60px);

  }


  .sjpm-blog-toc-grid {

    grid-template-columns: repeat(2, 1fr);

  }


  .sjpm-blog-cards {

    grid-template-columns: 1fr;

  }


  .sjpm-blog-metrics {

    grid-template-columns: repeat(2, 1fr);

  }


  .sjpm-blog-highlight {

    flex-direction: column;

    align-items: flex-start;

  }


  .sjpm-blog-about {

    padding: 35px 25px;

  }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 560px) {

  .sjpm-blog {

    padding: 25px 15px 50px;

    font-size: 16px;

  }


  .sjpm-blog-header h1 {

    font-size: 42px;

  }


  .sjpm-blog-intro {

    font-size: 18px;

  }


  .sjpm-blog-toc {

    padding: 22px;

  }


  .sjpm-blog-toc-grid {

    grid-template-columns: 1fr;

  }


  .sjpm-blog-section {

    padding: 45px 0;

  }


  .sjpm-blog-mini-grid {

    grid-template-columns: 1fr;

  }


  .sjpm-blog-metrics {

    grid-template-columns: 1fr;

  }


  .sjpm-blog-highlight {

    padding: 30px 23px;

  }


  .sjpm-blog-about {

    padding: 30px 20px;

  }


  .sjpm-blog-header-buttons,
  .sjpm-blog-about-buttons,
  .sjpm-blog-final-buttons {

    flex-direction: column;

  }


  .sjpm-blog-btn,
  .sjpm-blog-highlight-button {

    width: 100%;

  }


  .sjpm-blog-process-item {

    gap: 13px;

  }


  .sjpm-blog-final-cta {

    padding: 45px 20px;

  }


  .sjpm-blog-footer-links {

    gap: 12px;

  }

}/* End custom CSS */