.elementor-71 .elementor-element.elementor-element-53e8cdc{--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:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-71 .elementor-element.elementor-element-8ddd86e{--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;--gap:1.25rem 1.25rem;--row-gap:1.25rem;--column-gap:1.25rem;}.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-71 .elementor-element.elementor-element-b2427ef .elementor-heading-title{font-family:"JetBrains Mono", Sans-serif;font-size:0.75rem;font-weight:400;text-transform:uppercase;line-height:1.6rem;color:#6B6760;}.elementor-71 .elementor-element.elementor-element-2afdd40{text-align:start;}.elementor-71 .elementor-element.elementor-element-2afdd40 .elementor-heading-title{font-family:var( --e-global-typography-83b3bf1-font-family ), Sans-serif;font-size:var( --e-global-typography-83b3bf1-font-size );font-weight:var( --e-global-typography-83b3bf1-font-weight );line-height:var( --e-global-typography-83b3bf1-line-height );letter-spacing:var( --e-global-typography-83b3bf1-letter-spacing );color:var( --e-global-color-e1633b4 );}.elementor-71 .elementor-element.elementor-element-380bea8 .elementor-heading-title{font-family:var( --e-global-typography-7608830-font-family ), Sans-serif;font-size:var( --e-global-typography-7608830-font-size );font-weight:var( --e-global-typography-7608830-font-weight );line-height:var( --e-global-typography-7608830-line-height );color:var( --e-global-color-e1633b4 );}.elementor-71 .elementor-element.elementor-element-fb774fe{--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;}.elementor-71 .elementor-element.elementor-element-e889707{--display:flex;}.elementor-71 .elementor-element.elementor-element-bc72bed{--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;--overflow:hidden;border-style:solid;--border-style:solid;border-width:1px 0px 0px 0px;--border-top-width:1px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;border-color:#E3E0D8;--border-color:#E3E0D8;}.elementor-71 .elementor-element.elementor-element-810868a{margin:0rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;text-align:center;}.elementor-71 .elementor-element.elementor-element-810868a.elementor-element{--align-self:center;}.elementor-71 .elementor-element.elementor-element-810868a .elementor-heading-title{font-family:"JetBrains Mono", Sans-serif;font-size:0.75rem;font-weight:400;text-transform:uppercase;line-height:1.6rem;color:var( --e-global-color-c1d239b );}.elementor-71 .elementor-element.elementor-element-03a91b7{z-index:5;text-align:center;}.elementor-71 .elementor-element.elementor-element-03a91b7 .elementor-heading-title{font-family:"Fraunces", Sans-serif;font-size:7rem;font-weight:400;color:var( --e-global-color-e1633b4 );}.elementor-71 .elementor-element.elementor-element-aa1fd14{width:var( --container-widget-width, 71% );max-width:71%;margin:0rem 0rem calc(var(--kit-widget-spacing, 0px) + 2rem) 0rem;--container-widget-width:71%;--container-widget-flex-grow:0;text-align:center;}.elementor-71 .elementor-element.elementor-element-aa1fd14.elementor-element{--align-self:center;}.elementor-71 .elementor-element.elementor-element-aa1fd14 .elementor-heading-title{font-family:var( --e-global-typography-7608830-font-family ), Sans-serif;font-size:var( --e-global-typography-7608830-font-size );font-weight:var( --e-global-typography-7608830-font-weight );line-height:var( --e-global-typography-7608830-line-height );color:var( --e-global-color-e1633b4 );}.elementor-71 .elementor-element.elementor-element-af44a98{--display:flex;--position:absolute;--min-height:30rem;--border-radius:999px 999px 999px 999px;top:-70px;--z-index:1;}.elementor-71 .elementor-element.elementor-element-af44a98:not(.elementor-motion-effects-element-type-background), .elementor-71 .elementor-element.elementor-element-af44a98 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-a367454 );}.elementor-71 .elementor-element.elementor-element-af44a98.e-con{--align-self:center;}body:not(.rtl) .elementor-71 .elementor-element.elementor-element-af44a98{right:0px;}body.rtl .elementor-71 .elementor-element.elementor-element-af44a98{left:0px;}.elementor-71 .elementor-element.elementor-element-82474ef{--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;--justify-content:center;}.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-71 .elementor-element.elementor-element-1974477 .elementor-button{background-color:#14130F;font-family:"Inter", Sans-serif;font-size:0.875rem;font-weight:400;text-transform:uppercase;line-height:1.4rem;border-radius:24px 24px 24px 24px;padding:0.75rem 1.5rem 0.75rem 1.5rem;}.elementor-71 .elementor-element.elementor-element-1974477 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-71 .elementor-element.elementor-element-1974477 .elementor-button .elementor-button-content-wrapper{gap:12px;}.elementor-71 .elementor-element.elementor-element-924d13f .elementor-button{background-color:#14130F00;font-family:"Inter", Sans-serif;font-size:0.875rem;font-weight:400;text-transform:uppercase;line-height:1.4rem;border-radius:24px 24px 24px 24px;padding:0.75rem 1.5rem 0.75rem 1.5rem;}.elementor-71 .elementor-element.elementor-element-924d13f .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-71 .elementor-element.elementor-element-924d13f .elementor-button .elementor-button-content-wrapper{gap:12px;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-71 .elementor-element.elementor-element-8ddd86e{--width:55%;}.elementor-71 .elementor-element.elementor-element-fb774fe{--width:45%;}.elementor-71 .elementor-element.elementor-element-af44a98{--width:30rem;}}@media(max-width:1024px) and (min-width:768px){.elementor-71 .elementor-element.elementor-element-8ddd86e{--width:65%;}.elementor-71 .elementor-element.elementor-element-fb774fe{--width:35%;}}@media(max-width:1024px){.elementor-71 .elementor-element.elementor-element-2afdd40 .elementor-heading-title{font-size:var( --e-global-typography-83b3bf1-font-size );line-height:var( --e-global-typography-83b3bf1-line-height );letter-spacing:var( --e-global-typography-83b3bf1-letter-spacing );}.elementor-71 .elementor-element.elementor-element-380bea8 .elementor-heading-title{font-size:var( --e-global-typography-7608830-font-size );line-height:var( --e-global-typography-7608830-line-height );}.elementor-71 .elementor-element.elementor-element-03a91b7 .elementor-heading-title{font-size:5rem;}.elementor-71 .elementor-element.elementor-element-aa1fd14{--container-widget-width:85%;--container-widget-flex-grow:0;width:var( --container-widget-width, 85% );max-width:85%;}.elementor-71 .elementor-element.elementor-element-aa1fd14 .elementor-heading-title{font-size:var( --e-global-typography-7608830-font-size );line-height:var( --e-global-typography-7608830-line-height );}}@media(max-width:767px){.elementor-71 .elementor-element.elementor-element-2afdd40 .elementor-heading-title{font-size:var( --e-global-typography-83b3bf1-font-size );line-height:var( --e-global-typography-83b3bf1-line-height );letter-spacing:var( --e-global-typography-83b3bf1-letter-spacing );}.elementor-71 .elementor-element.elementor-element-380bea8 .elementor-heading-title{font-size:var( --e-global-typography-7608830-font-size );line-height:var( --e-global-typography-7608830-line-height );}.elementor-71 .elementor-element.elementor-element-03a91b7 .elementor-heading-title{font-size:3rem;}.elementor-71 .elementor-element.elementor-element-aa1fd14{--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;}.elementor-71 .elementor-element.elementor-element-aa1fd14 .elementor-heading-title{font-size:var( --e-global-typography-7608830-font-size );line-height:var( --e-global-typography-7608830-line-height );}.elementor-71 .elementor-element.elementor-element-1974477{width:100%;max-width:100%;}.elementor-71 .elementor-element.elementor-element-1974477 .elementor-button .elementor-button-content-wrapper{justify-content:center;}.elementor-71 .elementor-element.elementor-element-924d13f{width:100%;max-width:100%;}.elementor-71 .elementor-element.elementor-element-924d13f .elementor-button .elementor-button-content-wrapper{justify-content:center;}}/* Start custom CSS for heading, class: .elementor-element-b2427ef *//* === Eyebrow label with line before text === */
.elementor-71 .elementor-element.elementor-element-b2427ef {
    font-family: "JetBrains Mono", ui-monospace, "Courier New", monospace !important;
    font-size: 11px !important;
    letter-spacing: 0.22em !important;
    text-transform: uppercase !important;
    color: #6B6760 !important;
    display: inline-flex !important;
    align-items: center;
    gap: 0.8rem;
}

/* the horizontal line before the text */
.elementor-71 .elementor-element.elementor-element-b2427ef::before {
    content: "";
    display: inline-block;
    width: 32px;
    height: 1px;
    background: currentColor;
    flex-shrink: 0;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-2afdd40 *//* === Marigold highlight behind "work" === */
.mark {
    position: relative;
    display: inline-block;
    white-space: nowrap;
}

.mark::before {
    content: "";
    position: absolute;
    left: -0.06em;
    right: -0.06em;
    bottom: 0.06em;
    height: 0.7em;
    background: #F5A623;            /* marigold yellow */
    z-index: -1;
    transform: skewX(-6deg) rotate(-0.6deg);
    border-radius: 2px 8px 4px 10px;  /* irregular = hand-drawn feel */
    filter: url(#wavy);              /* wavy edge effect — needs SVG below */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-53e8cdc *//* === Hero section: faded vertical grid lines === */
.elementor-71 .elementor-element.elementor-element-53e8cdc {
    position: relative;
    overflow: hidden;
}
/* the vertical grid lines */
.elementor-71 .elementor-element.elementor-element-53e8cdc::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: linear-gradient(
        to right,
        #E3E0D8 1px,
        transparent 1px
    );
    background-size: calc(100% / 12) 100%;
    background-repeat: repeat;
    opacity: 0.55;
    pointer-events: none;
    z-index: 1;
    /* fade out top + bottom */
    -webkit-mask-image: linear-gradient(
        to bottom,
        transparent 0%,
        black 20%,
        black 80%,
        transparent 100%
    );
            mask-image: linear-gradient(
        to bottom,
        transparent 0%,
        black 20%,
        black 80%,
        transparent 100%
    );
}
/* fewer lines on mobile */
@media (max-width: 768px) {
    .elementor-71 .elementor-element.elementor-element-53e8cdc::before {
        background-size: calc(100% / 6) 100%;
    }
}
/* make sure content sits ABOVE the grid */
.elementor-71 .elementor-element.elementor-element-53e8cdc > * {
    position: relative;
    z-index: 2;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-810868a *//* === Eyebrow label with line before text === */
.elementor-71 .elementor-element.elementor-element-810868a {
    font-family: "JetBrains Mono", ui-monospace, "Courier New", monospace !important;
    font-size: 11px !important;
    letter-spacing: 0.22em !important;
    text-transform: uppercase !important;
    color: #6B6760 !important;
    display: inline-flex !important;
    align-items: center;
    gap: 0.8rem;
}

/* the horizontal line before the text */
.elementor-71 .elementor-element.elementor-element-810868a::before {
    content: "";
    display: inline-block;
    width: 32px;
    height: 1px;
    background: currentColor;
    flex-shrink: 0;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-af44a98 *//* === Convert hard circle into a soft spread glow === */
.elementor-71 .elementor-element.elementor-element-af44a98 {
    background-color: transparent !important;
    background-image: radial-gradient(
        circle at center,
        rgba(255, 168, 47, 0.5) 0%,
        rgba(255, 168, 47, 0.2) 30%,
        rgba(255, 168, 47, 0.1) 55%,
        rgba(255, 168, 47, 0) 75%
    ) !important;
    border-radius: 50% !important;
    filter: blur(90px);
    opacity: 0.9;
    pointer-events: none;
    /* keep it behind your text */
    z-index: 0 !important;
}

/* make sure the parent section keeps it contained */
.elementor-71 .elementor-element.elementor-element-af44a98 {
    position: absolute !important;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-1974477 *//* === "Book a Call" button — slide-up background on hover === */
.elementor-71 .elementor-element.elementor-element-1974477 a.elementor-button,
.elementor-71 .elementor-element.elementor-element-1974477 .elementor-button-wrapper a.elementor-button {
    position: relative;
    display: inline-flex !important;
    align-items: center;
    gap: 0.7em;
     padding: 13px 24px !important;
    background: #14130F !important;
    color: #FFFFFF !important;
    font-size: 13px !important;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    font-weight: 500;
    border-radius: 999px !important;
    overflow: hidden;
    isolation: isolate;
    text-decoration: none !important;
    transition: color .35s cubic-bezier(.2,.7,.2,1);
     justify-content: center !important;
}

/* the marigold layer that slides up */
.elementor-71 .elementor-element.elementor-element-1974477 a.elementor-button::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #F5A623;
    transform: translateY(101%);
    transition: transform .55s cubic-bezier(.16, 1, .3, 1);
    z-index: -1;
}

/* on hover: slide background up, flip text to black */
.elementor-71 .elementor-element.elementor-element-1974477 a.elementor-button:hover {
    color: #14130F !important;
}
.elementor-71 .elementor-element.elementor-element-1974477 a.elementor-button:hover::before {
    transform: translateY(0);
}

/* arrow icon nudges right on hover */
.elementor-71 .elementor-element.elementor-element-1974477 a.elementor-button:hover .elementor-button-icon,
.elementor-71 .elementor-element.elementor-element-1974477 a.elementor-button:hover svg,
.elementor-71 .elementor-element.elementor-element-1974477 a.elementor-button:hover i {
    transform: translateX(6px) rotate(-2deg);
}
.elementor-71 .elementor-element.elementor-element-1974477 a.elementor-button .elementor-button-icon,
.elementor-71 .elementor-element.elementor-element-1974477 a.elementor-button svg,
.elementor-71 .elementor-element.elementor-element-1974477 a.elementor-button i {
    transition: transform .45s cubic-bezier(.16, 1, .3, 1);
}

/* === TABLET: reduce padding === */
@media (max-width: 1024px) {
    .elementor-71 .elementor-element.elementor-element-1974477 a.elementor-button,
    .elementor-71 .elementor-element.elementor-element-1974477 .elementor-button-wrapper a.elementor-button {
        padding: 10px 18px !important;
        font-size: 12px !important;
        gap: 0.5em;
    }
}

/* === MOBILE: even tighter (optional) === */
@media (max-width: 767px) {
    .elementor-71 .elementor-element.elementor-element-1974477 a.elementor-button,
    .elementor-71 .elementor-element.elementor-element-1974477 .elementor-button-wrapper a.elementor-button {
        padding: 9px 16px !important;
        font-size: 11px !important;
    }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-924d13f *//* === "Book a Call" button — slide-up background on hover === */
.elementor-71 .elementor-element.elementor-element-924d13f a.elementor-button,
.elementor-71 .elementor-element.elementor-element-924d13f .elementor-button-wrapper a.elementor-button {
    position: relative;
    display: inline-flex !important;
    align-items: center;
    gap: 0.7em;
    padding: 13px 24px !important;
    background: transparent !important;
    color: #14130F !important;
    font-size: 13px !important;
    letter-spacing: 0.04em;
    border:1px solid #14130F;
    text-transform: uppercase;
    font-weight: 500;
    border-radius: 999px !important;
    overflow: hidden;
    isolation: isolate;
    text-decoration: none !important;
    transition: color .35s cubic-bezier(.2,.7,.2,1);
    width: 100% !important;
    justify-content: center !important;
}

/* the marigold layer that slides up */
.elementor-71 .elementor-element.elementor-element-924d13f a.elementor-button::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #14130F;
    transform: translateY(101%);
    transition: transform .55s cubic-bezier(.16, 1, .3, 1);
    z-index: -1;
}

/* on hover: slide background up, flip text to black */
.elementor-71 .elementor-element.elementor-element-924d13f a.elementor-button:hover {
    color: #fff !important;
}
.elementor-71 .elementor-element.elementor-element-924d13f a.elementor-button:hover::before {
    transform: translateY(0);
}

/* arrow icon nudges right on hover */
.elementor-71 .elementor-element.elementor-element-924d13f a.elementor-button:hover .elementor-button-icon,
.elementor-71 .elementor-element.elementor-element-924d13f a.elementor-button:hover svg,
.elementor-71 .elementor-element.elementor-element-924d13f a.elementor-button:hover i {
    transform: translateX(6px) rotate(-2deg);
}
.elementor-71 .elementor-element.elementor-element-924d13f a.elementor-button .elementor-button-icon,
.elementor-71 .elementor-element.elementor-element-924d13f a.elementor-button svg,
.elementor-71 .elementor-element.elementor-element-924d13f a.elementor-button i {
    transition: transform .45s cubic-bezier(.16, 1, .3, 1);
}

/* === TABLET: reduce padding === */
@media (max-width: 1024px) {
    .elementor-71 .elementor-element.elementor-element-924d13f a.elementor-button,
    .elementor-71 .elementor-element.elementor-element-924d13f .elementor-button-wrapper a.elementor-button {
        padding: 10px 18px !important;
        font-size: 12px !important;
        gap: 0.5em;
    }
}

/* === MOBILE: even tighter (optional) === */
@media (max-width: 767px) {
    .elementor-71 .elementor-element.elementor-element-924d13f a.elementor-button,
    .elementor-71 .elementor-element.elementor-element-924d13f .elementor-button-wrapper a.elementor-button {
        padding: 9px 16px !important;
        font-size: 11px !important;
    }
}/* End custom CSS */