.elementor-kit-9{--e-global-color-primary:#1E1B4B;--e-global-color-secondary:#D1D5DB;--e-global-color-text:#4B5563;--e-global-color-accent:#1F2937;--e-global-color-60da78b:#02010100;--e-global-color-c696dce:#FFFFFF;--e-global-color-14ef391:#C8D5DC;--e-global-color-764183d:#F9FAFD;--e-global-color-d6cea4e:#FFFFFF;--e-global-color-86b4fcd:#02010100;--e-global-color-57c8da2:#000000CC;--e-global-color-830fe1b:#4A3C2B;--e-global-color-b224e7d:#B7A98E;--e-global-color-1642cfb:#E8E4D9;--e-global-color-29e30e8:#6D5D44;--e-global-typography-primary-font-family:"Assistant";--e-global-typography-primary-font-size:65px;--e-global-typography-primary-font-weight:600;--e-global-typography-primary-text-transform:none;--e-global-typography-primary-font-style:normal;--e-global-typography-primary-text-decoration:none;--e-global-typography-primary-line-height:1.2em;--e-global-typography-primary-letter-spacing:0px;--e-global-typography-secondary-font-family:"Assistant";--e-global-typography-secondary-font-size:36px;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-text-transform:capitalize;--e-global-typography-secondary-font-style:normal;--e-global-typography-secondary-text-decoration:none;--e-global-typography-secondary-line-height:1.1em;--e-global-typography-secondary-letter-spacing:0px;--e-global-typography-text-font-family:"Rubik";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:500;--e-global-typography-text-text-transform:none;--e-global-typography-text-font-style:normal;--e-global-typography-text-text-decoration:none;--e-global-typography-text-line-height:1.5em;--e-global-typography-text-letter-spacing:0px;--e-global-typography-accent-font-family:"Poppins";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:400;--e-global-typography-accent-text-transform:capitalize;--e-global-typography-accent-font-style:normal;--e-global-typography-accent-text-decoration:none;--e-global-typography-accent-line-height:1em;--e-global-typography-accent-letter-spacing:0px;--e-global-typography-392b9e0-font-family:"Poppins";--e-global-typography-392b9e0-font-size:22px;--e-global-typography-392b9e0-font-weight:600;--e-global-typography-392b9e0-text-transform:capitalize;--e-global-typography-392b9e0-font-style:normal;--e-global-typography-392b9e0-text-decoration:none;--e-global-typography-392b9e0-line-height:1.2em;--e-global-typography-392b9e0-letter-spacing:0px;--e-global-typography-c05b693-font-family:"Poppins";--e-global-typography-c05b693-font-size:22px;--e-global-typography-c05b693-font-weight:300;--e-global-typography-c05b693-text-transform:none;--e-global-typography-c05b693-font-style:normal;--e-global-typography-c05b693-text-decoration:none;--e-global-typography-c05b693-line-height:1.5em;--e-global-typography-c05b693-letter-spacing:0px;--e-global-typography-6558fb1-font-family:"Poppins";--e-global-typography-6558fb1-font-size:16px;--e-global-typography-6558fb1-font-weight:300;--e-global-typography-6558fb1-text-transform:uppercase;--e-global-typography-6558fb1-font-style:normal;--e-global-typography-6558fb1-text-decoration:none;--e-global-typography-6558fb1-line-height:1.5em;--e-global-typography-6558fb1-letter-spacing:10px;--e-global-typography-92bce3b-font-family:"Poppins";--e-global-typography-92bce3b-font-size:16px;--e-global-typography-92bce3b-font-weight:400;--e-global-typography-92bce3b-text-transform:capitalize;--e-global-typography-92bce3b-font-style:italic;--e-global-typography-92bce3b-text-decoration:underline;--e-global-typography-92bce3b-line-height:1em;--e-global-typography-92bce3b-letter-spacing:0px;--e-global-typography-b2deeae-font-family:"Poppins";--e-global-typography-b2deeae-font-size:85px;--e-global-typography-b2deeae-font-weight:600;--e-global-typography-b2deeae-text-transform:none;--e-global-typography-b2deeae-font-style:normal;--e-global-typography-b2deeae-text-decoration:none;--e-global-typography-b2deeae-line-height:1em;--e-global-typography-b2deeae-letter-spacing:0px;--e-global-typography-fb1a3e0-font-family:"Poppins";--e-global-typography-fb1a3e0-font-size:200px;--e-global-typography-fb1a3e0-font-weight:600;--e-global-typography-fb1a3e0-text-transform:none;--e-global-typography-fb1a3e0-font-style:normal;--e-global-typography-fb1a3e0-text-decoration:none;--e-global-typography-fb1a3e0-line-height:1.2em;--e-global-typography-fb1a3e0-letter-spacing:0px;--e-global-typography-397e168-font-family:"Poppins";--e-global-typography-397e168-font-size:16px;--e-global-typography-397e168-font-weight:400;--e-global-typography-397e168-text-transform:capitalize;--e-global-typography-397e168-font-style:italic;--e-global-typography-397e168-text-decoration:none;--e-global-typography-397e168-line-height:1.3em;--e-global-typography-397e168-letter-spacing:0px;background-color:#BA785B11;}.elementor-kit-9 e-page-transition{background-color:#FFBC7D;}.elementor-kit-9 a{color:var( --e-global-color-accent );}.elementor-kit-9 a:hover{color:var( --e-global-color-primary );}.elementor-kit-9 h4{color:var( --e-global-color-primary );font-family:var( --e-global-typography-392b9e0-font-family ), Sans-serif;font-size:var( --e-global-typography-392b9e0-font-size );font-weight:var( --e-global-typography-392b9e0-font-weight );text-transform:var( --e-global-typography-392b9e0-text-transform );font-style:var( --e-global-typography-392b9e0-font-style );text-decoration:var( --e-global-typography-392b9e0-text-decoration );line-height:var( --e-global-typography-392b9e0-line-height );letter-spacing:var( --e-global-typography-392b9e0-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1500px;}.e-con{--container-max-width:1500px;}.elementor-widget:not(:last-child){--kit-widget-spacing:2rem;}.elementor-element{--widgets-spacing:2rem 2rem;--widgets-spacing-row:2rem;--widgets-spacing-column:2rem;}{}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-9{--e-global-typography-primary-font-size:45px;--e-global-typography-secondary-font-size:25px;--e-global-typography-text-font-size:14px;--e-global-typography-accent-font-size:14px;--e-global-typography-c05b693-font-size:14px;--e-global-typography-6558fb1-font-size:14px;--e-global-typography-92bce3b-font-size:14px;--e-global-typography-b2deeae-font-size:65px;--e-global-typography-fb1a3e0-font-size:145px;--e-global-typography-397e168-font-size:14px;}.elementor-kit-9 h4{font-size:var( --e-global-typography-392b9e0-font-size );line-height:var( --e-global-typography-392b9e0-line-height );letter-spacing:var( --e-global-typography-392b9e0-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-9{--e-global-typography-primary-font-size:28px;--e-global-typography-primary-line-height:1.1em;--e-global-typography-secondary-font-size:20px;--e-global-typography-392b9e0-font-size:18px;--e-global-typography-b2deeae-font-size:48px;--e-global-typography-b2deeae-line-height:1em;--e-global-typography-fb1a3e0-font-size:100px;--e-global-typography-fb1a3e0-line-height:1em;}.elementor-kit-9 h4{font-size:var( --e-global-typography-392b9e0-font-size );line-height:var( --e-global-typography-392b9e0-line-height );letter-spacing:var( --e-global-typography-392b9e0-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --Assistant:Assistant; --White-text:#ffffff; --Black-text:#000000; --btn_lightorange:#dd831199; --btn_ornage:#DD8311; --Transparant:#02010100; --Light_Blue:#65999AA6; --btn_metal:#aaaaaa; --Metal_dark:#777777; --bronze_ligh:#bb785b; --bronze_dark:#a96148; --Hover-Grey:#E0E0E0; --sitebg_light:#BA785B11; --sitebg_white_trans:#fffffff2; --xxxlarge:clamp(2.63rem, 2.30172rem + 1.37931vw, 3.25rem); --xxlarge:clamp(2.25rem, 1.99138rem + 1.10345vw, 2.75rem); --xlarge:clamp(1.88rem, 1.68103rem + 0.82759vw, 2.25rem); --large:clamp(1.50rem, 1.37069rem + 0.55172vw, 1.75rem); --medium:clamp(1.13rem, 0.99569rem + 0.55172vw, 1.38rem); --normal:clamp(1.00rem, 1.00000rem + 0.00000vw, 1.00rem); --small:clamp(0.94rem, 0.93750rem + 0.00000vw, 0.94rem); --xsmall:clamp(0.88rem, 0.87500rem + 0.00000vw, 0.88rem); --Light-blue-80x:#65999acc; --Light-Blue-65x:#65999aa6; --Light_green:#25D366; --Dark_green:#075E54; }
/* Start custom CSS */.float-svg, .floating-svg {
    animation: float-svg 3s ease-in-out infinite;
}

@keyframes float-svg {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-10px); }
    100% { transform: translateY(0px); }
}

