.elementor-47437 .elementor-element.elementor-element-b39e742{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:48px;--padding-left:0px;--padding-right:0px;}.elementor-widget-theme-post-title .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-47437 .elementor-element.elementor-element-917c77f{text-align:center;}.elementor-47437 .elementor-element.elementor-element-917c77f .elementor-heading-title{color:var( --e-global-color-441881b );}.elementor-widget-theme-post-excerpt{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-47437 .elementor-element.elementor-element-45f0570{text-align:center;font-family:"DM Sans", Sans-serif;font-size:20px;font-weight:300;}.elementor-widget-post-info .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-post-info .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-post-info .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-post-info .elementor-icon-list-text, .elementor-widget-post-info .elementor-icon-list-text a{color:var( --e-global-color-secondary );}.elementor-widget-post-info .elementor-icon-list-item{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-47437 .elementor-element.elementor-element-bb1230c .elementor-icon-list-item:not(:last-child):after{content:"";border-color:var( --e-global-color-7bed228 );}.elementor-47437 .elementor-element.elementor-element-bb1230c .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child):after{border-top-style:solid;border-top-width:1px;}.elementor-47437 .elementor-element.elementor-element-bb1230c .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-left-style:solid;}.elementor-47437 .elementor-element.elementor-element-bb1230c .elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-left-width:1px;}.elementor-47437 .elementor-element.elementor-element-bb1230c .elementor-icon-list-icon{width:14px;}.elementor-47437 .elementor-element.elementor-element-bb1230c .elementor-icon-list-icon i{font-size:14px;}.elementor-47437 .elementor-element.elementor-element-bb1230c .elementor-icon-list-icon svg{--e-icon-list-icon-size:14px;}.elementor-47437 .elementor-element.elementor-element-bb1230c .elementor-icon-list-text, .elementor-47437 .elementor-element.elementor-element-bb1230c .elementor-icon-list-text a{color:var( --e-global-color-441881b );}.elementor-widget-theme-post-featured-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-47437 .elementor-element.elementor-element-fb30675 img{border-radius:16px 16px 16px 16px;}.elementor-47437 .elementor-element.elementor-element-e4f863e{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:64px 64px;--row-gap:64px;--column-gap:64px;--margin-top:0px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-47437 .elementor-element.elementor-element-db91c70{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:0;}.elementor-widget-table-of-contents{--header-color:var( --e-global-color-secondary );--item-text-color:var( --e-global-color-text );--item-text-hover-color:var( --e-global-color-accent );--marker-color:var( --e-global-color-text );}.elementor-widget-table-of-contents .elementor-toc__header, .elementor-widget-table-of-contents .elementor-toc__header-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-table-of-contents .elementor-toc__list-item{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-47437 .elementor-element.elementor-element-0baa92b{--box-background-color:var( --e-global-color-a47177f );--box-border-color:#E5E5E5;--box-border-radius:8px;--header-background-color:var( --e-global-color-a47177f );--header-color:var( --e-global-color-441881b );--item-text-hover-color:var( --e-global-color-441881b );--item-text-hover-decoration:underline;--item-text-active-color:var( --e-global-color-primary );}.elementor-47437 .elementor-element.elementor-element-0baa92b .elementor-toc__header-title{text-align:start;}.elementor-47437 .elementor-element.elementor-element-0baa92b .elementor-toc__header, .elementor-47437 .elementor-element.elementor-element-0baa92b .elementor-toc__header-title{font-family:"DM Sans", Sans-serif;font-size:20px;font-weight:300;}.elementor-47437 .elementor-element.elementor-element-0baa92b .elementor-toc__list-item{font-family:"DM Sans", Sans-serif;font-size:14px;font-weight:300;}.elementor-47437 .elementor-element.elementor-element-bfed6bd{--display:flex;--border-radius:8px 8px 8px 8px;--padding-top:24px;--padding-bottom:24px;--padding-left:24px;--padding-right:24px;}.elementor-47437 .elementor-element.elementor-element-bfed6bd:not(.elementor-motion-effects-element-type-background), .elementor-47437 .elementor-element.elementor-element-bfed6bd > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(135deg, var( --e-global-color-secondary ) 0%, var( --e-global-color-primary ) 100%);}.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-47437 .elementor-element.elementor-element-71974c2 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:20px;font-weight:300;color:var( --e-global-color-a47177f );}.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-47437 .elementor-element.elementor-element-4614dc3{color:var( --e-global-color-7bed228 );}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-47437 .elementor-element.elementor-element-349f722 .elementor-button{background-color:#FFFFFF;font-family:"DM Sans", Sans-serif;font-weight:500;fill:var( --e-global-color-primary );color:var( --e-global-color-primary );}.elementor-47437 .elementor-element.elementor-element-349f722 .elementor-button:hover, .elementor-47437 .elementor-element.elementor-element-349f722 .elementor-button:focus{background-color:#040D36;color:#FFFFFF;}.elementor-47437 .elementor-element.elementor-element-349f722 .elementor-button:hover svg, .elementor-47437 .elementor-element.elementor-element-349f722 .elementor-button:focus svg{fill:#FFFFFF;}.elementor-47437 .elementor-element.elementor-element-ed92937{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-theme-post-content{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-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-47437 .elementor-element.elementor-element-8868249{--divider-border-style:solid;--divider-color:#E5E5E5;--divider-border-width:1px;}.elementor-47437 .elementor-element.elementor-element-8868249 .elementor-divider-separator{width:100%;}.elementor-47437 .elementor-element.elementor-element-8868249 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-47437 .elementor-element.elementor-element-cc42b5f{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--border-radius:16px 16px 16px 16px;--padding-top:20px;--padding-bottom:20px;--padding-left:40px;--padding-right:40px;}.elementor-47437 .elementor-element.elementor-element-cc42b5f:not(.elementor-motion-effects-element-type-background), .elementor-47437 .elementor-element.elementor-element-cc42b5f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(135deg, var( --e-global-color-secondary ) 0%, var( --e-global-color-primary ) 100%);}.elementor-47437 .elementor-element.elementor-element-0667708{--display:flex;}.elementor-47437 .elementor-element.elementor-element-4178792 .elementor-heading-title{color:#FFFFFF;}.elementor-47437 .elementor-element.elementor-element-7b603f4{color:var( --e-global-color-7bed228 );}.elementor-47437 .elementor-element.elementor-element-ae2f30b{--display:flex;--justify-content:center;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-47437 .elementor-element.elementor-element-10bc26e{--grid-side-margin:10px;--grid-column-gap:10px;--grid-row-gap:10px;--grid-bottom-margin:10px;}@media(max-width:1024px){.elementor-47437 .elementor-element.elementor-element-b39e742{--padding-top:0px;--padding-bottom:48px;--padding-left:16px;--padding-right:16px;}.elementor-47437 .elementor-element.elementor-element-e4f863e{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:48px;--padding-bottom:48px;--padding-left:16px;--padding-right:16px;}.elementor-47437 .elementor-element.elementor-element-db91c70{--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-47437 .elementor-element.elementor-element-0baa92b{width:var( --container-widget-width, 50% );max-width:50%;--container-widget-width:50%;--container-widget-flex-grow:0;}.elementor-47437 .elementor-element.elementor-element-bfed6bd{--justify-content:center;}.elementor-47437 .elementor-element.elementor-element-71974c2{text-align:center;}.elementor-47437 .elementor-element.elementor-element-4614dc3{text-align:center;} .elementor-47437 .elementor-element.elementor-element-10bc26e{--grid-side-margin:10px;--grid-column-gap:10px;--grid-row-gap:10px;--grid-bottom-margin:10px;}}@media(max-width:767px){.elementor-47437 .elementor-element.elementor-element-b39e742{--padding-top:0px;--padding-bottom:32px;--padding-left:8px;--padding-right:8px;}.elementor-47437 .elementor-element.elementor-element-e4f863e{--gap:32px 32px;--row-gap:32px;--column-gap:32px;--padding-top:32px;--padding-bottom:32px;--padding-left:8px;--padding-right:8px;}.elementor-47437 .elementor-element.elementor-element-0baa92b{width:100%;max-width:100%;}.elementor-47437 .elementor-element.elementor-element-bfed6bd{--padding-top:16px;--padding-bottom:16px;--padding-left:16px;--padding-right:16px;}.elementor-47437 .elementor-element.elementor-element-cc42b5f{--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:16px;--padding-bottom:16px;--padding-left:32px;--padding-right:32px;}.elementor-47437 .elementor-element.elementor-element-4178792{text-align:center;}.elementor-47437 .elementor-element.elementor-element-7b603f4{text-align:center;}.elementor-47437 .elementor-element.elementor-element-ae2f30b{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );} .elementor-47437 .elementor-element.elementor-element-10bc26e{--grid-side-margin:10px;--grid-column-gap:10px;--grid-row-gap:10px;--grid-bottom-margin:10px;}}@media(min-width:768px){.elementor-47437 .elementor-element.elementor-element-db91c70{--width:25%;}.elementor-47437 .elementor-element.elementor-element-ed92937{--width:75%;}.elementor-47437 .elementor-element.elementor-element-0667708{--width:66.67%;}.elementor-47437 .elementor-element.elementor-element-ae2f30b{--width:33.33%;}}@media(max-width:1024px) and (min-width:768px){.elementor-47437 .elementor-element.elementor-element-db91c70{--width:100%;}.elementor-47437 .elementor-element.elementor-element-bfed6bd{--width:50%;}.elementor-47437 .elementor-element.elementor-element-ed92937{--width:100%;}}/* Start custom CSS for table-of-contents, class: .elementor-element-0baa92b *//* Style the header */
.elementor-toc__header-title {
    display: flex;
    align-items: center;
    width: 100%;
}
/* Add grey line separator */
.elementor-toc__header {
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
    padding-bottom: 20px;
    margin-bottom: 0px;
}

/* Link and hover animations */
.elementor-toc__header-title a {
    display: flex;
    align-items: center;
    width: 100%;
    transition: transform 0.2s ease, opacity 0.2s ease;
}

.elementor-toc__header-title a:hover {
    opacity: 0.8;
    transform: translateX(-4px);
}

.elementor-toc__header-title svg {
    transition: transform 0.2s ease;
}

.elementor-toc__header-title a:hover svg {
    transform: translateX(-2px);
}/* End custom CSS */
/* Start custom CSS for share-buttons, class: .elementor-element-10bc26e *//* White default state */
.elementor-share-btn {
    background-image: none !important;
    background-color: rgba(255, 255, 255, 0.4) !important;
    transition: all 0.3s ease !important;
}

.elementor-share-btn__icon svg {
    fill: white !important;
}

/* Brand colors on hover */
.elementor-share-btn_linkedin:hover {
    background-color: #0077b5 !important;
}
.elementor-share-btn_x-twitter:hover {
    background-color: #000000 !important;
}
.elementor-share-btn_facebook:hover {
    background-color: #1877f2 !important;
}/* End custom CSS */
/* Start custom CSS *//* 
 * WordPress Code Block Styling
 * This CSS provides syntax highlighting and a copy button
 * for code blocks in WordPress posts
 */

/* Base code block styling */
.wp-block-code {
    position: relative;
    background-color: #f6f8fa !important;  /* GitHub-style light background */
    border: 1px solid #eaecef !important;
    border-radius: 6px !important;
    padding: 16px !important;
    margin: 15px 0 !important;
    overflow-x: auto !important;
    font-family: 'Consolas', 'Monaco', 'Roboto Mono', monospace !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    color: #24292e !important;
}

/* Code content wrapper */
.wp-block-code code {
    display: block !important;
}

/* 
 * Copy Button Implementation
 * Appears on hover, provides visual feedback
 */
.wp-block-code::after {
    content: var(--copy-text, "Copy") !important;
    position: absolute !important;
    top: 8px !important;
    right: 8px !important;
    background-color: var(--button-bg, #0969da) !important;  /* GitHub-style blue */
    color: white !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 6px 12px !important;
    font-size: 12px !important;
    cursor: pointer !important;
    opacity: 0;
    transition: all 0.2s ease-in-out !important;
}

/* Show copy button on hover */
.wp-block-code:hover::after {
    opacity: 1 !important;
}

/* Copy button success state */
.wp-block-code.copied::after {
    --copy-text: "Copied!" !important;
    --button-bg: #28a745 !important;  /* GitHub-style success green */
}

/* 
 * Inline Code Styling 
 * For short code snippets within paragraphs
 */
:not(pre) > code {
    background-color: #f6f8fa !important;
    color: #6B7280 !important;
    padding: 2px 4px !important;
    border-radius: 3px !important;
    font-family: monospace !important;
    font-size: 0.9em !important;
    border: none !important;
}

/* 
 * Mobile Responsiveness
 * Adjusts styling for smaller screens
 */
@media screen and (max-width: 600px) {
    .wp-block-code {
        margin: 15px -15px !important;
        border-radius: 0 !important;
    }
}

/* Prevent vertical expansion during load */
.elementor-widget-post-info {
  height: 30px !important; /* Fixed height */
  overflow: hidden;
}

.elementor-widget-post-info .elementor-icon-list-items {
  height: 30px !important;
}

/* Blog post typography */
.elementor-widget-theme-post-content h2 {
  font-size: 26px;
  margin-top: 2em;
}

.elementor-widget-theme-post-content h3 {
  font-size: 22px;
  margin-top: 1.8em;
}

.elementor-widget-theme-post-content h4 {
  font-size: 18px;
  margin-top: 1.5em;
}

.elementor-widget-theme-post-content h5 {
  font-size: 16px;
  margin-top: 1.2em;
}/* End custom CSS */