.elementor-kit-85{--e-global-color-primary:#0D1B2A;--e-global-color-secondary:#F7F4EF;--e-global-color-text:#1C1C1C;--e-global-color-accent:#E8500A;--e-global-color-ea71626:#3891A6;--e-global-color-8c22fd5:#DB5461;--e-global-color-56ac0d7:#3891A6;--e-global-color-ecc6f96:#FFFFFF;--e-global-color-4cf53ab:#3891A6AB;--e-global-color-1ea118f:#F6F6F6;--e-global-color-d82943c:#DB5461;--e-global-color-92b9a07:#00000000;--e-global-color-d9f5abc:#E2E2E2;--e-global-typography-primary-font-family:"Outfit";--e-global-typography-primary-font-size:56px;--e-global-typography-primary-font-weight:700;--e-global-typography-primary-line-height:1.15em;--e-global-typography-secondary-font-family:"Outfit";--e-global-typography-secondary-font-size:38px;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-line-height:1.2em;--e-global-typography-text-font-family:"DM Sans";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"DM Sans";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:500;--e-global-typography-accent-line-height:1rem;--e-global-typography-accent-letter-spacing:0.5px;--e-global-typography-beda413-font-family:"Cabin";--e-global-typography-beda413-font-size:28px;--e-global-typography-beda413-font-weight:700;--e-global-typography-beda413-line-height:2rem;--e-global-typography-text-line-height:1.7em;background-color:#FFFFFF;color:#1F2631;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-85 button,.elementor-kit-85 input[type="button"],.elementor-kit-85 input[type="submit"],.elementor-kit-85 .elementor-button{background-color:var( --e-global-color-8c22fd5 );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );letter-spacing:var( --e-global-typography-accent-letter-spacing );color:var( --e-global-color-accent );border-radius:0px 0px 0px 0px;padding:15px 35px 15px 35px;}.elementor-kit-85 button:hover,.elementor-kit-85 button:focus,.elementor-kit-85 input[type="button"]:hover,.elementor-kit-85 input[type="button"]:focus,.elementor-kit-85 input[type="submit"]:hover,.elementor-kit-85 input[type="submit"]:focus,.elementor-kit-85 .elementor-button:hover,.elementor-kit-85 .elementor-button:focus{background-color:var( --e-global-color-d82943c );color:var( --e-global-color-accent );border-radius:0px 0px 0px 0px;}.elementor-kit-85 e-page-transition{background-color:#FFBC7D;}.elementor-kit-85 a{color:#3E4E69;font-family:"Raleway", Sans-serif;}.elementor-kit-85 a:hover{color:var( --e-global-color-56ac0d7 );}.elementor-kit-85 h1{color:var( --e-global-color-ecc6f96 );font-family:"Teko", Sans-serif;font-size:6rem;font-weight:500;line-height:1em;letter-spacing:0px;}.elementor-kit-85 h2{color:var( --e-global-color-primary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-85 h3{color:var( --e-global-color-primary );font-family:"Teko", Sans-serif;font-size:3rem;font-weight:500;line-height:1em;}.elementor-kit-85 h4{color:#303B4D;font-family:"Teko", Sans-serif;font-size:2rem;font-weight:500;line-height:1.2em;}.elementor-kit-85 h5{color:var( --e-global-color-ecc6f96 );font-family:"Teko", Sans-serif;font-size:1.6rem;font-weight:500;line-height:0.9em;}.elementor-kit-85 h6{color:var( --e-global-color-8c22fd5 );font-family:"Rubik", Sans-serif;font-size:1rem;font-weight:500;}.elementor-kit-85 label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-85 input:not([type="button"]):not([type="submit"]),.elementor-kit-85 textarea,.elementor-kit-85 .elementor-field-textual{color:var( --e-global-color-primary );accent-color:var( --e-global-color-text );background-color:var( --e-global-color-1ea118f );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-8c22fd5 );border-radius:0px 0px 0px 0px;padding:10px 20px 10px 20px;}.elementor-kit-85 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-85 textarea:focus,.elementor-kit-85 .elementor-field-textual:focus{color:var( --e-global-color-primary );accent-color:var( --e-global-color-text );background-color:var( --e-global-color-1ea118f );border-radius:0px 0px 0px 0px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1340px;}.e-con{--container-max-width:1340px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-85{--e-global-typography-primary-line-height:3.5rem;--e-global-typography-text-font-size:0.9rem;--e-global-typography-accent-font-size:1.1rem;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-85 h1{font-size:4.5rem;}.elementor-kit-85 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-85 h3{font-size:2.4rem;}.elementor-kit-85 h4{font-size:1.7rem;}.elementor-kit-85 h5{font-size:1.4rem;}.elementor-kit-85 button,.elementor-kit-85 input[type="button"],.elementor-kit-85 input[type="submit"],.elementor-kit-85 .elementor-button{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-kit-85 label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;--container-default-padding-top:0px;--container-default-padding-right:50px;--container-default-padding-bottom:0px;--container-default-padding-left:50px;}}@media(max-width:767px){.elementor-kit-85{--e-global-typography-primary-font-size:38px;--e-global-typography-secondary-font-size:28px;--e-global-typography-text-font-size:0.9rem;--e-global-typography-beda413-font-size:25px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-85 h1{font-size:2.3rem;}.elementor-kit-85 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-85 h3{font-size:1.9rem;}.elementor-kit-85 h4{font-size:1.4rem;}.elementor-kit-85 h5{font-size:1.2rem;}.elementor-kit-85 h6{font-size:0.9rem;}.elementor-kit-85 button,.elementor-kit-85 input[type="button"],.elementor-kit-85 input[type="submit"],.elementor-kit-85 .elementor-button{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-kit-85 label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;--container-default-padding-top:0px;--container-default-padding-right:20px;--container-default-padding-bottom:0px;--container-default-padding-left:20px;}}/* Start custom CSS *//* === Cookie banner styling — match site identity === */
.jlplg-lovecoding-cookie-info-container {
    background: #0D1B2A !important;
    color: rgba(255,255,255,0.85) !important;
    border-top: 2px solid #E8500A !important;
    font-family: "DM Sans", sans-serif !important;
    padding: 18px 24px !important;
    box-shadow: 0 -4px 20px rgba(0,0,0,0.3) !important;
    z-index: 99999 !important;
}

.jlplg-lovecoding-cookie-info {
    color: rgba(255,255,255,0.85) !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
}

.jlplg-lovecoding-cookie-accept-button,
.jlplg-lovecoding-cookie-privacy-policy {
    color: #ffffff !important;
    border-radius: 4px !important;
    padding: 10px 20px !important;
    font-family: "DM Sans", sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    cursor: pointer !important;
    transition: background 0.2s ease !important;
}

.jlplg-lovecoding-cookie-accept-button {
    background: #E8500A !important;
    border: none !important;
}

.jlplg-lovecoding-cookie-accept-button:hover {
    background: #c43f00 !important;
}

.jlplg-lovecoding-cookie-privacy-policy {
    background: transparent !important;
    border: 1px solid rgba(255,255,255,0.3) !important;
}

.jlplg-lovecoding-cookie-privacy-policy:hover {
    background: rgba(255,255,255,0.08) !important;
    border-color: rgba(255,255,255,0.5) !important;
}


/* === Hamburger menu fix ===
 * Force the hamburger button to be hidden on desktop and properly styled on mobile.
 * Some logged-out CSS context overrides the original display:none rule, exposing
 * a default Elementor button background (pink). These rules normalise that.
 */
.pp-header .pp-hamburger {
    display: none !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
    box-shadow: none !important;
    padding: 8px !important;
    margin: 0 !important;
    width: auto !important;
    height: auto !important;
    color: inherit !important;
    cursor: pointer !important;
    -webkit-appearance: none !important;
    appearance: none !important;
}

.pp-header .pp-hamburger span {
    display: block !important;
    width: 24px !important;
    height: 2px !important;
    background: #ffffff !important;
    border-radius: 2px !important;
    margin: 0 !important;
    transition: 0.3s !important;
}

@media (max-width: 768px) {
    .pp-header .pp-hamburger {
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 5px !important;
    }
}/* End custom CSS */