@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-font-weight:initial;--tw-duration:initial;--tw-ease:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-content:"";--tw-outline-style:solid}}}@layer theme{:root,:host{--font-sans:var(--font-sans);--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-900:#101828;--color-neutral-100:#f5f5f5;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-6xl:72rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-9xl:8rem;--text-9xl--line-height:1;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-normal:0em;--tracking-wider:.05em;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--ease-out:cubic-bezier(0, 0, .2, 1);--aspect-video:16 / 9;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-background:var(--color-background);--color-foreground-muted:var(--color-foreground-muted);--color-foreground:var(--color-foreground);--color-foreground-dark:var(--color-foreground-dark);--color-muted:var(--color-muted);--color-border:var(--color-border);--color-brand-primary:var(--color-brand-primary);--color-brand-primary-dark:var(--color-brand-primary-dark);--color-brand-primary-contrast:var(--color-brand-primary-contrast);--color-brand-primary-dark-contrast:var(--color-brand-primary-dark-contrast);--color-brand-secondary:var(--color-brand-secondary);--color-brand-secondary-dark:var(--color-brand-secondary-dark);--color-brand-secondary-contrast:var(--color-brand-secondary-contrast);--color-brand-secondary-dark-contrast:var(--color-brand-secondary-dark-contrast);--font-display:var(--font-display)}@supports (color:lab(0% 0 0)){:root,:host{--color-gray-50:lab(98.2596% -.247031 -.706708);--color-gray-100:lab(96.1596% -.0823438 -1.13575);--color-gray-200:lab(91.6229% -.159115 -2.26791);--color-gray-900:lab(8.11897% .811279 -12.254);--color-neutral-100:lab(96.52% -.0000298023 .0000119209)}}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}a,button{touch-action:manipulation}:is(a,button):focus-visible:focus-visible{outline-style:var(--tw-outline-style);outline-offset:2px;outline-width:2px;outline-color:var(--color-brand-primary);--tw-outline-style:solid;outline-style:solid}}@layer components;@layer utilities{.\@container\/hero-carousel{container:hero-carousel/inline-size}.\@container\/testimonial-carousel{container:testimonial-carousel/inline-size}.\@container{container-type:inline-size}.button{min-height:calc(var(--spacing) * 12);justify-content:center;align-items:center;gap:calc(var(--spacing) * 2);font-family:var(--font-display);border-radius:var(--radius-lg);padding-inline:calc(var(--spacing) * 4.5);padding-block:calc(var(--spacing) * 2);text-align:center;--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);text-overflow:ellipsis;transition-property:background-color,color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.2s;--tw-ease:var(--ease-out);transition-duration:.2s;transition-timing-function:var(--ease-out);position:relative;overflow:hidden;display:inline-flex!important}.button:disabled{pointer-events:none;opacity:.5}.button:focus-visible{--tw-outline-style:none;outline-style:none}.pointer-events-auto\!{pointer-events:auto!important}.pointer-events-none{pointer-events:none}.pointer-events-none\!{pointer-events:none!important}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page-section{width:100%;max-width:120rem;scroll-margin-block:calc(max(var(--gh-height), var(--page-section-padding-y)) * 1.5);margin-inline:auto;position:relative}.page-section-content{width:100%;padding-left:max(var(--page-section-padding-x), env(safe-area-inset-left));padding-right:max(var(--page-section-padding-x), env(safe-area-inset-right));margin-inline:auto;position:relative;overflow:hidden;max-width:var(--container-7xl)!important}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.inset-x-0{inset-inline:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.start-0{inset-inline-start:calc(var(--spacing) * 0)}.end-0{inset-inline-end:calc(var(--spacing) * 0)}.top-0{top:calc(var(--spacing) * 0)}.top-1\/2{top:50%}.top-2\/10{top:20%}.top-6\/10{top:60%}.right-0{right:calc(var(--spacing) * 0)}.right-1\/10{right:10%}.-bottom-2{bottom:calc(var(--spacing) * -2)}.bottom-0{bottom:calc(var(--spacing) * 0)}.bottom-4{bottom:calc(var(--spacing) * 4)}.left-0{left:calc(var(--spacing) * 0)}.left-1\/2{left:50%}.left-3\/10{left:30%}.left-4{left:calc(var(--spacing) * 4)}.z-0{z-index:0}.z-1{z-index:1}.z-2{z-index:2}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-90\!{z-index:90!important}.z-100{z-index:100}.-mx-2{margin-inline:calc(var(--spacing) * -2)}.-mx-\[0\.15lh\]{margin-inline:-.15lh}.mx-auto{margin-inline:auto}.my-2{margin-block:calc(var(--spacing) * 2)}.my-5{margin-block:calc(var(--spacing) * 5)}.me-auto{margin-inline-end:auto}.-mt-4{margin-top:calc(var(--spacing) * -4)}.-mt-\[0\.1lh\]{margin-top:-.1lh}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-7{margin-top:calc(var(--spacing) * 7)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mt-14{margin-top:calc(var(--spacing) * 14)}.mt-16{margin-top:calc(var(--spacing) * 16)}.mt-\[0\.05lh\]{margin-top:.05lh}.mt-auto{margin-top:auto}.-mr-2{margin-right:calc(var(--spacing) * -2)}.-mr-2\!{margin-right:calc(var(--spacing) * -2)!important}.mb-0\!{margin-bottom:calc(var(--spacing) * 0)!important}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-12{margin-bottom:calc(var(--spacing) * 12)}.mb-16{margin-bottom:calc(var(--spacing) * 16)}.mb-auto{margin-bottom:auto}.-ml-2{margin-left:calc(var(--spacing) * -2)}.block{display:block}.contents{display:contents}.flex{display:flex}.flex\!{display:flex!important}.grid{display:grid}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.aspect-4\/3{aspect-ratio:4/3}.aspect-5\/4{aspect-ratio:5/4}.aspect-9\/10{aspect-ratio:9/10}.aspect-video{aspect-ratio:var(--aspect-video)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-5\!{width:calc(var(--spacing) * 5)!important;height:calc(var(--spacing) * 5)!important}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-11{width:calc(var(--spacing) * 11);height:calc(var(--spacing) * 11)}.size-16{width:calc(var(--spacing) * 16);height:calc(var(--spacing) * 16)}.size-\[1\.2lh\]{width:1.2lh;height:1.2lh}.size-\[1lh\]{width:1lh;height:1lh}.size-full{width:100%;height:100%}.h-\(--accordion-panel-height\){height:var(--accordion-panel-height)}.h-\(--gh-height\){height:var(--gh-height)}.h-\(--height-without-gh\){height:var(--height-without-gh)}.h-1{height:calc(var(--spacing) * 1)}.h-4\/10{height:40%}.h-5{height:calc(var(--spacing) * 5)}.h-8{height:calc(var(--spacing) * 8)}.h-8\/10{height:80%}.h-10{height:calc(var(--spacing) * 10)}.h-14{height:calc(var(--spacing) * 14)}.h-16{height:calc(var(--spacing) * 16)}.h-20{height:calc(var(--spacing) * 20)}.h-\[0\.9lh\]{height:.9lh}.h-auto{height:auto}.h-full{height:100%}.h-full\!{height:100%!important}.min-h-80{min-height:calc(var(--spacing) * 80)}.min-h-\[160px\]{min-height:160px}.w-7{width:calc(var(--spacing) * 7)}.w-7\/10{width:70%}.w-8{width:calc(var(--spacing) * 8)}.w-10{width:calc(var(--spacing) * 10)}.w-16{width:calc(var(--spacing) * 16)}.w-20{width:calc(var(--spacing) * 20)}.w-40{width:calc(var(--spacing) * 40)}.w-80{width:calc(var(--spacing) * 80)}.w-auto{width:auto}.w-auto\!{width:auto!important}.w-fit{width:fit-content}.w-full{width:100%}.w-full\!{width:100%!important}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-60{max-width:calc(var(--spacing) * 60)}.max-w-80{max-width:calc(var(--spacing) * 80)}.max-w-120{max-width:calc(var(--spacing) * 120)}.max-w-180{max-width:calc(var(--spacing) * 180)}.max-w-\[calc\(100\%---spacing\(10\)\)\]{max-width:calc(100% - calc(var(--spacing) * 10))}.max-w-\[max\(--spacing\(72\)\,\(100cqw-\(2\*32px\)\)\/3\)\]{max-width:max(calc(var(--spacing) * 72), (100cqw - (2 * 32px)) / 3)}.max-w-full{max-width:100%}.max-w-full\!{max-width:100%!important}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-44{min-width:calc(var(--spacing) * 44)}.min-w-50{min-width:calc(var(--spacing) * 50)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.basis-1{flex-basis:calc(var(--spacing) * 1)}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-full{--tw-translate-y:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.resize-none{resize:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-center\!{align-items:center!important}.items-start{align-items:flex-start}.items-start\!{align-items:flex-start!important}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-center\!{justify-content:center!important}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-3\.5{gap:calc(var(--spacing) * 3.5)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}.gap-12{gap:calc(var(--spacing) * 12)}.gap-\[clamp\(1rem\,3\.5cqw\,3\.5rem\)\]{gap:clamp(1rem,3.5cqw,3.5rem)}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-0\!{column-gap:calc(var(--spacing) * 0)!important}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-x-8{column-gap:calc(var(--spacing) * 8)}.gap-x-16{column-gap:calc(var(--spacing) * 16)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.gap-y-10{row-gap:calc(var(--spacing) * 10)}.self-stretch{align-self:stretch}.overflow-hidden{overflow:hidden}.overflow-visible\!{overflow:visible!important}.overflow-y-auto{overflow-y:auto}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-none\!{--tw-border-style:none!important;border-style:none!important}.border-\[\#F2F4FB\]{border-color:#f2f4fb}.border-brand-primary,.border-brand-primary\/10{border-color:var(--color-brand-primary)}@supports (color:color-mix(in lab, red, red)){.border-brand-primary\/10{border-color:color-mix(in oklab, var(--color-brand-primary) 10%, transparent)}}.border-foreground\/30{border-color:var(--color-foreground)}@supports (color:color-mix(in lab, red, red)){.border-foreground\/30{border-color:color-mix(in oklab, var(--color-foreground) 30%, transparent)}}.border-muted\/10{border-color:var(--color-muted)}@supports (color:color-mix(in lab, red, red)){.border-muted\/10{border-color:color-mix(in oklab, var(--color-muted) 10%, transparent)}}.border-muted\/20{border-color:var(--color-muted)}@supports (color:color-mix(in lab, red, red)){.border-muted\/20{border-color:color-mix(in oklab, var(--color-muted) 20%, transparent)}}.border-t-foreground\/10{border-top-color:var(--color-foreground)}@supports (color:color-mix(in lab, red, red)){.border-t-foreground\/10{border-top-color:color-mix(in oklab, var(--color-foreground) 10%, transparent)}}.border-l-brand-primary{border-left-color:var(--color-brand-primary)}.button-ghost{color:var(--color-brand-primary);background-color:#0000}@media (hover:hover){.button-ghost:hover{background-color:var(--color-brand-primary)}@supports (color:color-mix(in lab, red, red)){.button-ghost:hover{background-color:color-mix(in oklab, var(--color-brand-primary) 10%, transparent)}}}.button-ghost:active{background-color:var(--color-brand-primary)}@supports (color:color-mix(in lab, red, red)){.button-ghost:active{background-color:color-mix(in oklab, var(--color-brand-primary) 20%, transparent)}}.button-primary{background-color:var(--color-brand-primary);color:var(--color-brand-primary-contrast)}@media (hover:hover){.button-primary:hover{background-color:var(--color-brand-primary-dark)}}.button-primary:active{background-color:var(--color-brand-primary-dark)}.button-secondary{background-color:var(--color-brand-secondary);color:var(--color-brand-secondary-contrast)}@media (hover:hover){.button-secondary:hover{background-color:var(--color-brand-secondary-dark)}}.button-secondary:active{background-color:var(--color-brand-secondary-dark)}.bg-background{background-color:var(--color-background)}.bg-black\/20{background-color:#0003}@supports (color:color-mix(in lab, red, red)){.bg-black\/20{background-color:color-mix(in oklab, var(--color-black) 20%, transparent)}}.bg-black\/60{background-color:#0009}@supports (color:color-mix(in lab, red, red)){.bg-black\/60{background-color:color-mix(in oklab, var(--color-black) 60%, transparent)}}.bg-brand-primary,.bg-brand-primary\/3{background-color:var(--color-brand-primary)}@supports (color:color-mix(in lab, red, red)){.bg-brand-primary\/3{background-color:color-mix(in oklab, var(--color-brand-primary) 3%, transparent)}}.bg-brand-primary\/10{background-color:var(--color-brand-primary)}@supports (color:color-mix(in lab, red, red)){.bg-brand-primary\/10{background-color:color-mix(in oklab, var(--color-brand-primary) 10%, transparent)}}.bg-brand-secondary{background-color:var(--color-brand-secondary)}.bg-brand-secondary\!{background-color:var(--color-brand-secondary)!important}.bg-foreground-dark{background-color:var(--color-foreground-dark)}.bg-foreground\/10{background-color:var(--color-foreground)}@supports (color:color-mix(in lab, red, red)){.bg-foreground\/10{background-color:color-mix(in oklab, var(--color-foreground) 10%, transparent)}}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200\/75{background-color:#e5e7ebbf}@supports (color:color-mix(in lab, red, red)){.bg-gray-200\/75{background-color:color-mix(in oklab, var(--color-gray-200) 75%, transparent)}}.bg-gray-900{background-color:var(--color-gray-900)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-white\!{background-color:var(--color-white)!important}.bg-linear-to-br{--tw-gradient-position:to bottom right}@supports (background-image:linear-gradient(in lab, red, red)){.bg-linear-to-br{--tw-gradient-position:to bottom right in oklab}}.bg-linear-to-br{background-image:linear-gradient(var(--tw-gradient-stops))}.bg-linear-to-t{--tw-gradient-position:to top}@supports (background-image:linear-gradient(in lab, red, red)){.bg-linear-to-t{--tw-gradient-position:to top in oklab}}.bg-linear-to-t{background-image:linear-gradient(var(--tw-gradient-stops))}.from-black\/70{--tw-gradient-from:#000000b3}@supports (color:color-mix(in lab, red, red)){.from-black\/70{--tw-gradient-from:color-mix(in oklab, var(--color-black) 70%, transparent)}}.from-black\/70{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-brand-secondary\/20{--tw-gradient-from:var(--color-brand-secondary)}@supports (color:color-mix(in lab, red, red)){.from-brand-secondary\/20{--tw-gradient-from:color-mix(in oklab, var(--color-brand-secondary) 20%, transparent)}}.from-brand-secondary\/20{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-brand-primary\/10{--tw-gradient-to:var(--color-brand-primary)}@supports (color:color-mix(in lab, red, red)){.to-brand-primary\/10{--tw-gradient-to:color-mix(in oklab, var(--color-brand-primary) 10%, transparent)}}.to-brand-primary\/10{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.fill-brand-secondary{fill:var(--color-brand-secondary)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.object-center{object-position:center}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.button-main-content{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-8{padding-inline:calc(var(--spacing) * 8)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-16{padding-block:calc(var(--spacing) * 16)}.py-24{padding-block:calc(var(--spacing) * 24)}.page-section-padding-y{padding-top:max(var(--page-section-padding-y), env(safe-area-inset-top));padding-bottom:max(var(--page-section-padding-y), env(safe-area-inset-bottom));padding-top:max(var(--page-section-padding-y), env(safe-area-inset-top));padding-bottom:max(var(--page-section-padding-y), env(safe-area-inset-bottom))}.pt-5{padding-top:calc(var(--spacing) * 5)}.pt-6{padding-top:calc(var(--spacing) * 6)}.page-section-padding-x{padding-left:max(var(--page-section-padding-x), env(safe-area-inset-left));padding-right:max(var(--page-section-padding-x), env(safe-area-inset-right));padding-left:max(var(--page-section-padding-x), env(safe-area-inset-left));padding-right:max(var(--page-section-padding-x), env(safe-area-inset-right))}.page-section-padding-bottom\!{padding-bottom:max(var(--page-section-padding-y), env(safe-area-inset-bottom))!important;padding-bottom:max(var(--page-section-padding-y), env(safe-area-inset-bottom))!important}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.safe-pb-6{padding-bottom:max(calc(var(--spacing) * 6), env(safe-area-inset-bottom))}.text-center{text-align:center}.text-left{text-align:left}.text-start{text-align:start}.font-display{font-family:var(--font-display)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-9xl{font-size:var(--text-9xl);line-height:var(--tw-leading,var(--text-9xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-lg\!{font-size:var(--text-lg)!important;line-height:var(--tw-leading,var(--text-lg--line-height))!important}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-normal\!{--tw-leading:var(--leading-normal)!important;line-height:var(--leading-normal)!important}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-relaxed\!{--tw-leading:var(--leading-relaxed)!important;line-height:var(--leading-relaxed)!important}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-snug\!{--tw-leading:var(--leading-snug)!important;line-height:var(--leading-snug)!important}.font-\[650\]{--tw-font-weight:650;font-weight:650}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-bold\!{--tw-font-weight:var(--font-weight-bold)!important;font-weight:var(--font-weight-bold)!important}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-normal{--tw-tracking:var(--tracking-normal);letter-spacing:var(--tracking-normal)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-balance{text-wrap:balance}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.text-black{color:var(--color-black)}.text-brand-primary{color:var(--color-brand-primary)}.text-brand-primary-contrast{color:var(--color-brand-primary-contrast)}.text-brand-secondary{color:var(--color-brand-secondary)}.text-brand-secondary-contrast{color:var(--color-brand-secondary-contrast)}.text-current{color:currentColor}.text-foreground{color:var(--color-foreground)}.text-foreground-muted{color:var(--color-foreground-muted)}.text-foreground\/80{color:var(--color-foreground)}@supports (color:color-mix(in lab, red, red)){.text-foreground\/80{color:color-mix(in oklab, var(--color-foreground) 80%, transparent)}}.text-muted\/30{color:var(--color-muted)}@supports (color:color-mix(in lab, red, red)){.text-muted\/30{color:color-mix(in oklab, var(--color-muted) 30%, transparent)}}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.decoration-dotted{text-decoration-style:dotted}.underline-offset-4{text-underline-offset:4px}.underline-offset-6{text-underline-offset:6px}.opacity-0{opacity:0}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0px_0px_35px_0px\]{--tw-shadow:0px 0px 35px 0px var(--tw-shadow-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0px_0px_60\.5px_0px\]{--tw-shadow:0px 0px 60.5px 0px var(--tw-shadow-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0px_2px_30px_0px\]{--tw-shadow:0px 2px 30px 0px var(--tw-shadow-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0px_4px_19\.5px_0px\]{--tw-shadow:0px 4px 19.5px 0px var(--tw-shadow-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0px_4px_50px_0px\]{--tw-shadow:0px 4px 50px 0px var(--tw-shadow-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-6{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(6px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[\#0000000D\]{--tw-shadow-color:#0000000d}@supports (color:color-mix(in lab, red, red)){.shadow-\[\#0000000D\]{--tw-shadow-color:color-mix(in oklab, #0000000d var(--tw-shadow-alpha), transparent)}}.shadow-\[\#04171A14\]{--tw-shadow-color:#04171a14}@supports (color:color-mix(in lab, red, red)){.shadow-\[\#04171A14\]{--tw-shadow-color:color-mix(in oklab, #04171a14 var(--tw-shadow-alpha), transparent)}}.shadow-\[\#0918540D\]{--tw-shadow-color:#0918540d}@supports (color:color-mix(in lab, red, red)){.shadow-\[\#0918540D\]{--tw-shadow-color:color-mix(in oklab, #0918540d var(--tw-shadow-alpha), transparent)}}.shadow-brand-primary\/10{--tw-shadow-color:var(--color-brand-primary)}@supports (color:color-mix(in lab, red, red)){.shadow-brand-primary\/10{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-brand-primary) 10%, transparent) var(--tw-shadow-alpha), transparent)}}.ring-brand-secondary{--tw-ring-color:var(--color-brand-secondary)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.brightness-65{--tw-brightness:brightness(65%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[border-color\]{transition-property:border-color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\]{transition-property:color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[colors\]{transition-property:colors;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[height\]{transition-property:height;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}:is(.\*\:flex>*){display:flex}:is(.\*\:flex-col>*){flex-direction:column}:is(.\*\:justify-center>*){justify-content:center}:is(.\*\:text-foreground>*){color:var(--color-foreground)}@media (hover:hover){.group-hover\:translate-y-0:is(:where(.group):hover *){--tw-translate-y:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:scale-105:is(:where(.group):hover *){--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.group-hover\:bg-black\/30:is(:where(.group):hover *){background-color:#0000004d}@supports (color:color-mix(in lab, red, red)){.group-hover\:bg-black\/30:is(:where(.group):hover *){background-color:color-mix(in oklab, var(--color-black) 30%, transparent)}}.group-hover\/badge\:scale-90:is(:where(.group\/badge):hover *){--tw-scale-x:90%;--tw-scale-y:90%;--tw-scale-z:90%;scale:var(--tw-scale-x) var(--tw-scale-y)}.group-hover\/badge\:bg-brand-secondary:is(:where(.group\/badge):hover *){background-color:var(--color-brand-secondary)}.group-hover\/badge\:fill-brand-primary:is(:where(.group\/badge):hover *){fill:var(--color-brand-primary)}.group-hover\/step-icon-container\:scale-110:is(:where(.group\/step-icon-container):hover *){--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.group-hover\/step-icon-container\:rotate-12:is(:where(.group\/step-icon-container):hover *){rotate:12deg}}.group-data-closed\/faq-item\:hidden:is(:where(.group\/faq-item)[data-closed] *),.group-data-open\/faq-item\:hidden:is(:where(.group\/faq-item)[data-open] *){display:none}.group-data-open\/faq-item\:opacity-100:is(:where(.group\/faq-item)[data-open] *){opacity:1}.file\:rounded-sm::file-selector-button{border-radius:var(--radius-sm)}.file\:border::file-selector-button{border-style:var(--tw-border-style);border-width:1px}.file\:border-foreground\/30::file-selector-button{border-color:var(--color-foreground)}@supports (color:color-mix(in lab, red, red)){.file\:border-foreground\/30::file-selector-button{border-color:color-mix(in oklab, var(--color-foreground) 30%, transparent)}}.file\:bg-gray-100::file-selector-button{background-color:var(--color-gray-100)}.file\:p-2::file-selector-button{padding:calc(var(--spacing) * 2)}.file\:py-1\!::file-selector-button{padding-block:calc(var(--spacing) * 1)!important}.file\:text-sm\!::file-selector-button{font-size:var(--text-sm)!important;line-height:var(--tw-leading,var(--text-sm--line-height))!important}.file\:leading-none\!::file-selector-button{--tw-leading:1!important;line-height:1!important}.file\:font-normal::file-selector-button{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:relative:before{content:var(--tw-content);position:relative}.before\:inset-0:before{content:var(--tw-content);inset:calc(var(--spacing) * 0)}.before\:me-4:before{content:var(--tw-content);margin-inline-end:calc(var(--spacing) * 4)}.before\:block:before{content:var(--tw-content);display:block}.before\:size-\[0\.5lh\]:before{content:var(--tw-content);width:.5lh;height:.5lh}.before\:h-0\.5:before{content:var(--tw-content);height:calc(var(--spacing) * .5)}.before\:w-8:before{content:var(--tw-content);width:calc(var(--spacing) * 8)}.before\:w-11:before{content:var(--tw-content);width:calc(var(--spacing) * 11)}.before\:shrink-0:before{content:var(--tw-content);flex-shrink:0}.before\:translate-y-3:before{content:var(--tw-content);--tw-translate-y:calc(var(--spacing) * 3);translate:var(--tw-translate-x) var(--tw-translate-y)}.before\:rounded-full:before{content:var(--tw-content);border-radius:3.40282e38px}.before\:border-t-2:before{content:var(--tw-content);border-top-style:var(--tw-border-style);border-top-width:2px}.before\:border-dashed:before{content:var(--tw-content);--tw-border-style:dashed;border-style:dashed}.before\:border-brand-primary:before{content:var(--tw-content);border-color:var(--color-brand-primary)}.before\:bg-brand-primary:before,.before\:bg-brand-primary\/75:before{content:var(--tw-content);background-color:var(--color-brand-primary)}@supports (color:color-mix(in lab, red, red)){.before\:bg-brand-primary\/75:before{background-color:color-mix(in oklab, var(--color-brand-primary) 75%, transparent)}}.before\:bg-white:before{content:var(--tw-content);background-color:var(--color-white)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:top-8:after{content:var(--tw-content);top:calc(var(--spacing) * 8)}.after\:left-4:after{content:var(--tw-content);left:calc(var(--spacing) * 4)}.after\:-z-1:after{content:var(--tw-content);z-index:calc(1 * -1)}.after\:block:after{content:var(--tw-content);display:block}.after\:h-0\.5:after{content:var(--tw-content);height:calc(var(--spacing) * .5)}.after\:h-\[calc\(100\%---spacing\(12\)\)\]:after{content:var(--tw-content);height:calc(100% - calc(var(--spacing) * 12))}.after\:w-11:after{content:var(--tw-content);width:calc(var(--spacing) * 11)}.after\:w-full:after{content:var(--tw-content);width:100%}.after\:rounded-lg:after{content:var(--tw-content);border-radius:var(--radius-lg)}.after\:border-t-2:after{content:var(--tw-content);border-top-style:var(--tw-border-style);border-top-width:2px}.after\:border-dashed:after{content:var(--tw-content);--tw-border-style:dashed;border-style:dashed}.after\:border-brand-primary:after{content:var(--tw-content);border-color:var(--color-brand-primary)}.after\:bg-brand-primary:after{content:var(--tw-content);background-color:var(--color-brand-primary)}.last\:-mr-2:last-child{margin-right:calc(var(--spacing) * -2)}@media (hover:hover){.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:border-\[\#dbdbdb\]:hover{border-color:#dbdbdb}.hover\:bg-brand-primary:hover{background-color:var(--color-brand-primary)}.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:bg-neutral-100:hover{background-color:var(--color-neutral-100)}.hover\:text-brand-primary:hover{color:var(--color-brand-primary)}.hover\:text-brand-primary-contrast:hover{color:var(--color-brand-primary-contrast)}.hover\:text-foreground-muted\/75:hover{color:var(--color-foreground-muted)}@supports (color:color-mix(in lab, red, red)){.hover\:text-foreground-muted\/75:hover{color:color-mix(in oklab, var(--color-foreground-muted) 75%, transparent)}}.hover\:underline:hover{text-decoration-line:underline}.hover\:decoration-solid:hover{text-decoration-style:solid}.hover\:shadow-xl:hover{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.focus\:not-sr-only:focus{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.focus\:fixed:focus{position:fixed}.focus\:top-4:focus{top:calc(var(--spacing) * 4)}.focus\:left-4:focus{left:calc(var(--spacing) * 4)}.focus\:z-9999:focus{z-index:9999}.focus\:border-brand-primary:focus{border-color:var(--color-brand-primary)}.focus\:bg-brand-primary:focus{background-color:var(--color-brand-primary)}.focus\:bg-gray-50:focus{background-color:var(--color-gray-50)}.focus\:px-4:focus{padding-inline:calc(var(--spacing) * 4)}.focus\:py-2:focus{padding-block:calc(var(--spacing) * 2)}.focus\:font-medium:focus{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.focus\:text-brand-primary-contrast:focus{color:var(--color-brand-primary-contrast)}.focus\:outline-hidden:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-brand-primary:focus-visible{outline-color:var(--color-brand-primary)}.focus-visible\:outline-none\!:focus-visible{--tw-outline-style:none!important;outline-style:none!important}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}.has-focus-visible\:outline-2\!:has(:focus-visible){outline-style:var(--tw-outline-style)!important;outline-width:2px!important}.has-focus-visible\:outline-offset-2\!:has(:focus-visible){outline-offset:2px!important}.has-focus-visible\:outline-brand-primary\!:has(:focus-visible){outline-color:var(--color-brand-primary)!important}.has-focus-visible\:outline-solid\!:has(:focus-visible){--tw-outline-style:solid!important;outline-style:solid!important}.data-active\:bg-brand-primary[data-active],.data-active\:bg-brand-primary\/10[data-active]{background-color:var(--color-brand-primary)}@supports (color:color-mix(in lab, red, red)){.data-active\:bg-brand-primary\/10[data-active]{background-color:color-mix(in oklab, var(--color-brand-primary) 10%, transparent)}}.data-active\:text-brand-primary[data-active]{color:var(--color-brand-primary)}.data-active\:text-brand-primary\![data-active]{color:var(--color-brand-primary)!important}.data-active\:text-brand-primary-contrast[data-active]{color:var(--color-brand-primary-contrast)}.data-active\:before\:absolute[data-active]:before{content:var(--tw-content);position:absolute}.data-active\:before\:inset-y-0[data-active]:before{content:var(--tw-content);inset-block:calc(var(--spacing) * 0)}.data-active\:before\:inset-s-0[data-active]:before{content:var(--tw-content);inset-inline-start:calc(var(--spacing) * 0)}.data-active\:before\:w-1[data-active]:before{content:var(--tw-content);width:calc(var(--spacing) * 1)}.data-active\:before\:bg-brand-primary[data-active]:before{content:var(--tw-content);background-color:var(--color-brand-primary)}.data-ending-style\:h-0[data-ending-style]{height:calc(var(--spacing) * 0)}.data-open\:border-brand-primary[data-open]{border-color:var(--color-brand-primary)}.data-starting-style\:h-0[data-starting-style]{height:calc(var(--spacing) * 0)}@media not all and (min-width:64rem){.max-lg\:left-5{left:calc(var(--spacing) * 5)}.max-lg\:order-1{order:1}.max-lg\:order-2{order:2}.max-lg\:row-start-0\!{grid-row-start:0!important}.max-lg\:row-start-1{grid-row-start:1}.max-lg\:row-start-1\!{grid-row-start:1!important}.max-lg\:row-end-1\!{grid-row-end:1!important}.max-lg\:row-end-2\!{grid-row-end:2!important}.max-lg\:mt-4{margin-top:calc(var(--spacing) * 4)}.max-lg\:hidden{display:none}.max-lg\:min-h-100{min-height:calc(var(--spacing) * 100)}.max-lg\:max-w-120{max-width:calc(var(--spacing) * 120)}.max-lg\:items-start{align-items:flex-start}}@media not all and (min-width:48rem){.max-md\:right-0\!{right:calc(var(--spacing) * 0)!important}.max-md\:bottom-0\!{bottom:calc(var(--spacing) * 0)!important}.max-md\:hidden{display:none}.max-md\:h-full\!{height:100%!important}.max-md\:w-8{width:calc(var(--spacing) * 8)}.max-md\:w-9\/10\!{width:90%!important}}@media (min-width:40rem){.sm\:mx-auto{margin-inline:auto}.sm\:h-20{height:calc(var(--spacing) * 20)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-col{flex-direction:column}.sm\:gap-6{gap:calc(var(--spacing) * 6)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:text-center{text-align:center}}@media (min-width:48rem){.md\:top-2\/10{top:20%}.md\:mt-10{margin-top:calc(var(--spacing) * 10)}.md\:hidden\!{display:none!important}.md\:h-12{height:calc(var(--spacing) * 12)}.md\:w-10{width:calc(var(--spacing) * 10)}.md\:max-w-2xl{max-width:var(--container-2xl)}.md\:max-w-3xl{max-width:var(--container-3xl)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:gap-5{gap:calc(var(--spacing) * 5)}.md\:px-5{padding-inline:calc(var(--spacing) * 5)}.md\:px-8{padding-inline:calc(var(--spacing) * 8)}.md\:px-10{padding-inline:calc(var(--spacing) * 10)}.md\:py-3{padding-block:calc(var(--spacing) * 3)}.md\:py-10{padding-block:calc(var(--spacing) * 10)}.md\:py-20{padding-block:calc(var(--spacing) * 20)}.md\:text-center{text-align:center}.md\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.md\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.md\:text-\[12rem\]{font-size:12rem}}@media (min-width:64rem){.lg\:mx-auto{margin-inline:auto}.lg\:mt-4{margin-top:calc(var(--spacing) * 4)}.lg\:mt-10{margin-top:calc(var(--spacing) * 10)}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:h-14{height:calc(var(--spacing) * 14)}.lg\:min-h-120{min-height:calc(var(--spacing) * 120)}.lg\:max-w-1\/3{max-width:33.3333%}.lg\:max-w-4xl{max-width:var(--container-4xl)}.lg\:max-w-\[min\(100\%\,18rem\)\]{max-width:min(100%,18rem)}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:flex-col{flex-direction:column}.lg\:flex-row{flex-direction:row}.lg\:flex-row\!{flex-direction:row!important}.lg\:flex-nowrap{flex-wrap:nowrap}.lg\:items-center{align-items:center}.lg\:items-end{align-items:flex-end}.lg\:items-start{align-items:flex-start}.lg\:justify-between{justify-content:space-between}.lg\:gap-0{gap:calc(var(--spacing) * 0)}.lg\:gap-16{gap:calc(var(--spacing) * 16)}.lg\:gap-x-16{column-gap:calc(var(--spacing) * 16)}.lg\:gap-y-6{row-gap:calc(var(--spacing) * 6)}.lg\:gap-y-8{row-gap:calc(var(--spacing) * 8)}.lg\:self-start{align-self:flex-start}.lg\:bg-gray-100{background-color:var(--color-gray-100)}.lg\:p-12{padding:calc(var(--spacing) * 12)}.lg\:px-0{padding-inline:calc(var(--spacing) * 0)}.lg\:px-4{padding-inline:calc(var(--spacing) * 4)}.lg\:px-12{padding-inline:calc(var(--spacing) * 12)}.lg\:py-4{padding-block:calc(var(--spacing) * 4)}.lg\:py-6{padding-block:calc(var(--spacing) * 6)}.lg\:py-8{padding-block:calc(var(--spacing) * 8)}.lg\:py-10{padding-block:calc(var(--spacing) * 10)}.lg\:py-12{padding-block:calc(var(--spacing) * 12)}.lg\:py-24{padding-block:calc(var(--spacing) * 24)}.lg\:ps-12{padding-inline-start:calc(var(--spacing) * 12)}.lg\:pe-12{padding-inline-end:calc(var(--spacing) * 12)}.lg\:pt-4{padding-top:calc(var(--spacing) * 4)}.lg\:text-center{text-align:center}.lg\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.lg\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.lg\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}}@media (min-width:96rem){.xl\:gap-16{gap:calc(var(--spacing) * 16)}.xl\:px-0\.5{padding-inline:calc(var(--spacing) * .5)}}.rtl\:-mr-2:where(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),[dir=rtl],[dir=rtl] *){margin-right:calc(var(--spacing) * -2)}.rtl\:-ml-2:where(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),[dir=rtl],[dir=rtl] *),.rtl\:last\:-ml-2:where(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),[dir=rtl],[dir=rtl] *):last-child{margin-left:calc(var(--spacing) * -2)}.\[\&\>ul\>li\]\:h-\[unset\]\!>ul>li{height:unset!important}.\[\&\>ul\>li\]\:self-stretch\!>ul>li{align-self:stretch!important}}:root{--color-background:#fff;--color-foreground-muted:#8a8a8a;--color-foreground:#000;--color-foreground-dark:#000;--color-muted:#8a8a8a;--color-border:#e5e7eb;--color-brand-primary:#aa0c0c;--color-brand-primary-dark:#8a0a0a;--color-brand-primary-contrast:#fff;--color-brand-primary-dark-contrast:#fff;--color-brand-secondary:#f6c217;--color-brand-secondary-dark:#d9a814;--color-brand-secondary-contrast:#000;--color-brand-secondary-dark-contrast:#000;--gh-height:80px;--height-without-gh:calc(var(--screen-height) - var(--gh-height));--hero-section-min-height:min(768px, var(--height-without-gh))}@supports (height:100dvh){:root{--screen-height:100dvh}}@supports not (height:100dvh){:root{--screen-height:100vh}}html{-moz-text-size-adjust:100%;text-size-adjust:100%;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--page-section-padding-y:calc(var(--spacing) * 12);flex-direction:column;flex:1;min-height:100dvh;display:flex;position:relative}@media (min-width:48rem){html{--page-section-padding-y:calc(var(--spacing) * 16)}}html{--page-section-padding-x:calc(var(--spacing) * 4)}@media (min-width:40rem){html{--page-section-padding-x:calc(var(--spacing) * 6)}}@media (min-width:48rem){html{--page-section-padding-x:calc(var(--spacing) * 8)}}@media (min-width:64rem){html{--page-section-padding-x:calc(var(--spacing) * 10)}}@media (min-width:96rem){html{--page-section-padding-x:calc(var(--spacing) * 12)}}body{background-color:var(--color-background);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed);color:var(--color-foreground);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;flex:1;display:flex}.page-main{flex:1}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(../assets/fonts/41e95f694c5c4549-s.0r1jrq7neqdsq.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(../assets/fonts/6c55a692938ebbbc-s.0g6rbszwfgn9y.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(../assets/fonts/a218039a3287bcfd-s.p.17-1enzs_j91b.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../assets/fonts/bdc7e24a509eb931-s.0apt5mko2.qn3.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../assets/fonts/0da9c7f357bd9d4d-s.0ek5sshv8wk3m.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../assets/fonts/8e6fa89aa22d24ec-s.p.0uvzar8hswo3p.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(../assets/fonts/0a7740363b4d4863-s.1110aazvokzp..woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(../assets/fonts/5f9d24ebef5d5292-s.0esuu2f5si~v8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(../assets/fonts/e2334d715941921e-s.p.12skym0rqknxy.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(../assets/fonts/b53057dbf91a7acf-s.0carvq6u72s58.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(../assets/fonts/798ea22d9983e047-s.106do9xzbuago.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(../assets/fonts/47fe1b7cd6e6ed85-s.p.0~mcdl10zdfb3.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:800;font-display:swap;src:url(../assets/fonts/99ce71e74c11bc20-s.0hoqzal24odb4.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:800;font-display:swap;src:url(../assets/fonts/8cf1ea7b03cdeb83-s.0.56594qx.-9o.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:800;font-display:swap;src:url(../assets/fonts/829ba4228c966254-s.p.0ub.k0om~_-xi.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:900;font-display:swap;src:url(../assets/fonts/4ae8e3010ce79e6a-s.0g5xoah9dq00_.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:900;font-display:swap;src:url(../assets/fonts/1747e1908d2352d2-s.08t4zcuc4z7pw.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:900;font-display:swap;src:url(../assets/fonts/4b766aa38fdaaae3-s.p.0cbnlo4n.czwi.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins Fallback;src:local(Arial);ascent-override:93.62%;descent-override:31.21%;line-gap-override:8.92%;size-adjust:112.16%}.poppins_f84d6eaa-module__wwm90G__className{font-family:Poppins,Poppins Fallback;font-style:normal}.poppins_f84d6eaa-module__wwm90G__variable{--font-display:"Poppins", "Poppins Fallback"}
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../assets/fonts/2c55a0e60120577a-s.0bjc5tiuqdqro.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../assets/fonts/9c72aa0f40e4eef8-s.0m6w47a4e5dy9.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../assets/fonts/ad66f9afd8947f86-s.11u06r12fd6v_.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../assets/fonts/5476f68d60460930-s.0wxq9webf.ew4.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../assets/fonts/2bbe8d2671613f1f-s.067x_6k0k23tk.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../assets/fonts/1bffadaabf893a1e-s.16ipb6fqu393i.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../assets/fonts/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_eee63ac7-module__JFqn0a__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_eee63ac7-module__JFqn0a__variable{--font-sans:"Inter", "Inter Fallback"}


/* Static Interactive Styles */
.hidden,
[hidden],
.tab-panel.hidden,
.tab-panel[hidden],
.tab-content[hidden],
.faq-answer[hidden],
[data-state="closed"] {
    display: none !important;
}

/* Technology Tabs Interactive Styling */
.tab-btn {
    cursor: pointer;
    user-select: none;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.tab-btn[data-active],
.tab-btn.active,
.tab-btn[aria-selected="true"] {
    background-color: var(--color-brand-primary, #8a0a0a) !important;
    color: var(--color-brand-primary-contrast, #ffffff) !important;
}

.tab-btn:not([data-active]):hover {
    color: var(--color-brand-primary, #8a0a0a) !important;
}

.tab-panel {
    animation: fadeInTab 0.25s ease-in-out;
}

@keyframes fadeInTab {
    from {
        opacity: 0;
        transform: translateY(4px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Ensure smooth transitions and responsive behavior */
html {
    scroll-behavior: smooth;
}

/* ===================================================
   HERO BACKGROUND SLIDER & SLIDING ANIMATION
   =================================================== */
#products-hero-slider {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-color: #090d16;
}

.hero-slide {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    transform: scale(1.08) translate3d(0, 0, 0);
    transition: opacity 1.2s cubic-bezier(0.4, 0, 0.2, 1), transform 5s cubic-bezier(0.2, 0.8, 0.2, 1), visibility 1.2s;
    will-change: opacity, transform;
}

.hero-slide.active {
    opacity: 1;
    visibility: visible;
    transform: scale(1) translate3d(0, 0, 0);
    z-index: 1;
}

.hero-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.hero-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0.45) 50%, rgba(0, 0, 0, 0.65) 100%);
    pointer-events: none;
}

.hero-title {
    color: #ffffff !important;
    font-family: var(--font-display);
    font-weight: 700;
    text-shadow: 0 4px 24px rgba(0, 0, 0, 0.85), 0 2px 8px rgba(0, 0, 0, 0.9);
}

.hero-subtitle {
    color: #ffffff !important;
    font-weight: 500;
    text-shadow: 0 3px 16px rgba(0, 0, 0, 0.9), 0 1px 4px rgba(0, 0, 0, 0.95);
}

.text-white {
    color: #ffffff !important;
}

.text-shadow-xl {
    text-shadow: 0 4px 24px rgba(0, 0, 0, 0.85), 0 2px 8px rgba(0, 0, 0, 0.9);
}

.drop-shadow-md {
    filter: drop-shadow(0 4px 10px rgba(0, 0, 0, 0.7));
}

/* Hero section ratio matching live site (1264 x 544px at 1280px viewport) */
.page-section:has(#products-hero-slider),
.products-hero-section {
    position: relative;
    width: 100%;
    min-height: 544px;
    display: flex;
    align-items: center;
}

.page-section:has(#products-hero-slider) .page-section-content,
.products-hero-section .page-section-content {
    min-height: 544px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-top: 64px;
    padding-bottom: 64px;
    padding-left: 40px;
    padding-right: 40px;
}

.grid-cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.grid-cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* ===================================================
   HERO 3D SHOWCASE SLIDER
   =================================================== */
.hero-showcase-wrapper {
  position: relative;
  width: 100%;
  max-width: 540px;
}

.hero-glow-effect {
  position: absolute;
  inset: -20px;
  background: radial-gradient(circle at 50% 50%, rgba(145, 17, 22, 0.09) 0%, rgba(242, 178, 0, 0.08) 40%, transparent 70%);
  filter: blur(28px);
  border-radius: 50%;
  pointer-events: none;
  z-index: 0;
  animation: heroGlowPulse 6s ease-in-out infinite alternate;
}

@keyframes heroGlowPulse {
  0% { transform: scale(0.96); opacity: 0.6; }
  100% { transform: scale(1.04); opacity: 1; }
}

.hero-slider-container {
  background: transparent;
  position: relative;
  z-index: 10;
  height: 480px;
  width: 100%;
  border: none;
  box-shadow: none;
  overflow: visible;
}

@media (max-width: 640px) {
  .hero-slider-container {
    height: 380px;
  }
}

.hero-slide {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  transform: scale(0.96);
  transition: opacity 0.5s ease-in-out, transform 0.5s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.5s;
  pointer-events: none;
  z-index: 1;
}

.hero-slide.active {
  opacity: 1;
  visibility: visible;
  transform: scale(1);
  pointer-events: auto;
  z-index: 5;
}

.hero-slide-img-box {
  position: absolute;
  inset: 0;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.hero-slide-img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 0;
  transition: transform 0.5s ease;
}

.hero-slide-badge {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 15;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(8px);
  padding: 6px 14px;
  border-radius: 9999px;
  border: 1px solid #e5e7eb;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
  font-size: 12px;
  font-weight: 600;
  color: #1f2937;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.hero-slide-caption {
  position: absolute;
  bottom: 12px;
  left: 12px;
  right: 12px;
  z-index: 15;
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(10px);
  padding: 10px 16px;
  border-radius: 1rem;
  border: 1px solid #e5e7eb;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.hero-slide-caption .caption-title {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 14px;
  color: #111827;
  line-height: 1.25;
}

.hero-slide-caption .caption-subtitle {
  font-size: 11px;
  color: #6b7280;
  margin-top: 2px;
}

.hero-slide-caption .caption-tag {
  font-size: 11px;
  font-weight: 700;
  color: #911116;
  background: rgba(145, 17, 22, 0.08);
  border: 1px solid rgba(145, 17, 22, 0.15);
  padding: 4px 10px;
  border-radius: 8px;
  white-space: nowrap;
}

.hero-nav-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 25;
  width: 36px;
  height: 36px;
  border-radius: 9999px;
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(6px);
  border: 1px solid #e5e7eb;
  color: #111827;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  transition: all 0.2s ease;
}

.hero-nav-btn:hover {
  background: #ffffff;
  color: #911116;
  transform: translateY(-50%) scale(1.1);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15);
}

.hero-nav-btn.prev {
  left: 12px;
}

.hero-nav-btn.next {
  right: 12px;
}

.hero-dots-container {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 14px;
}

.hero-dot {
  width: 8px;
  height: 8px;
  border-radius: 9999px;
  background: #d1d5db;
  border: none;
  padding: 0;
  cursor: pointer;
  transition: all 0.3s ease;
}

.hero-dot:hover {
  background: #9ca3af;
}

.hero-dot.active {
  background: #911116 !important;
  width: 24px !important;
}

.hero-tab-pill {
  cursor: pointer;
  font-size: 12px;
  font-weight: 600;
  padding: 6px 14px;
  border-radius: 9999px;
  border: 1px solid #e5e7eb;
  background: #ffffff;
  color: #4b5563;
  transition: all 0.2s ease;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}

.hero-tab-pill:hover {
  border-color: #911116;
  color: #911116;
}

.hero-tab-pill.active {
  background: #911116 !important;
  border-color: #911116 !important;
  color: #ffffff !important;
  box-shadow: 0 4px 12px rgba(145, 17, 22, 0.25);
}

/* ===================================================
   ADDITIONAL STYLES FOR DEDICATED PAGES & COMPARISONS
   =================================================== */

/* Breadcrumbs */
.breadcrumb-nav {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
  font-size: 0.875rem;
  color: #6b7280;
  padding: 0.75rem 0;
}
.breadcrumb-nav a {
  color: #4b5563;
  transition: color 0.15s ease;
}
.breadcrumb-nav a:hover {
  color: #911116;
}
.breadcrumb-nav .separator {
  color: #9ca3af;
}
.breadcrumb-nav .current {
  color: #911116;
  font-weight: 600;
}

/* ===================================================
   TECHNOLOGY COMPARISON SECTION (STYLISH & RESPONSIVE)
   =================================================== */
.tech-comparison-wrapper {
  background: #ffffff;
  border-radius: 1.25rem;
  box-shadow: 0 10px 30px -5px rgba(0, 0, 0, 0.06), 0 0 0 1px rgba(0, 0, 0, 0.05);
  overflow: hidden;
  border: 1px solid #e2e8f0;
}

.tech-comparison-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  text-align: left;
}

.tech-comparison-table thead th {
  background: linear-gradient(135deg, #090f1d 0%, #1e293b 100%);
  color: #ffffff;
  padding: 1.15rem 1.35rem;
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 0.875rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  border-bottom: 2px solid #911116;
  white-space: nowrap;
}

.tech-comparison-table tbody tr {
  transition: background-color 0.2s ease;
  border-bottom: 1px solid #f1f5f9;
}

.tech-comparison-table tbody tr:last-child {
  border-bottom: none;
}

.tech-comparison-table tbody tr:hover {
  background: #fbfcfe;
}

.tech-comparison-table tbody td {
  padding: 1.35rem 1.35rem;
  vertical-align: top;
  color: #334155;
  font-size: 0.925rem;
  line-height: 1.6;
  border-top: 1px solid #f1f5f9;
}

.tech-comparison-table tbody tr:first-child td {
  border-top: none;
}

/* Technology Identity */
.tech-badge-cell {
  min-width: 190px;
}

.tech-title-wrap {
  display: flex;
  flex-direction: column;
}

.tech-name {
  font-family: var(--font-display);
  font-size: 1.3rem;
  font-weight: 800;
  color: #0f172a;
  letter-spacing: -0.01em;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}

.tech-fullname {
  font-size: 0.775rem;
  color: #64748b;
  margin-top: 0.15rem;
  font-weight: 500;
}

.tech-tag-badge {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  margin-top: 0.5rem;
  padding: 0.2rem 0.55rem;
  font-size: 0.725rem;
  font-weight: 700;
  border-radius: 9999px;
  background: rgba(145, 17, 22, 0.08);
  color: #911116;
  border: 1px solid rgba(145, 17, 22, 0.16);
  letter-spacing: 0.01em;
}

.tech-link {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  margin-top: 0.75rem;
  font-size: 0.8rem;
  font-weight: 700;
  color: #911116;
  text-decoration: none;
  transition: all 0.2s ease;
}

.tech-link:hover {
  color: #6b0c10;
  transform: translateX(3px);
}

.tech-link svg {
  width: 13px;
  height: 13px;
  transition: transform 0.2s ease;
}

.tech-link:hover svg {
  transform: translateX(2px);
}

/* Material Pills */
.tech-pill-group {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
}

.tech-pill {
  display: inline-flex;
  align-items: center;
  padding: 0.22rem 0.6rem;
  background: #f1f5f9;
  color: #0f172a;
  font-size: 0.775rem;
  font-weight: 600;
  border-radius: 6px;
  border: 1px solid #e2e8f0;
}

/* Strengths list */
.tech-strength-list {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
}

.tech-strength-item {
  display: flex;
  align-items: flex-start;
  gap: 0.45rem;
  font-size: 0.875rem;
  line-height: 1.45;
}

.tech-strength-icon {
  width: 16px;
  height: 16px;
  color: #16a34a;
  flex-shrink: 0;
  margin-top: 0.15rem;
}

/* Mobile Responsive Transformation */
@media (max-width: 900px) {
  .tech-comparison-wrapper {
    background: transparent;
    box-shadow: none;
    border: none;
    border-radius: 0;
    overflow: visible;
  }

  .tech-comparison-table thead {
    display: none;
  }

  .tech-comparison-table,
  .tech-comparison-table tbody,
  .tech-comparison-table tr,
  .tech-comparison-table td {
    display: block;
    width: 100%;
  }

  .tech-comparison-table tbody {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
  }

  .tech-comparison-table tbody tr {
    background: #ffffff;
    border-radius: 1.25rem;
    box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.06), 0 0 0 1px rgba(0, 0, 0, 0.05);
    padding: 1.5rem;
    border: 1px solid #e2e8f0;
    overflow: hidden;
    position: relative;
  }

  .tech-comparison-table tbody tr::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #911116, #dc2626);
  }

  .tech-comparison-table tbody td {
    padding: 0.85rem 0;
    border-top: none;
    border-bottom: 1px solid #f1f5f9;
  }

  .tech-comparison-table tbody td:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }

  .tech-comparison-table tbody td:first-child {
    padding-top: 0.25rem;
    padding-bottom: 1rem;
    border-bottom: 2px solid #f1f5f9;
  }

  .tech-comparison-table td::before {
    content: attr(data-label);
    display: block;
    font-size: 0.725rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #94a3b8;
    margin-bottom: 0.35rem;
  }

  .tech-comparison-table td:first-child::before {
    display: none;
  }
}


/* Material Spec Cards */
.material-card {
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 1rem;
  padding: 1.5rem;
  transition: all 0.25s ease;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}
.material-card:hover {
  transform: translateY(-4px);
  border-color: #911116;
  box-shadow: 0 12px 24px rgba(145, 17, 22, 0.08);
}

/* ============================================================
   REDESIGNED NAVBAR & INTERACTIVE DROPDOWN SYSTEM
   ============================================================ */

/* ===================================================
   VADIVAM 3D - ARCHITECTURAL PRECISION NAVBAR & FOOTER
   =================================================== */

/* Header Shell with Floating Container */
.site-header-wrapper {
  position: sticky;
  top: 0;
  z-index: 1000;
  width: 100%;
  padding: 0.65rem 1rem;
  transition: padding 0.25s ease;
  background: transparent;
  pointer-events: none;
}

.site-header-container {
  max-width: 1240px;
  margin: 0 auto;
  pointer-events: auto;
  position: relative;
}

/* Floating Precision Navigation Shell */
.site-navbar-floating {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem;
  padding: 0.45rem 1.25rem;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 14px;
  box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.05), 0 2px 6px -1px rgba(0, 0, 0, 0.02);
  transition: background-color 0.25s cubic-bezier(0.16, 1, 0.3, 1),
              border-color 0.25s cubic-bezier(0.16, 1, 0.3, 1),
              box-shadow 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  position: relative;
}

/* ===================================================
   SCROLLED NAVBAR STATE: PREMIUM SOLID BLACK
   =================================================== */
.site-header-wrapper.is-scrolled .site-navbar-floating,
.site-navbar-floating.is-scrolled,
.is-scrolled .site-navbar-floating {
  background: #0A0A0A !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
  box-shadow: 0 12px 36px -4px rgba(0, 0, 0, 0.5), 0 4px 14px rgba(0, 0, 0, 0.3) !important;
}

/* Brand Logo */
.navbar-brand {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  text-decoration: none;
  padding: 0.15rem 0;
}

.navbar-brand-logo {
  height: 60px;
  width: auto;
  object-fit: contain;
  transition: transform 0.2s ease, filter 0.25s ease;
}

@media (max-width: 640px) {
  .navbar-brand-logo {
    height: 48px;
  }
}

.navbar-brand:hover .navbar-brand-logo {
  transform: scale(1.02);
}

.site-header-wrapper.is-scrolled .navbar-brand-logo,
.site-navbar-floating.is-scrolled .navbar-brand-logo,
.is-scrolled .navbar-brand-logo {
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.5));
}