html { font-size: 16px; } /* Default root size */

:is(.xxxlarge :is(h1, h2, h3, h4, h5, h6, p, a, span, button, div, li), .xxxlarge:is(.e-heading-base, .e-paragraph-base, .e-button-base)) {
    font-size: clamp(2.63rem, 2.30172rem + 1.37931vw, 3.25rem);
    line-height: 1.3;
}

:is(.xxlarge :is(h1, h2, h3, h4, h5, h6, p, a, span, button, div, li), .xxlarge:is(.e-heading-base, .e-paragraph-base, .e-button-base)) {
    font-size: clamp(2.25rem, 1.99138rem + 1.10345vw, 2.75rem);
    line-height: 1.3;
}

:is(.xlarge :is(h1, h2, h3, h4, h5, h6, p, a, span, button, div, li), .xlarge:is(.e-heading-base, .e-paragraph-base, .e-button-base)) {
    font-size: clamp(1.88rem, 1.68103rem + 0.82759vw, 2.25rem);
    line-height: 1.3;
}

:is(.large :is(h1, h2, h3, h4, h5, h6, p, a, span, button, div, li), .large:is(.e-heading-base, .e-paragraph-base, .e-button-base)) {
    font-size: clamp(1.50rem, 1.37069rem + 0.55172vw, 1.75rem);
    line-height: 1.3;
}