/* Desktop Links Group */
.navbar-links {
  display: flex !important;
  align-items: center;
  gap: 1.5rem;
}

@media (min-width: 1200px) {
  .navbar-links {
    gap: 1.85rem;
  }
}

/* Nav Item Link */
.nav-item-link {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.4rem 0.15rem;
  font-family: var(--font-display, inherit);
  font-size: 0.925rem;
  font-weight: 500;
  color: #374151;
  text-decoration: none;
  letter-spacing: -0.01em;
  transition: color 0.2s ease;
}

.nav-item-link:hover,
.nav-item-link:focus-visible {
  color: #911116;
}

/* Refined Underline Indicator */
.nav-item-link::after {
  content: '';
  position: absolute;
  bottom: -2px;
  left: 50%;
  width: 0;
  height: 2px;
  background: #911116;
  border-radius: 2px;
  transition: width 0.22s cubic-bezier(0.16, 1, 0.3, 1), left 0.22s cubic-bezier(0.16, 1, 0.3, 1), background-color 0.25s ease;
  opacity: 0;
}

.nav-item-link:hover::after,
.nav-item-link:focus-visible::after {
  width: 100%;
  left: 0;
  opacity: 1;
}

.nav-item-link.active,
.nav-item-link[data-active] {
  color: #911116;
  font-weight: 600;
}