:is(.medium :is(h1, h2, h3, h4, h5, h6, p, a, span, button, div, li), .medium:is(.e-heading-base, .e-paragraph-base, .e-button-base)) {
    font-size: clamp(1.13rem, 1.06034rem + 0.27586vw, 1.25rem);
    line-height: 1.3;
}

:is(.normal :is(h1, h2, h3, h4, h5, h6, p, a, span, button, div, li), .normal:is(.e-heading-base, .e-paragraph-base, .e-button-base)) {
    font-size: clamp(1.00rem, 1.00000rem + 0.00000vw, 1.00rem);
    line-height: 1.3;
}

:is(.small :is(h1, h2, h3, h4, h5, h6, p, a, span, button, div, li), .small:is(.e-heading-base, .e-paragraph-base, .e-button-base)) {
    font-size: clamp(0.94rem, 0.93750rem + 0.00000vw, 0.94rem);
    line-height: 1.3;
}

:is(.xsmall :is(h1, h2, h3, h4, h5, h6, p, a, span, button, div, li), .xsmall:is(.e-heading-base, .e-paragraph-base, .e-button-base)) {
    font-size: clamp(0.88rem, 0.87500rem + 0.00000vw, 0.88rem);
    line-height: 1.3;
}
/* Div Block element.
Sets minimum width of 30px, adds 10px padding, and displays as a block-level element. */
.elementor .e-div-block-base {
    min-width: 30px;
    padding: 10px;
    display: block;
}