.nav-item-link.active::after,
.nav-item-link[data-active]::after {
  width: 100%;
  left: 0;
  opacity: 1;
}

/* Dropdown Caret Chevron */
.nav-item-link .dropdown-chevron {
  transition: transform 0.22s cubic-bezier(0.16, 1, 0.3, 1), color 0.2s ease;
  opacity: 0.7;
}

.nav-dropdown-wrapper:hover .dropdown-chevron,
.nav-dropdown-wrapper.is-open .dropdown-chevron,
.nav-dropdown-wrapper:focus-within .dropdown-chevron {
  transform: rotate(180deg);
  opacity: 1;
  color: #911116;
}

/* ===================================================
   SCROLLED NAVBAR TYPOGRAPHY & ACTIVE STATES
   =================================================== */
.site-header-wrapper.is-scrolled .nav-item-link,
.site-navbar-floating.is-scrolled .nav-item-link,
.is-scrolled .nav-item-link {
  color: #FFFFFF !important;
}

.site-header-wrapper.is-scrolled .nav-item-link:hover,
.site-header-wrapper.is-scrolled .nav-item-link:focus-visible,
.site-navbar-floating.is-scrolled .nav-item-link:hover,
.is-scrolled .nav-item-link:hover {
  color: #FBBF24 !important; /* Vadivam Yellow Gold */
}

.site-header-wrapper.is-scrolled .nav-item-link::after,
.site-navbar-floating.is-scrolled .nav-item-link::after,
.is-scrolled .nav-item-link::after {
  background: #FBBF24 !important;
}

.site-header-wrapper.is-scrolled .nav-item-link.active,
.site-header-wrapper.is-scrolled .nav-item-link[data-active],
.site-navbar-floating.is-scrolled .nav-item-link.active,
.site-navbar-floating.is-scrolled .nav-item-link[data-active],
.is-scrolled .nav-item-link.active,
.is-scrolled .nav-item-link[data-active] {
  color: #FFFFFF !important;
  font-weight: 600;
}

.site-header-wrapper.is-scrolled .nav-item-link .dropdown-chevron,
.site-navbar-floating.is-scrolled .nav-item-link .dropdown-chevron,
.is-scrolled .nav-item-link .dropdown-chevron {
  color: #FFFFFF !important;
}

.site-header-wrapper.is-scrolled .nav-dropdown-wrapper:hover .dropdown-chevron,
.site-header-wrapper.is-scrolled .nav-dropdown-wrapper.is-open .dropdown-chevron,
.site-navbar-floating.is-scrolled .nav-dropdown-wrapper:hover .dropdown-chevron,
.is-scrolled .nav-dropdown-wrapper:hover .dropdown-chevron {
  color: #FBBF24 !important;
}