/* Flexbox element.
Creates a flex container with horizontal row layout and 10px padding. */
.elementor .e-flexbox-base {
    padding: 10px;
    display: flex;
    flex-direction: row;
}

/* Tabs wrapper element.
Stacks tab menu and content vertically with 30px gap spacing. */
.elementor .e-tabs-base {
    padding-block-start: 0px;
    display: flex;
    flex-direction: column;
    gap: 30px;
}

/* Tabs menu wrapper.
Displays tab buttons using flexbox and centres them horizontally. */
.elementor .e-tabs-menu-base {
    display: flex;
    justify-content: center;
}

/* Individual tab button element.
Sets width, colours, padding, borders, background, and cursor styling. */
.elementor .e-tab-base {
    width: 160px;
    color: #0C0D0E;
    cursor: pointer;
    padding: 8px;
    border-width: 2px;
    border-color: #E0E0E0;
    border-style: solid;
    background-color: #FFFFFF;
    display: block;
}

/* Selected tab state.
Changes border colour for the active tab and removes outline width. */
.elementor .e-tab-base.e--selected {
    border-color: #0C0D0E;
    outline-width: 0px;
}

/* Focused tab state.
Changes border colour when tab receives focus and removes outline width. */
.elementor .e-tab-base:focus {
    border-color: #0C0D0E;
    outline-width: 0px;
}

/* Hovered or keyboard-focused tab state.
Changes tab background colour on hover or visible focus. */
.elementor .e-tab-base:hover,
.elementor .e-tab-base:focus-visible {
    background-color: #E0E0E0;
}

/* Tabs content wrapper.
Displays tab content area as a block-level element. */
.elementor .e-tabs-content-area-base {
    display: block;
}

/* Individual tab content panel.
Sets minimum width, adds 10px padding, and displays as block. */
.elementor .e-tab-content-base {
    min-width: 30px;
    padding: 10px;
    display: block;
}

/* Form wrapper element.
Creates flexbox form layout with wrapping, spacing, alignment, and 20px padding. */
.elementor .e-form-base {
    padding: 20px;
    display: flex;
    flex-direction: row;
    gap: 10px;
    flex-wrap: wrap;
    align-content: start;
    align-items: flex-start;
}

/* Checkbox row inside forms.
Removes padding, adds 8px gap, and vertically aligns items. */
.elementor .e-form-base .e-form-checkbox-row {
    padding: 0px;
    gap: 8px;
    align-items: center;
}

/* Form success message.
Styles success notification with green colours and hides it by default. */
.elementor .e-form-success-message-base {
    font-size: 12px;
    color: #2F532E;
    text-align: center;
    padding: 12px;
    background-color: #D4E9D6;
    display: none;
}

/* Form error message.
Styles error notification with red colours and hides it by default. */
.elementor .e-form-error-message-base {
    font-size: 12px;
    color: #870000;
    text-align: center;
    padding: 12px;
    background-color: #ffdede;
    display: none;
}

/* Heading element.
Removes default heading margin spacing. */
.elementor .e-heading-base {
    margin: 0px;
}

/* Heading link element.
Removes default browser link styling and enables pointer cursor. */
.elementor .e-heading-link-base {
    all: unset;
    cursor: pointer;
}

/* Image link wrapper.
Makes linked image width fit content and inherit display behaviour. */
.elementor .e-image-link-base {
    width: fit-content;
    display: inherit;
}

/* Image element.
Displays image as a block-level element. */
.elementor .e-image-base {
    display: block;
}