/* ===================================================
   SERVICES DROPDOWN (ANCHORED TO SERVICES TRIGGER)
   =================================================== */
.nav-dropdown-wrapper {
  position: relative !important;
  display: inline-flex;
  align-items: center;
}

.nav-dropdown-menu {
  position: absolute;
  top: calc(100% + 14px);
  left: 50%;
  transform: translateX(-50%) translateY(8px);
  width: 700px;
  max-width: min(720px, calc(100vw - 32px));
  background: rgba(255, 255, 255, 0.98) !important;
  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);
  border: 1px solid rgba(0, 0, 0, 0.08) !important;
  border-radius: 20px;
  box-shadow: 0 20px 45px -10px rgba(0, 0, 0, 0.16), 0 8px 16px -4px rgba(0, 0, 0, 0.06) !important;
  padding: 1.25rem;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.2s cubic-bezier(0.16, 1, 0.3, 1),
              transform 0.2s cubic-bezier(0.16, 1, 0.3, 1),
              visibility 0.2s;
  z-index: 1000;
}

/* Hover bridge between trigger and panel */
.nav-dropdown-menu::before {
  content: '';
  position: absolute;
  top: -16px;
  left: 0;
  right: 0;
  height: 16px;
}

.nav-dropdown-wrapper:hover .nav-dropdown-menu,
.nav-dropdown-wrapper:focus-within .nav-dropdown-menu,
.nav-dropdown-wrapper.is-open .nav-dropdown-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateX(-50%) translateY(0);
}

.dropdown-header {
  padding: 0 0.5rem 0.65rem 0.5rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
  margin-bottom: 0.75rem;
}

.dropdown-eyebrow {
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: #9ca3af;
  text-transform: uppercase;
}

.nav-dropdown-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.45rem 0.75rem;
}

/* Service Card Item */
.nav-service-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.65rem 0.75rem;
  border-radius: 10px;
  text-decoration: none;
  background: transparent;
  border: 1px solid transparent;
  transition: all 0.18s ease;
}

.nav-service-card:hover,
.nav-service-card:focus-visible {
  background: #fdf6f6 !important;
  border-color: rgba(145, 17, 22, 0.1) !important;
  transform: translateY(-1px);
}

.service-card-meta {
  display: flex;
  align-items: flex-start;
  gap: 0.65rem;
  min-width: 0;
}

/* Minimalist Technical Badge */
.service-tech-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-mono, monospace);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  padding: 0.15rem 0.35rem;
  min-width: 28px;
  height: 20px;
  border-radius: 4px;
  background: #f3f4f6 !important;
  color: #4b5563 !important;
  border: 1px solid #e5e7eb !important;
  flex-shrink: 0;
  margin-top: 1px;
  transition: all 0.18s ease;
}

.nav-service-card:hover .service-tech-badge {
  background: #911116 !important;
  color: #ffffff !important;
  border-color: #911116 !important;
}

.service-card-text {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.service-card-title {
  font-size: 0.875rem;
  font-weight: 600;
  color: #111827 !important;
  line-height: 1.25;
  transition: color 0.18s ease;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.nav-service-card:hover .service-card-title {
  color: #911116 !important;
}

.service-card-desc {
  font-size: 0.72rem;
  color: #6b7280 !important;
  line-height: 1.3;
  margin-top: 2px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Service Card Arrow */
.service-arrow {
  flex-shrink: 0;
  opacity: 0;
  transform: translateX(-4px);
  color: #911116 !important;
  transition: all 0.18s ease;
  margin-left: 0.25rem;
}

.nav-service-card:hover .service-arrow {
  opacity: 1;
  transform: translateX(0);
}

/* Dropdown Bottom Bar */
.dropdown-bottom-bar {
  margin-top: 0.75rem;
  padding-top: 0.65rem;
  border-top: 1px solid rgba(0, 0, 0, 0.06);
}

.dropdown-footer-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 0.75rem;
  border-radius: 8px;
  font-size: 0.8125rem;
  font-weight: 600;
  color: #911116 !important;
  background: rgba(145, 17, 22, 0.04);
  text-decoration: none;
  transition: all 0.18s ease;
}

.dropdown-footer-cta:hover {
  background: rgba(145, 17, 22, 0.08);
  transform: translateX(2px);
}

.footer-cta-arrow {
  transition: transform 0.18s ease;
}

.dropdown-footer-cta:hover .footer-cta-arrow {
  transform: translateX(3px);
}

/* ===================================================
   GET A QUOTE BUTTON (HEADER)
   =================================================== */
.navbar-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.btn-quote-header {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.5rem 1.15rem;
  background: #911116;
  color: #ffffff !important;
  font-family: var(--font-display, inherit);
  font-size: 0.875rem;
  font-weight: 600;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(145, 17, 22, 0.22);
  text-decoration: none;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  white-space: nowrap;
}

.btn-quote-header:hover {
  background: #7a0e12;
  box-shadow: 0 4px 16px rgba(145, 17, 22, 0.35);
  transform: translateY(-1px);
}

.btn-quote-header .btn-arrow {
  transition: transform 0.2s ease;
}

.btn-quote-header:hover .btn-arrow {
  transform: translateX(3px);
}

/* ===================================================
   MOBILE NAVIGATION / DESKTOP BREAKPOINT RULES
   =================================================== */
#mobile-menu-btn,
.mobile-toggle-btn {
  display: none !important;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 8px;
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  color: #1f2937;
  cursor: pointer;
  transition: all 0.18s ease;
}

#mobile-menu-btn:hover,
.mobile-toggle-btn:hover {
  background: #f3f4f6;
  color: #911116;
}

@media (max-width: 1023px) {
  .navbar-links {
    display: none !important;
  }
  #mobile-menu-btn,
  .mobile-toggle-btn {
    display: inline-flex !important;
  }
}

.site-header-wrapper.is-scrolled .mobile-toggle-btn {
  background: rgba(255, 255, 255, 0.12) !important;
  border-color: rgba(255, 255, 255, 0.2) !important;
  color: #FFFFFF !important;
}

.site-header-wrapper.is-scrolled .mobile-toggle-btn:hover {
  background: rgba(255, 255, 255, 0.22) !important;
  color: #FBBF24 !important;
}

/* Mobile Drawer Panel */
#mobile-menu-dialog {
  pointer-events: auto;
}

.mobile-drawer-panel {
  position: fixed;
  inset-block: 0;
  right: 0;
  width: 100%;
  max-width: 320px;
  background: #ffffff;
  padding: 1.5rem;
  box-shadow: -10px 0 30px rgba(0, 0, 0, 0.15);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  overflow-y: auto;
  z-index: 1001;
  pointer-events: auto;
}

.mobile-drawer-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 1rem;
  border-bottom: 1px solid #f3f4f6;
}

.mobile-drawer-header img {
  height: 52px;
  width: auto;
  object-fit: contain;
}

.mobile-close-btn {
  padding: 0.4rem;
  border-radius: 6px;
  color: #6b7280;
  cursor: pointer;
  transition: color 0.15s ease;
}

.mobile-close-btn:hover {
  color: #111827;
  background: #f3f4f6;
}

.mobile-drawer-nav {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  padding: 1.25rem 0;
}

.mobile-nav-link {
  display: block;
  padding: 0.6rem 0.5rem;
  font-family: var(--font-display, inherit);
  font-size: 0.95rem;
  font-weight: 600;
  color: #374151;
  text-decoration: none;
  border-radius: 6px;
  transition: all 0.15s ease;
}

.mobile-nav-link:hover,
.mobile-nav-link.active {
  color: #911116;
  background: #fdf2f2;
}

.mobile-accordion-group {
  margin: 0.25rem 0;
}

.mobile-accordion-trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.6rem 0.5rem;
  font-family: var(--font-display, inherit);
  font-size: 0.95rem;
  font-weight: 600;
  color: #374151;
}

.mobile-badge {
  font-size: 0.7rem;
  font-weight: 600;
  padding: 0.15rem 0.4rem;
  border-radius: 4px;
  background: #f3f4f6;
  color: #6b7280;
}

.mobile-subnav-list {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding-left: 0.75rem;
  margin-top: 0.25rem;
  border-left: 2px solid rgba(145, 17, 22, 0.15);
}

.mobile-subnav-item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.45rem 0.5rem;
  font-size: 0.85rem;
  color: #4b5563;
  text-decoration: none;
  border-radius: 4px;
  transition: all 0.15s ease;
}

.mobile-subnav-dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #9ca3af;
  transition: background 0.15s ease;
}

.mobile-subnav-item:hover {
  color: #911116;
  background: #fdf2f2;
}

.mobile-subnav-item:hover .mobile-subnav-dot {
  background: #911116;
}

.mobile-drawer-footer {
  padding-top: 1rem;
  border-top: 1px solid #f3f4f6;
}

/* ===================================================
   REDESIGNED ARCHITECTURAL FOOTER STYLING
   =================================================== */
.site-footer {
  background: #ffffff;
  border-top: 1px solid rgba(0, 0, 0, 0.08);
  color: #1f2937;
  font-size: 0.875rem;
  position: relative;
  overflow: hidden;
}

.footer-container {
  max-width: 1240px;
  margin: 0 auto;
  padding-inline: 1.5rem;
}

/* Footer CTA Band */
.footer-cta-band {
  padding: 3.5rem 0 2rem 0;
}

.footer-cta-card {
  background: linear-gradient(135deg, #fdf8f8 0%, #ffffff 50%, #fbfbfc 100%);
  border: 1px solid rgba(145, 17, 22, 0.12);
  border-radius: 18px;
  padding: 2.25rem 2.5rem;
  box-shadow: 0 10px 30px -5px rgba(0, 0, 0, 0.03), 0 2px 8px rgba(145, 17, 22, 0.03);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1.75rem;
  position: relative;
  overflow: hidden;
}

@media (min-width: 900px) {
  .footer-cta-card {
    flex-direction: row;
    align-items: center;
    padding: 2.5rem 3rem;
  }
}

.footer-cta-text {
  max-width: 680px;
}

.footer-cta-eyebrow {
  display: inline-block;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: #911116;
  text-transform: uppercase;
  margin-bottom: 0.5rem;
}

.footer-cta-title {
  font-family: var(--font-display, inherit);
  font-size: clamp(1.4rem, 2.5vw, 1.85rem);
  font-weight: 700;
  color: #111827;
  line-height: 1.25;
  letter-spacing: -0.02em;
}

.footer-cta-sub {
  font-size: 0.925rem;
  color: #6b7280;
  line-height: 1.5;
  margin-top: 0.5rem;
}

.footer-primary-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.75rem 1.6rem;
  background: #911116;
  color: #ffffff !important;
  font-family: var(--font-display, inherit);
  font-size: 0.925rem;
  font-weight: 600;
  border-radius: 9px;
  box-shadow: 0 4px 14px rgba(145, 17, 22, 0.28);
  text-decoration: none;
  white-space: nowrap;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  flex-shrink: 0;
}

.footer-primary-btn:hover {
  background: #7a0e12;
  box-shadow: 0 6px 20px rgba(145, 17, 22, 0.38);
  transform: translateY(-2px);
}

.footer-primary-btn .btn-arrow {
  transition: transform 0.2s ease;
}

.footer-primary-btn:hover .btn-arrow {
  transform: translateX(4px);
}

/* Main 4-Column Grid */
.footer-main-section {
  padding: 2.5rem 0 3.5rem 0;
}

.footer-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.5rem 2rem;
}

@media (min-width: 640px) {
  .footer-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .footer-grid {
    grid-template-columns: 1.4fr 1fr 1fr 1.2fr;
    gap: 3rem;
  }
}

.footer-col {
  display: flex;
  flex-direction: column;
}

.footer-brand-logo {
  height: 72px;
  width: auto;
  object-fit: contain;
}

@media (max-width: 640px) {
  .footer-brand-logo {
    height: 58px;
  }
}

.footer-tagline {
  font-family: var(--font-display, inherit);
  font-size: 0.925rem;
  font-weight: 600;
  color: #911116;
  margin-top: 0.85rem;
}

.footer-brand-desc {
  font-size: 0.85rem;
  color: #6b7280;
  line-height: 1.6;
  margin-top: 0.5rem;
  max-width: 320px;
}

.footer-tech-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin-top: 1rem;
}

.footer-chip {
  font-size: 0.7rem;
  font-weight: 600;
  padding: 0.2rem 0.5rem;
  border-radius: 4px;
  background: #f3f4f6;
  color: #4b5563;
  border: 1px solid #e5e7eb;
}

/* Headings */
.footer-heading {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: #111827;
  text-transform: uppercase;
  margin-bottom: 1.15rem;
}

/* Navigation Link List */
.footer-nav-list {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
}

.footer-nav-link {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  font-size: 0.875rem;
  color: #4b5563;
  text-decoration: none;
  transition: all 0.18s ease;
  max-width: 240px;
}

.footer-nav-link .link-arrow {
  opacity: 0;
  transform: translateX(-4px);
  color: #911116;
  transition: all 0.18s ease;
  font-size: 0.8rem;
}

.footer-nav-link:hover {
  color: #911116;
  transform: translateX(2px);
}

.footer-nav-link:hover .link-arrow {
  opacity: 1;
  transform: translateX(0);
}

/* Contact Entry */
.footer-contact-items {
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
}

.contact-entry-label {
  display: block;
  font-size: 0.72rem;
  font-weight: 600;
  color: #9ca3af;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 0.25rem;
}

.contact-entry-value {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: #1f2937;
  text-decoration: none;
  transition: color 0.18s ease;
}

.contact-entry-value:hover {
  color: #911116;
}

.contact-icon {
  color: #911116;
  flex-shrink: 0;
}

.contact-entry-actions {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.35rem;
}

.contact-whatsapp-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  font-size: 0.75rem;
  font-weight: 600;
  color: #15803d;
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
  padding: 0.15rem 0.5rem;
  border-radius: 4px;
  text-decoration: none;
  transition: all 0.18s ease;
}

.contact-whatsapp-badge:hover {
  background: #dcfce7;
  color: #166534;
  transform: translateX(2px);
}

.contact-address-text {
  font-style: normal;
  font-size: 0.85rem;
  color: #4b5563;
  line-height: 1.5;
}

/* Footer Bottom Bar */
.footer-bottom-bar {
  border-top: 1px solid rgba(0, 0, 0, 0.08);
  padding: 1.5rem 0;
  background: #fafafa;
}

.footer-bottom-flex {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  text-align: center;
}

@media (min-width: 768px) {
  .footer-bottom-flex {
    flex-direction: row;
    text-align: left;
  }
}

.copyright-text {
  font-size: 0.8125rem;
  color: #6b7280;
}

.footer-social-wrapper {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.footer-social-link {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.8125rem;
  font-weight: 600;
  color: #4b5563;
  text-decoration: none;
  transition: color 0.18s ease;
}

.footer-social-link:hover {
  color: #dc2626;
}

.social-icon {
  color: #dc2626;
}

.social-arrow {
  font-size: 0.8rem;
  transition: transform 0.18s ease;
}

.footer-social-link:hover .social-arrow {
  transform: translateX(3px);
}

.attribution-text {
  font-size: 0.78rem;
  color: #9ca3af;
}

.attr-link {
  color: #6b7280;
  font-weight: 500;
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: color 0.18s ease;
}

.attr-link:hover {
  color: #911116;
}

/* Notification & Feedback Modal */
.quote-feedback-modal {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(4px);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  padding: 1rem;
}
.quote-feedback-content {
  background: #ffffff;
  border-radius: 1.25rem;
  padding: 2rem;
  max-width: 500px;
  width: 100%;
  box-shadow: 0 20px 40px rgba(0,0,0,0.2);
  text-align: center;
}

/* ===================================================
   SERVICE PAGES ARCHITECTURAL DESIGN SYSTEM
   =================================================== */

.svc-page-main {
  background: #ffffff;
  color: #1e293b;
  overflow-x: hidden;
  width: 100%;
}

/* Master Service & Page Container System (Strict 1200px Global Grid) */
.service-container,
.svc-container,
.svc-hero-container,
.page-container,
.contact-container,
.container,
.footer-container {
  width: min(1200px, calc(100% - 48px));
  max-width: 1200px;
  margin-inline: auto;
  box-sizing: border-box;
}

/* 1. Hero Section */
.svc-hero {
  background: linear-gradient(180deg, #f8f9fa 0%, #ffffff 100%);
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
  padding: 4.5rem 0;
  position: relative;
  overflow: hidden;
}

@media (max-width: 1024px) {
  .svc-hero {
    padding: 3.5rem 0;
  }
}

@media (max-width: 640px) {
  .svc-hero {
    padding: 2.75rem 0 3rem 0;
  }
}

.svc-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(0, 0, 0, 0.04) 1px, transparent 1px);
  background-size: 24px 24px;
  pointer-events: none;
  opacity: 0.7;
}

.svc-hero-container {
  position: relative;
  z-index: 2;
}

.svc-hero-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.5rem;
  align-items: center;
}

@media (min-width: 1024px) {
  .svc-hero-grid {
    grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr);
    gap: 3.5rem;
  }
}

.svc-hero-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.svc-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #911116;
  background: rgba(145, 17, 22, 0.06);
  border: 1px solid rgba(145, 17, 22, 0.12);
  padding: 0.3rem 0.75rem;
  border-radius: 100px;
  margin-bottom: 1.25rem;
}

.svc-eyebrow-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #f59e0b;
}

.svc-hero-title {
  font-family: var(--font-display, inherit);
  font-size: clamp(2.25rem, 4.5vw, 3.85rem);
  font-weight: 750;
  line-height: 1.14;
  letter-spacing: -0.03em;
  color: #0f172a;
}

.svc-hero-title .svc-highlight {
  color: #911116;
}

.svc-hero-desc {
  font-size: clamp(0.95rem, 1.2vw, 1.12rem);
  line-height: 1.65;
  color: #475569;
  margin-top: 1.15rem;
  max-width: 620px;
}

.svc-hero-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem;
  margin-top: 2rem;
}

.svc-btn-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.85rem 1.75rem;
  background: #911116;
  color: #ffffff !important;
  font-family: var(--font-display, inherit);
  font-size: 0.925rem;
  font-weight: 600;
  border-radius: 9px;
  box-shadow: 0 4px 14px rgba(145, 17, 22, 0.28);
  text-decoration: none;
  transition: all 0.2s ease;
  white-space: nowrap;
}

.svc-btn-primary:hover {
  background: #7a0e12;
  box-shadow: 0 6px 20px rgba(145, 17, 22, 0.38);
  transform: translateY(-2px);
}

.svc-btn-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.85rem 1.6rem;
  background: #ffffff;
  color: #0f172a !important;
  font-family: var(--font-display, inherit);
  font-size: 0.925rem;
  font-weight: 600;
  border: 1px solid #cbd5e1;
  border-radius: 9px;
  text-decoration: none;
  transition: all 0.2s ease;
  white-space: nowrap;
}

.svc-btn-secondary:hover {
  background: #f8fafc;
  border-color: #94a3b8;
  transform: translateY(-2px);
}

.svc-hero-badge-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  margin-top: 2rem;
  padding-top: 1.5rem;
  border-top: 1px solid rgba(0, 0, 0, 0.08);
}

.svc-spec-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.78rem;
  font-weight: 600;
  color: #334155;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  padding: 0.35rem 0.75rem;
  border-radius: 6px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.03);
}

.svc-spec-pill svg {
  color: #911116;
}

/* Hero Image Container */
.svc-hero-image-wrapper {
  position: relative;
  width: 100%;
}

.svc-hero-image-frame {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 3;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid rgba(0, 0, 0, 0.08);
  box-shadow: 0 20px 45px -12px rgba(0, 0, 0, 0.1), 0 4px 12px rgba(0, 0, 0, 0.03);
  background: #e2e8f0;
}

.svc-hero-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.svc-hero-image-frame:hover .svc-hero-img {
  transform: scale(1.03);
}

.svc-image-tag-pill {
  position: absolute;
  bottom: 1.25rem;
  left: 1.25rem;
  background: rgba(15, 23, 42, 0.88);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  color: #ffffff;
  font-family: var(--font-mono, monospace);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  padding: 0.4rem 0.85rem;
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  z-index: 5;
}

.svc-image-tag-pill .tag-indicator {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #22c55e;
}

/* 2. Generic Content Section */
.svc-section {
  padding: 5rem 0;
  position: relative;
}

@media (max-width: 1024px) {
  .svc-section {
    padding: 3.75rem 0;
  }
}

@media (max-width: 640px) {
  .svc-section {
    padding: 3rem 0;
  }
}