/* Paragraph element.
Removes default paragraph margins. */
.elementor .e-paragraph-base {
    margin: 0px;
}

/* Paragraph link element.
Removes default browser link styling and enables pointer cursor. */
.elementor .e-paragraph-link-base {
    all: unset;
    cursor: pointer;
}

/* SVG element.
Sets default SVG dimensions and displays inline-block. */
.elementor .e-svg-base {
    width: 65px;
    height: 65px;
    display: inline-block;
}

/* Button element.
Adds padding, blue background, border radius, centre alignment, and inline-block display. */
.elementor .e-button-base {
    text-align: center;
    padding-block-start: 12px;
    padding-block-end: 12px;
    padding-inline-start: 24px;
    padding-inline-end: 24px;
    border-radius: 2px;
    border-width: 0px;
    background-color: #375EFB;
    display: inline-block;
}

/* YouTube embed element.
Maintains 16:9 aspect ratio and hides overflow. */
.elementor .e-youtube-base {
    overflow: hidden;
    aspect-ratio: 16/9;
}

/* Divider element.
Creates a 1px high black divider using background colour. */
.elementor .e-divider-base {
    height: 1px;
    border-width: 0px;
    border-color: transparent;
    border-style: none;
    background-color: #000;
}

/* Self-hosted video element.
Limits width to viewport, maintains 16:9 ratio, and displays inline-block. */
.elementor .e-self-hosted-video-base {
    max-width: 100vw;
    aspect-ratio: 16/9;
    display: inline-block;
}

/* Standard form input field.
Sets input height, font size, colours, and border styling. */
.elementor .e-form-input-base {
    height: 36px;
    font-size: 12px;
    color: #0c0d0e;
    border-radius: 0px;
    border-color: #D6D5D5;
}

/* Focused form input field.
Darkens border colour and removes browser outline. */
.elementor .e-form-input-base:focus {
    border-color: #706F6F;
    outline-style: none;
}

/* Form input placeholder text.
Sets placeholder text colour. */
.elementor .e-form-input-base::placeholder {
    color: #9DA5AE;
}

/* Form label element.
Sets label font size and text colour. */
.elementor .e-form-label-base {
    font-size: 14px;
    color: #0c0d0e;
}

/* Textarea field element.
Sets font size and border styling. */
.elementor .e-form-textarea-base {
    font-size: 12px;
    border-radius: 0px;
    border-color: #D6D5D5;
}

/* Focused textarea field.
Darkens border colour and removes browser outline. */
.elementor .e-form-textarea-base:focus {
    border-color: #706F6F;
    outline-style: none;
}

/* Textarea placeholder text.
Sets placeholder text colour. */
.elementor .e-form-textarea-base::placeholder {
    color: #9DA5AE;
}

/* Form submit button element.
Creates black button with centred content, padding, and white text. */
.elementor .e-form-submit-button-base {
    color: #fff;
    padding-block-start: 10px;
    padding-block-end: 10px;
    padding-inline-start: 28px;
    padding-inline-end: 30px;
    border-radius: 0px;
    border-width: 0px;
    background-color: #000;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Hovered or focused submit button.
Changes background colour on hover or keyboard focus. */
.elementor .e-form-submit-button-base:hover,
.elementor .e-form-submit-button-base:focus-visible {
    background-color: #323232;
}

/* Checkbox input element.
Creates custom checkbox styling, sizing, borders, transitions, and removes browser appearance. */
.elementor .e-form-checkbox-base {
    width: 1.15em;
    height: 1.15em;
    color: #ffffff;
    border-radius: 0px;
    border-width: 1px;
    border-color: #D6D5D5;
    border-style: solid;
    background-color: transparent;
    transition: background-color 200ms;
    display: grid;
    justify-items: center;
    align-items: center;
    appearance: none;
}

/* Focused checkbox element.
Darkens border colour and removes browser outline. */
.elementor .e-form-checkbox-base:focus {
    border-color: #706F6F;
    outline-style: none;
}

/* Checked checkbox state.
Changes checkbox background colour when selected. */
.elementor .e-form-checkbox-base:checked {
    background-color: #69727D;
}

/* Checkbox checkmark pseudo-element.
Creates custom checkmark shape using clip-path and opacity transition. */
.elementor .e-form-checkbox-base::before {
    width: 65%;
    height: 65%;
    background-color: currentColor;
    opacity: 0%;
    transform-origin: 0% 100% 0px;
    transition: opacity 200ms;
    content: "";
    clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
}

/* Visible checkbox checkmark state.
Shows checkmark when checkbox is checked. */
.elementor .e-form-checkbox-base:checked::before {
    opacity: 100%;
}

/* Radio button element.
Creates custom circular radio button and removes browser appearance. */
.elementor .e-form-radio-button-base {
    width: 1.15em;
    height: 1.15em;
    color: #ffffff;
    border-radius: 50%;
    border-width: 1px;
    border-color: #D6D5D5;
    border-style: solid;
    background-color: transparent;
    display: grid;
    justify-items: center;
    align-items: center;
    appearance: none;
}

/* Focused radio button.
Darkens border colour and removes browser outline. */
.elementor .e-form-radio-button-base:focus {
    border-color: #706F6F;
    outline-style: none;
}

/* Checked radio button state.
Keeps background transparent when selected. */
.elementor .e-form-radio-button-base:checked {
    background-color: transparent;
}

/* Radio button inner dot pseudo-element.
Creates inner selected dot using opacity transition. */
.elementor .e-form-radio-button-base::before {
    width: 65%;
    height: 65%;
    border-radius: 50%;
    background-color: #706F6F;
    opacity: 0%;
    transition: opacity 200ms;
    content: "";
}

/* Visible radio button selected dot.
Shows inner dot when radio button is selected. */
.elementor .e-form-radio-button-base:checked::before {
    opacity: 100%;
}

/* Date picker field element.
Sets sizing, borders, colours, and typography for date input. */
.elementor .e-form-date-picker-base {
    width: 100%;
    height: 36px;
    font-size: 12px;
    color: #0c0d0e;
    border-radius: 0px;
    border-width: 1px;
    border-color: #D6D5D5;
    border-style: solid;
}

/* Focused date picker field.
Darkens border colour and removes browser outline. */
.elementor .e-form-date-picker-base:focus {
    border-color: #706F6F;
    outline-style: none;
}

/* Time picker field element.
Sets sizing, borders, colours, and typography for time input. */
.elementor .e-form-time-picker-base {
    width: 100%;
    height: 36px;
    font-size: 12px;
    color: #0c0d0e;
    border-radius: 0px;
    border-width: 1px;
    border-color: #D6D5D5;
    border-style: solid;
}

/* Focused time picker field.
Darkens border colour and removes browser outline. */
.elementor .e-form-time-picker-base:focus {
    border-color: #706F6F;
    outline-style: none;
}

/* Select dropdown field element.
Sets border styling, typography, and transparent background. */
.elementor .e-form-select-base {
    font-size: 12px;
    border-width: 1px;
    border-color: #D6D5D5;
    border-style: solid;
    background-color: transparent;
}

/* Focused select dropdown field.
Darkens border colour and removes browser outline. */
.elementor .e-form-select-base:focus {
    border-color: #706F6F;
    outline-style: none;
}

/* File upload field element.
Sets sizing, typography, colours, and border styling. */
.elementor .e-form-file-upload-base {
    height: 36px;
    font-size: 12px;
    color: #0c0d0e;
    border-radius: 0px;
    border-color: #D6D5D5;
}

/* Focused file upload field.
Darkens border colour and removes browser outline. */
.elementor .e-form-file-upload-base:focus {
    border-color: #706F6F;
    outline-style: none;
}/* End custom CSS */