.svc-section-alt {
  background: #f8fafc;
  border-top: 1px solid #f1f5f9;
  border-bottom: 1px solid #f1f5f9;
}

.svc-section-header {
  margin-bottom: 2.75rem;
}

.svc-section-header.text-center {
  text-align: center;
  max-width: 780px;
  margin-left: auto;
  margin-right: auto;
}

.svc-section-num {
  font-family: var(--font-mono, monospace);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  color: #911116;
  text-transform: uppercase;
  margin-bottom: 0.5rem;
  display: block;
}

.svc-section-title {
  font-family: var(--font-display, inherit);
  font-size: clamp(1.75rem, 3.2vw, 2.45rem);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: #0f172a;
}

.svc-section-subtitle,
.svc-section-sub {
  font-size: clamp(0.95rem, 1.1vw, 1.05rem);
  line-height: 1.6;
  color: #64748b;
  margin-top: 0.65rem;
  max-width: 680px;
}

/* 3. Technology Selector Cards (Hub Page) */
.svc-tech-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.75rem;
}

@media (min-width: 768px) {
  .svc-tech-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.svc-tech-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.04);
  display: flex;
  flex-direction: column;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  text-decoration: none;
  color: inherit;
}

.svc-tech-card:hover {
  border-color: rgba(145, 17, 22, 0.3);
  box-shadow: 0 20px 35px -8px rgba(145, 17, 22, 0.08), 0 4px 10px rgba(0, 0, 0, 0.03);
  transform: translateY(-4px);
}

.svc-tech-card-image {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #f1f5f9;
}

.svc-tech-card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.svc-tech-card:hover .svc-tech-card-img {
  transform: scale(1.05);
}

.svc-tech-card-badge {
  position: absolute;
  top: 1rem;
  left: 1rem;
  font-family: var(--font-mono, monospace);
  font-size: 0.72rem;
  font-weight: 700;
  color: #ffffff;
  background: #911116;
  padding: 0.25rem 0.55rem;
  border-radius: 4px;
}

.svc-tech-card-body {
  padding: 1.75rem;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.svc-tech-card-title {
  font-family: var(--font-display, inherit);
  font-size: 1.35rem;
  font-weight: 700;
  color: #0f172a;
}

.svc-tech-card-desc {
  font-size: 0.9rem;
  color: #64748b;
  line-height: 1.55;
  margin-top: 0.6rem;
  flex: 1;
}

.svc-tech-card-link {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: #911116;
  margin-top: 1.25rem;
  transition: gap 0.2s ease;
}

.svc-tech-card:hover .svc-tech-card-link {
  gap: 0.65rem;
}

/* 4. Workflow Timeline / Process Progression */
.svc-timeline-track {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
  position: relative;
}

@media (min-width: 768px) and (max-width: 1023px) {
  .svc-timeline-track {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .svc-timeline-track {
    grid-template-columns: repeat(5, 1fr);
    gap: 1rem;
  }
}

.svc-timeline-step,
.svc-step-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  padding: 1.5rem 1.25rem;
  position: relative;
  display: flex;
  flex-direction: column;
  transition: all 0.2s ease;
}

.svc-timeline-step:hover,
.svc-step-card:hover {
  border-color: #cbd5e1;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.05);
  transform: translateY(-2px);
}

.svc-step-num {
  font-family: var(--font-mono, monospace);
  font-size: 0.78rem;
  font-weight: 700;
  color: #911116;
  background: rgba(145, 17, 22, 0.08);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  margin-bottom: 1rem;
}

.svc-step-title {
  font-family: var(--font-display, inherit);
  font-size: 1.05rem;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.3;
}

.svc-step-desc {
  font-size: 0.84rem;
  color: #64748b;
  line-height: 1.5;
  margin-top: 0.45rem;
}

/* 5. Key Advantages 4-Column Cards */
.svc-cards-grid-4 {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}

@media (min-width: 640px) {
  .svc-cards-grid-4 {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .svc-cards-grid-4 {
    grid-template-columns: repeat(4, 1fr);
  }
}

.svc-card-feat,
.svc-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  padding: 1.75rem 1.5rem;
  box-shadow: 0 4px 15px -2px rgba(0, 0, 0, 0.03);
  transition: all 0.22s ease;
  display: flex;
  flex-direction: column;
}

.svc-card-feat:hover,
.svc-card:hover {
  border-color: #cbd5e1;
  box-shadow: 0 12px 28px -6px rgba(0, 0, 0, 0.07);
  transform: translateY(-3px);
}

.svc-feat-icon {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background: rgba(145, 17, 22, 0.08);
  color: #911116;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.25rem;
}

.svc-card-tag {
  font-family: var(--font-mono, monospace);
  font-size: 0.72rem;
  font-weight: 700;
  color: #911116;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 0.75rem;
  display: inline-block;
}

.svc-feat-title,
.svc-card-title {
  font-family: var(--font-display, inherit);
  font-size: 1.15rem;
  font-weight: 700;
  color: #0f172a;
}

.svc-feat-desc,
.svc-card-body {
  font-size: 0.875rem;
  color: #64748b;
  line-height: 1.55;
  margin-top: 0.5rem;
  padding: 0;
}

.svc-spec-bar,
.svc-hero-badge-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  margin-top: 1.75rem;
  padding-top: 1.25rem;
  border-top: 1px solid rgba(0, 0, 0, 0.08);
}

.svc-cta-group,
.svc-hero-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem;
  margin-top: 2rem;
}

.svc-hero-media {
  position: relative;
  width: 100%;
}

.svc-related-inner {
  display: flex;
  flex-direction: column;
}

/* 6. Material Cards Grid */
.svc-materials-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}

@media (min-width: 640px) {
  .svc-materials-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .svc-materials-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}

.svc-mat-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  padding: 1.75rem;
  display: flex;
  flex-direction: column;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.02);
  transition: all 0.2s ease;
}

.svc-mat-card:hover {
  border-color: #911116;
  box-shadow: 0 10px 24px -4px rgba(145, 17, 22, 0.08);
  transform: translateY(-2px);
}

.svc-mat-code,
.svc-mat-badge {
  font-family: var(--font-mono, monospace);
  font-size: 0.72rem;
  font-weight: 700;
  color: #911116;
  letter-spacing: 0.05em;
  margin-bottom: 0.4rem;
  display: inline-block;
}

.svc-mat-name {
  font-family: var(--font-display, inherit);
  font-size: 1.25rem;
  font-weight: 700;
  color: #0f172a;
}

.svc-mat-desc {
  font-size: 0.85rem;
  color: #64748b;
  line-height: 1.5;
  margin-top: 0.5rem;
  flex: 1;
}

.svc-mat-best,
.svc-mat-meta {
  margin-top: 1.25rem;
  padding-top: 0.85rem;
  border-top: 1px dashed #e2e8f0;
  font-size: 0.78rem;
  color: #475569;
}

.svc-mat-best strong,
.svc-mat-meta-item strong {
  color: #0f172a;
  display: block;
  margin-bottom: 0.2rem;
}

/* 7. Visual Application Gallery / Showcase */
.svc-app-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.75rem;
}

@media (min-width: 640px) {
  .svc-app-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .svc-app-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.svc-app-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: 0 4px 18px -2px rgba(0, 0, 0, 0.04);
  transition: all 0.22s ease;
}

.svc-app-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 32px -6px rgba(0, 0, 0, 0.08);
}

.svc-app-img-frame,
.svc-app-media {
  width: 100%;
  aspect-ratio: 16 / 11;
  overflow: hidden;
  background: #f1f5f9;
}

.svc-app-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.svc-app-card:hover .svc-app-img {
  transform: scale(1.04);
}

.svc-app-body,
.svc-app-content {
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
}

.svc-app-tag {
  font-family: var(--font-mono, monospace);
  font-size: 0.7rem;
  font-weight: 700;
  color: #911116;
  letter-spacing: 0.06em;
  margin-bottom: 0.35rem;
  display: block;
}

.svc-app-title {
  font-family: var(--font-display, inherit);
  font-size: 1.15rem;
  font-weight: 700;
  color: #0f172a;
}

.svc-app-desc {
  font-size: 0.85rem;
  color: #64748b;
  line-height: 1.5;
  margin-top: 0.45rem;
}

/* 8. Premium Near-Black Section Closing CTA */
.svc-dark-cta-section {
  background: #0a0a0a;
  color: #ffffff;
  padding: 5rem 0;
  position: relative;
  overflow: hidden;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.svc-dark-cta-section::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px);
  background-size: 28px 28px;
  pointer-events: none;
}

.svc-dark-cta-inner {
  max-width: 860px;
  margin: 0 auto;
  text-align: center;
  position: relative;
  z-index: 2;
}

.svc-dark-cta-eyebrow {
  font-family: var(--font-mono, monospace);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #f59e0b;
  margin-bottom: 0.85rem;
  display: inline-block;
}

.svc-dark-cta-title {
  font-family: var(--font-display, inherit);
  font-size: clamp(1.85rem, 3.8vw, 3rem);
  font-weight: 750;
  line-height: 1.18;
  letter-spacing: -0.02em;
  color: #ffffff;
}

.svc-dark-cta-desc {
  font-size: 1.05rem;
  line-height: 1.65;
  color: #94a3b8;
  margin-top: 1.15rem;
  max-width: 660px;
  margin-left: auto;
  margin-right: auto;
}

.svc-dark-cta-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  margin-top: 2.25rem;
}

.svc-dark-cta-phone {
  margin-top: 1.75rem;
  font-size: 0.85rem;
  color: #64748b;
}

.svc-dark-cta-phone a {
  color: #e2e8f0;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.svc-dark-cta-phone a:hover {
  color: #f59e0b;
}

/* 9. Related Services Strip */
.svc-related-bar {
  background: #f8fafc;
  border-top: 1px solid #e2e8f0;
  padding: 3rem 0;
}

.svc-related-header,
.svc-related-label {
  display: block;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #64748b;
  margin-bottom: 1.25rem;
}

.svc-related-title {
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #64748b;
}

.svc-related-links {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.85rem;
}

@media (min-width: 640px) {
  .svc-related-links {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .svc-related-links {
    grid-template-columns: repeat(5, 1fr);
  }
}

.svc-related-item,
.svc-related-link {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  padding: 0.9rem 1.15rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  text-decoration: none;
  color: #0f172a;
  font-size: 0.875rem;
  font-weight: 600;
  transition: all 0.18s ease;
}

.svc-related-item:hover,
.svc-related-link:hover {
  border-color: #911116;
  color: #911116;
  transform: translateX(2px);
}

.svc-related-item svg,
.svc-related-link svg {
  color: #911116;
  opacity: 0.6;
  transition: transform 0.18s ease, opacity 0.18s ease;
}

.svc-related-item:hover svg,
.svc-related-link:hover svg {
  opacity: 1;
  transform: translateX(3px);
}

/* 10. 404 Creative Lost in the Layers */
.svc-404-hero {
  min-height: 70vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(180deg, #f8f9fa 0%, #ffffff 100%);
  padding: 5rem 1.5rem;
  text-align: center;
  position: relative;
}

.svc-404-box {
  max-width: 640px;
  margin: 0 auto;
}

.svc-404-tag {
  font-family: var(--font-mono, monospace);
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  color: #911116;
  background: rgba(145, 17, 22, 0.06);
  border: 1px solid rgba(145, 17, 22, 0.15);
  padding: 0.35rem 0.9rem;
  border-radius: 100px;
  display: inline-block;
  margin-bottom: 1.5rem;
}

.svc-404-code {
  font-family: var(--font-display, inherit);
  font-size: clamp(4.5rem, 10vw, 8rem);
  font-weight: 800;
  line-height: 1;
  color: #0f172a;
  letter-spacing: -0.04em;
}

.svc-404-title {
  font-family: var(--font-display, inherit);
  font-size: clamp(1.65rem, 3vw, 2.25rem);
  font-weight: 700;
  color: #0f172a;
  margin-top: 1rem;
}

.svc-404-desc {
  font-size: 1.05rem;
  color: #64748b;
  line-height: 1.6;
  margin-top: 1rem;
}

.svc-404-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: center;
  margin-top: 2.25rem;
}

/* ===================================================
   CONTACT PAGE ARCHITECTURAL DESIGN SYSTEM
   =================================================== */

.contact-hero {
  background: linear-gradient(180deg, #f8f9fa 0%, #ffffff 100%);
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
  padding: 4.5rem 0 5rem 0;
  position: relative;
  overflow: hidden;
}

@media (max-width: 1024px) {
  .contact-hero {
    padding: 3.5rem 0 4rem 0;
  }
}

@media (max-width: 640px) {
  .contact-hero {
    padding: 2.5rem 0 3rem 0;
  }
}

.contact-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(0, 0, 0, 0.04) 1px, transparent 1px);
  background-size: 24px 24px;
  pointer-events: none;
  opacity: 0.7;
}

.contact-hero-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem 2.5rem;
  align-items: flex-start;
  position: relative;
  z-index: 2;
}

@media (min-width: 1024px) {
  .contact-hero-grid {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
    gap: 3.5rem;
  }
}

.contact-hero-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.contact-visual-card {
  width: 100%;
  margin-top: 2.25rem;
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid rgba(0, 0, 0, 0.08);
  box-shadow: 0 16px 36px -10px rgba(0, 0, 0, 0.08);
  background: #f1f5f9;
}

.contact-visual-img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  display: block;
}

.contact-visual-tag {
  position: absolute;
  bottom: 1rem;
  left: 1rem;
  background: rgba(15, 23, 42, 0.88);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  color: #ffffff;
  font-family: var(--font-mono, monospace);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  padding: 0.35rem 0.75rem;
  border-radius: 6px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
}

.contact-visual-tag .tag-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #22c55e;
}

/* Premium Quote Form Card */
.contact-quote-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 20px;
  padding: 2.5rem 2.25rem;
  box-shadow: 0 20px 45px -10px rgba(0, 0, 0, 0.07), 0 4px 12px rgba(0, 0, 0, 0.02);
  position: relative;
  z-index: 5;
}

@media (max-width: 640px) {
  .contact-quote-card {
    padding: 1.75rem 1.35rem;
    border-radius: 16px;
  }
}

.contact-form-header {
  margin-bottom: 1.75rem;
  border-bottom: 1px solid #f1f5f9;
  padding-bottom: 1.25rem;
}

.contact-form-eyebrow {
  font-family: var(--font-mono, monospace);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: #911116;
  text-transform: uppercase;
  margin-bottom: 0.35rem;
  display: block;
}

.contact-form-title {
  font-family: var(--font-display, inherit);
  font-size: 1.55rem;
  font-weight: 750;
  color: #0f172a;
  letter-spacing: -0.02em;
}

.contact-form-sub {
  font-size: 0.86rem;
  color: #64748b;
  line-height: 1.5;
  margin-top: 0.35rem;
}

.contact-form {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}

.form-row-2 {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.2rem;
}

@media (min-width: 640px) {
  .form-row-2 {
    grid-template-columns: 1fr 1fr;
  }
}

.form-group {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}

.form-label {
  font-size: 0.82rem;
  font-weight: 600;
  color: #334155;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.form-label .req {
  color: #911116;
  font-weight: 700;
}

.form-input,
.form-select,
.form-textarea {
  width: 100%;
  border: 1px solid #cbd5e1;
  border-radius: 9px;
  padding: 0.75rem 1rem;
  font-family: inherit;
  font-size: 0.92rem;
  color: #0f172a;
  background: #ffffff;
  transition: all 0.18s ease;
  box-sizing: border-box;
}

.form-input:focus,
.form-select:focus,
.form-textarea:focus {
  outline: none;
  border-color: #911116;
  box-shadow: 0 0 0 3px rgba(145, 17, 22, 0.12);
}

.form-input::placeholder,
.form-textarea::placeholder {
  color: #94a3b8;
  font-weight: 400;
}

.form-textarea {
  min-height: 110px;
  resize: vertical;
  line-height: 1.5;
}

/* File Dropzone Component */
.file-dropzone-container {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.file-dropzone {
  position: relative;
  border: 1.5px dashed #cbd5e1;
  background: #f8fafc;
  border-radius: 12px;
  padding: 1.35rem 1rem;
  text-align: center;
  cursor: pointer;
  transition: all 0.2s ease;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
}

.file-dropzone:hover,
.file-dropzone.drag-over {
  border-color: #911116;
  background: rgba(145, 17, 22, 0.02);
}

.file-dropzone-input {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
  z-index: 10;
}

.file-dropzone-icon {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  background: rgba(145, 17, 22, 0.08);
  color: #911116;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0.25rem;
}

.file-dropzone-text {
  font-size: 0.88rem;
  font-weight: 600;
  color: #0f172a;
}

.file-dropzone-formats {
  font-family: var(--font-mono, monospace);
  font-size: 0.72rem;
  font-weight: 600;
  color: #64748b;
  letter-spacing: 0.04em;
}

.file-dropzone-limit {
  font-size: 0.72rem;
  color: #94a3b8;
}

.file-selected-badge {
  display: none;
  align-items: center;
  justify-content: space-between;
  background: #f1f5f9;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  padding: 0.6rem 0.85rem;
  font-size: 0.82rem;
  color: #0f172a;
  margin-top: 0.4rem;
}

.file-selected-badge.is-visible {
  display: flex;
}

.file-name-truncate {
  max-width: 260px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-weight: 600;
}

.file-size-tag {
  font-family: var(--font-mono, monospace);
  font-size: 0.72rem;
  color: #64748b;
}

/* Direct Channels 3-Card Grid */
.contact-channels-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}

@media (min-width: 768px) {
  .contact-channels-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.contact-channel-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  padding: 2rem 1.75rem;
  box-shadow: 0 4px 15px -2px rgba(0, 0, 0, 0.03);
  display: flex;
  flex-direction: column;
  transition: all 0.22s ease;
}

.contact-channel-card:hover {
  border-color: #cbd5e1;
  box-shadow: 0 12px 28px -6px rgba(0, 0, 0, 0.06);
  transform: translateY(-3px);
}

.channel-icon {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background: rgba(145, 17, 22, 0.08);
  color: #911116;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.25rem;
}

.channel-tag {
  font-family: var(--font-mono, monospace);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: #911116;
  text-transform: uppercase;
  margin-bottom: 0.35rem;
}

.channel-title {
  font-family: var(--font-display, inherit);
  font-size: 1.25rem;
  font-weight: 700;
  color: #0f172a;
}

.channel-desc {
  font-size: 0.86rem;
  color: #64748b;
  line-height: 1.55;
  margin-top: 0.5rem;
  flex: 1;
}

.channel-links {
  margin-top: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}

.channel-action-btn {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.65rem 1rem;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  color: #0f172a;
  font-size: 0.86rem;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.18s ease;
}

.channel-action-btn:hover {
  border-color: #911116;
  color: #911116;
  background: #ffffff;
  transform: translateX(2px);
}

.channel-action-btn.primary-action {
  background: #911116;
  color: #ffffff !important;
  border-color: #911116;
}

.channel-action-btn.primary-action:hover {
  background: #7a0e12;
}

/* Workshop Location & Map Section */
.contact-location-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.5rem;
  align-items: center;
}

@media (min-width: 1024px) {
  .contact-location-grid {
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
    gap: 3.5rem;
  }
}

.location-info-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  padding: 2.25rem;
  box-shadow: 0 4px 18px -2px rgba(0, 0, 0, 0.04);
}

.location-marker-tag {
  font-family: var(--font-mono, monospace);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #911116;
  background: rgba(145, 17, 22, 0.06);
  border: 1px solid rgba(145, 17, 22, 0.12);
  padding: 0.25rem 0.65rem;
  border-radius: 4px;
  display: inline-block;
  margin-bottom: 0.85rem;
}

.location-title {
  font-family: var(--font-display, inherit);
  font-size: 1.45rem;
  font-weight: 700;
  color: #0f172a;
}

.location-address {
  font-style: normal;
  font-size: 0.92rem;
  color: #475569;
  line-height: 1.6;
  margin-top: 0.75rem;
}

.location-hours-box {
  margin-top: 1.5rem;
  padding-top: 1.25rem;
  border-top: 1px dashed #e2e8f0;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}

.hours-label {
  font-size: 0.75rem;
  font-weight: 700;
  color: #0f172a;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.hours-val {
  font-size: 0.88rem;
  color: #64748b;
}

.map-frame-wrapper {
  width: 100%;
  height: 440px;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid #e2e8f0;
  box-shadow: 0 16px 36px -10px rgba(0, 0, 0, 0.08);
  background: #f1f5f9;
}

@media (max-width: 640px) {
  .map-frame-wrapper {
    height: 340px;
  }
}

.map-frame-wrapper iframe {
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}

/* ===================================================
   EDITORIAL TIMELINE — WHAT HAPPENS NEXT?
   =================================================== */
.timeline-editorial {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem;
  margin-top: 3.5rem;
}

.timeline-editorial::before {
  content: '';
  position: absolute;
  top: 24px;
  left: 5%;
  right: 5%;
  height: 2px;
  background: linear-gradient(90deg, #911116 0%, #FBBF24 50%, #911116 100%);
  opacity: 0.3;
  z-index: 1;
}

.timeline-editorial-step {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.timeline-node {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #ffffff;
  border: 2px solid #911116;
  box-shadow: 0 0 0 4px rgba(145, 17, 22, 0.08), 0 4px 12px rgba(0, 0, 0, 0.05);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-mono, monospace);
  font-size: 0.88rem;
  font-weight: 750;
  color: #911116;
  margin-bottom: 1.5rem;
  transition: all 0.2s ease;
}

.timeline-editorial-step:hover .timeline-node {
  background: #911116;
  color: #ffffff;
  transform: scale(1.08);
  box-shadow: 0 0 0 6px rgba(145, 17, 22, 0.15);
}

.timeline-step-title {
  font-family: var(--font-display, inherit);
  font-size: 1.15rem;
  font-weight: 700;
  color: #0f172a;
  letter-spacing: -0.01em;
  margin-bottom: 0.4rem;
}

.timeline-step-desc {
  font-size: 0.86rem;
  color: #64748b;
  line-height: 1.55;
}

@media (max-width: 900px) {
  .timeline-editorial {
    grid-template-columns: 1fr;
    gap: 2rem;
    padding-left: 2.5rem;
  }
  
  .timeline-editorial::before {
    top: 10px;
    bottom: 10px;
    left: 24px;
    right: auto;
    width: 2px;
    height: auto;
    background: linear-gradient(180deg, #911116 0%, #FBBF24 50%, #911116 100%);
  }

  .timeline-editorial-step {
    position: relative;
  }

  .timeline-node {
    position: absolute;
    left: -2.5rem;
    top: 0;
    margin-bottom: 0;
  }

  .timeline-step-title {
    margin-top: 0.25rem;
  }
}

/* ===================================================
   FILE FORMATS BANNER & SPECIFICATION CHIPS
   =================================================== */
.file-spec-banner {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 20px;
  padding: 2.75rem 2.5rem;
  box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.04);
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

@media (min-width: 1024px) {
  .file-spec-banner {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 3rem;
  }
}

.file-spec-text {
  max-width: 580px;
}

.file-format-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  align-items: center;
}

.format-pill {
  font-family: var(--font-mono, monospace);
  font-size: 0.82rem;
  font-weight: 700;
  padding: 0.5rem 0.9rem;
  border-radius: 8px;
  background: #f8fafc;
  border: 1px solid #cbd5e1;
  color: #0f172a;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  transition: all 0.18s ease;
}

.format-pill:hover {
  border-color: #911116;
  color: #911116;
  background: rgba(145, 17, 22, 0.03);
}

.format-pill-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #911116;
}

/* ===================================================
   PREMIUM DARK CLOSING CTA
   =================================================== */
.contact-dark-cta {
  background: #0a0d14;
  color: #ffffff;
  position: relative;
  overflow: hidden;
  padding: 5.5rem 0;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.contact-dark-cta::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px);
  background-size: 28px 28px;
  pointer-events: none;
}

.contact-dark-cta-card {
  position: relative;
  z-index: 2;
  text-align: center;
  max-width: 780px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.contact-dark-cta-tag {
  font-family: var(--font-mono, monospace);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  color: #FBBF24;
  text-transform: uppercase;
  background: rgba(251, 191, 36, 0.1);
  border: 1px solid rgba(251, 191, 36, 0.25);
  padding: 0.35rem 0.85rem;
  border-radius: 20px;
  margin-bottom: 1.25rem;
}

.contact-dark-cta-title {
  font-family: var(--font-display, inherit);
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 800;
  letter-spacing: -0.025em;
  color: #ffffff;
  line-height: 1.15;
  margin-bottom: 1rem;
}

.contact-dark-cta-sub {
  font-size: 1.05rem;
  color: #94a3b8;
  line-height: 1.6;
  margin-bottom: 2.25rem;
  max-width: 620px;
}

.contact-dark-cta-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: center;
  align-items: center;
}

/* ===================================================
   GALLERY PAGE CLEAN PHOTO GRID (IMAGES ONLY)
   =================================================== */
.gallery-photo-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.25rem;
}

@media (min-width: 640px) {
  .gallery-photo-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
  }
}

@media (min-width: 1024px) {
  .gallery-photo-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 1.75rem;
  }
}

.gallery-photo-card {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 3;
  border-radius: 14px;
  overflow: hidden;
  background: #f1f5f9;
  border: 1px solid rgba(0, 0, 0, 0.08);
  box-shadow: 0 4px 15px -2px rgba(0, 0, 0, 0.04);
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  display: block;
}

.gallery-photo-card:hover {
  transform: translateY(-3px);
  border-color: rgba(145, 17, 22, 0.25);
  box-shadow: 0 16px 30px -6px rgba(0, 0, 0, 0.1), 0 4px 10px rgba(0, 0, 0, 0.03);
}

.gallery-photo-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.gallery-photo-card:hover .gallery-photo-img {
  transform: scale(1.05);
}

/* ===================================================
   GLOBAL HIDDEN SCROLLBAR (Cross-Browser)
   Hides visual scrollbar in all browsers while preserving smooth scrolling
   =================================================== */
html,
body,
* {
  scrollbar-width: none !important; /* Firefox */
  -ms-overflow-style: none !important; /* IE and Edge Legacy */
}

html::-webkit-scrollbar,
body::-webkit-scrollbar,
*::-webkit-scrollbar {
  display: none !important; /* Chrome, Safari, Edge, Opera */
  width: 0 !important;
  height: 0 !important;
}


