/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@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-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-font-weight:initial;--tw-tracking: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-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-amber-400:oklch(82.8% .189 84.429);--color-lime-400:oklch(84.1% .238 128.85);--color-lime-500:oklch(76.8% .233 130.85);--color-green-400:oklch(79.2% .209 151.711);--color-rose-600:oklch(58.6% .253 17.585);--color-black:#000;--color-white:#f8fafc;--spacing:.25rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-5xl:64rem;--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);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--tracking-tight:-.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--animate-ping:ping 1s cubic-bezier(0, 0, .2, 1) infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-md:12px;--blur-2xl:40px;--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-bg-deep:#090c07;--color-bg-surface:#10150d;--color-bg-card:#161d13;--color-lime:#84cc16;--color-muted:#788270;--color-border:#242d1f;--font-display:"Satoshi", -apple-system, BlinkMacSystemFont, "Inter", sans-serif;--font-body:"Inter", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--ease-in-expo:cubic-bezier(.7, 0, .84, 0)}}@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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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]){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;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:where(:not(iframe)){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}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:0}.-top-0\.5{top:calc(var(--spacing) * -.5)}.-top-24{top:calc(var(--spacing) * -24)}.top-0{top:0}.top-6{top:calc(var(--spacing) * 6)}.top-full{top:100%}.-right-0\.5{right:calc(var(--spacing) * -.5)}.-right-24{right:calc(var(--spacing) * -24)}.right-0{right:0}.right-6{right:calc(var(--spacing) * 6)}.bottom-0{bottom:0}.left-0{left:0}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.my-6{margin-block:calc(var(--spacing) * 6)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.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)}.mb-0\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:var(--spacing)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-2\.5{margin-bottom:calc(var(--spacing) * 2.5)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-10{margin-bottom:calc(var(--spacing) * 10)}.mb-12{margin-bottom:calc(var(--spacing) * 12)}.mb-14{margin-bottom:calc(var(--spacing) * 14)}.mb-16{margin-bottom:calc(var(--spacing) * 16)}.ml-0\.5{margin-left:calc(var(--spacing) * .5)}.ml-1{margin-left:var(--spacing)}.ml-2{margin-left:calc(var(--spacing) * 2)}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.h-0\.5{height:calc(var(--spacing) * .5)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-12{height:calc(var(--spacing) * 12)}.h-14{height:calc(var(--spacing) * 14)}.h-16{height:calc(var(--spacing) * 16)}.h-24{height:calc(var(--spacing) * 24)}.h-72{height:calc(var(--spacing) * 72)}.h-full{height:100%}.max-h-\[calc\(100dvh-4\.5rem\)\]{max-height:calc(100dvh - 4.5rem)}.min-h-\[85vh\]{min-height:85vh}.min-h-\[100dvh\]{min-height:100dvh}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-11{width:calc(var(--spacing) * 11)}.w-12{width:calc(var(--spacing) * 12)}.w-14{width:calc(var(--spacing) * 14)}.w-16{width:calc(var(--spacing) * 16)}.w-24{width:calc(var(--spacing) * 24)}.w-72{width:calc(var(--spacing) * 72)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.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-5xl{max-width:var(--container-5xl)}.max-w-xl{max-width:var(--container-xl)}.min-w-0{min-width:0}.shrink-0{flex-shrink:0}.origin-center{transform-origin:50%}.translate-y-2{--tw-translate-y:calc(var(--spacing) * 2);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,)}.animate-\[fadeInUp_0\.6s_0\.2s_forwards\]{animation:.6s .2s forwards fadeInUp}.animate-\[fadeInUp_0\.6s_0\.9s_forwards\]{animation:.6s .9s forwards fadeInUp}.animate-\[fadeInUp_0\.6s_1\.1s_forwards\]{animation:.6s 1.1s forwards fadeInUp}.animate-\[fadeInUp_0\.7s_0\.7s_forwards\]{animation:.7s .7s forwards fadeInUp}.animate-\[fadeInUp_0\.8s_0\.4s_forwards\]{animation:.8s .4s forwards fadeInUp}.animate-ping{animation:var(--animate-ping)}.animate-pulse{animation:var(--animate-pulse)}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-3\.5{gap:calc(var(--spacing) * 3.5)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-9{gap:calc(var(--spacing) * 9)}.gap-12{gap:calc(var(--spacing) * 12)}.gap-16{gap:calc(var(--spacing) * 16)}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-y-3{row-gap:calc(var(--spacing) * 3)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t-xl{border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.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-lime-400\/30{border-color:#9de5004d}@supports (color:color-mix(in lab, red, red)){.border-lime-400\/30{border-color:color-mix(in oklab, var(--color-lime-400) 30%, transparent)}}.border-lime-500\/30{border-color:#80cd004d}@supports (color:color-mix(in lab, red, red)){.border-lime-500\/30{border-color:color-mix(in oklab, var(--color-lime-500) 30%, transparent)}}.border-red-500\/30{border-color:#fb2c364d}@supports (color:color-mix(in lab, red, red)){.border-red-500\/30{border-color:color-mix(in oklab, var(--color-red-500) 30%, transparent)}}.border-red-500\/40{border-color:#fb2c3666}@supports (color:color-mix(in lab, red, red)){.border-red-500\/40{border-color:color-mix(in oklab, var(--color-red-500) 40%, transparent)}}.border-white\/5{border-color:#f8fafc0d}@supports (color:color-mix(in lab, red, red)){.border-white\/5{border-color:color-mix(in oklab, var(--color-white) 5%, transparent)}}.border-white\/8{border-color:#f8fafc14}@supports (color:color-mix(in lab, red, red)){.border-white\/8{border-color:color-mix(in oklab, var(--color-white) 8%, transparent)}}.border-white\/10{border-color:#f8fafc1a}@supports (color:color-mix(in lab, red, red)){.border-white\/10{border-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.border-white\/20{border-color:#f8fafc33}@supports (color:color-mix(in lab, red, red)){.border-white\/20{border-color:color-mix(in oklab, var(--color-white) 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-lime-400{background-color:var(--color-lime-400)}.bg-lime-400\/20{background-color:#9de50033}@supports (color:color-mix(in lab, red, red)){.bg-lime-400\/20{background-color:color-mix(in oklab, var(--color-lime-400) 20%, transparent)}}.bg-lime-500\/20{background-color:#80cd0033}@supports (color:color-mix(in lab, red, red)){.bg-lime-500\/20{background-color:color-mix(in oklab, var(--color-lime-500) 20%, transparent)}}.bg-red-400{background-color:var(--color-red-400)}.bg-red-500{background-color:var(--color-red-500)}.bg-red-500\/20{background-color:#fb2c3633}@supports (color:color-mix(in lab, red, red)){.bg-red-500\/20{background-color:color-mix(in oklab, var(--color-red-500) 20%, transparent)}}.bg-white{background-color:var(--color-white)}.bg-white\/5{background-color:#f8fafc0d}@supports (color:color-mix(in lab, red, red)){.bg-white\/5{background-color:color-mix(in oklab, var(--color-white) 5%, transparent)}}.bg-white\/95{background-color:#f8fafcf2}@supports (color:color-mix(in lab, red, red)){.bg-white\/95{background-color:color-mix(in oklab, var(--color-white) 95%, transparent)}}.bg-white\/\[0\.03\]{background-color:#f8fafc08}@supports (color:color-mix(in lab, red, red)){.bg-white\/\[0\.03\]{background-color:color-mix(in oklab, var(--color-white) 3%, transparent)}}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-t{--tw-gradient-position:to top in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-\[radial-gradient\(\#ef4444_1px\,transparent_1px\)\]{background-image:radial-gradient(#ef4444 1px,#0000 1px)}.from-\[var\(--color-bg-deep\)\]{--tw-gradient-from:var(--color-bg-deep);--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-black\/80{--tw-gradient-from:#000c}@supports (color:color-mix(in lab, red, red)){.from-black\/80{--tw-gradient-from:color-mix(in oklab, var(--color-black) 80%, transparent)}}.from-black\/80{--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-red-600{--tw-gradient-from:var(--color-red-600);--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))}.via-\[var\(--color-bg-deep\)\]\/70{--tw-gradient-via:#090c07b3}@supports (color:color-mix(in lab, red, red)){.via-\[var\(--color-bg-deep\)\]\/70{--tw-gradient-via:color-mix(in oklab, var(--color-bg-deep) 70%, transparent)}}.via-\[var\(--color-bg-deep\)\]\/70{--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-transparent{--tw-gradient-via:transparent;--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-rose-600{--tw-gradient-to:var(--color-rose-600);--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))}.\[background-size\:16px_16px\]{background-size:16px 16px}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:0}.p-1{padding:var(--spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-7{padding:calc(var(--spacing) * 7)}.p-8{padding:calc(var(--spacing) * 8)}.p-10{padding:calc(var(--spacing) * 10)}.px-1{padding-inline:var(--spacing)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.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-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-3\.5{padding-block:calc(var(--spacing) * 3.5)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-16{padding-block:calc(var(--spacing) * 16)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pt-32{padding-top:calc(var(--spacing) * 32)}.pt-36{padding-top:calc(var(--spacing) * 36)}.pt-40{padding-top:calc(var(--spacing) * 40)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pb-8{padding-bottom:calc(var(--spacing) * 8)}.pb-16{padding-bottom:calc(var(--spacing) * 16)}.pb-20{padding-bottom:calc(var(--spacing) * 20)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.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-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-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))}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-all{word-break:break-all}.text-amber-400{color:var(--color-amber-400)}.text-lime-400{color:var(--color-lime-400)}.text-red-400{color:var(--color-red-400)}.text-white{color:var(--color-white)}.text-white\/30{color:#f8fafc4d}@supports (color:color-mix(in lab, red, red)){.text-white\/30{color:color-mix(in oklab, var(--color-white) 30%, transparent)}}.text-white\/40{color:#f8fafc66}@supports (color:color-mix(in lab, red, red)){.text-white\/40{color:color-mix(in oklab, var(--color-white) 40%, transparent)}}.text-white\/50{color:#f8fafc80}@supports (color:color-mix(in lab, red, red)){.text-white\/50{color:color-mix(in oklab, var(--color-white) 50%, transparent)}}.text-white\/70{color:#f8fafcb3}@supports (color:color-mix(in lab, red, red)){.text-white\/70{color:color-mix(in oklab, var(--color-white) 70%, transparent)}}.text-white\/75{color:#f8fafcbf}@supports (color:color-mix(in lab, red, red)){.text-white\/75{color:color-mix(in oklab, var(--color-white) 75%, transparent)}}.text-white\/80{color:#f8fafccc}@supports (color:color-mix(in lab, red, red)){.text-white\/80{color:color-mix(in oklab, var(--color-white) 80%, transparent)}}.text-white\/90{color:#f8fafce6}@supports (color:color-mix(in lab, red, red)){.text-white\/90{color:color-mix(in oklab, var(--color-white) 90%, transparent)}}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.accent-lime-400{accent-color:var(--color-lime-400)}.accent-red-500{accent-color:var(--color-red-500)}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-20{opacity:.2}.opacity-75{opacity:.75}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_0_25px_rgba\(220\,38\,38\,0\.45\)\]{--tw-shadow:0 0 25px var(--tw-shadow-color,#dc262673);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px 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-sm{--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-xl{--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)}.filter{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,)}.backdrop-blur-2xl{--tw-backdrop-blur:blur(var(--blur-2xl));backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-filter{backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.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-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-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-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.duration-700{--tw-duration:.7s;transition-duration:.7s}@media (hover:hover){.group-hover\:translate-x-1:is(:where(.group):hover *){--tw-translate-x:var(--spacing);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\:scale-110:is(:where(.group):hover *){--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.group-hover\:text-green-400:is(:where(.group):hover *){color:var(--color-green-400)}.group-hover\:text-lime-400:is(:where(.group):hover *){color:var(--color-lime-400)}.group-hover\:text-white:is(:where(.group):hover *){color:var(--color-white)}.group-hover\:underline:is(:where(.group):hover *){text-decoration-line:underline}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\/item\:translate-x-0\.5:is(:where(.group\/item):hover *){--tw-translate-x:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\/item\:text-lime-400:is(:where(.group\/item):hover *){color:var(--color-lime-400)}.group-hover\/nav\:visible:is(:where(.group\/nav):hover *){visibility:visible}.group-hover\/nav\:translate-y-0:is(:where(.group\/nav):hover *){--tw-translate-y:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\/nav\:rotate-180:is(:where(.group\/nav):hover *){rotate:180deg}.group-hover\/nav\:text-lime-400:is(:where(.group\/nav):hover *){color:var(--color-lime-400)}.group-hover\/nav\:opacity-100:is(:where(.group\/nav):hover *){opacity:1}.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-lime-400:hover{border-color:var(--color-lime-400)}.hover\:border-lime-400\/40:hover{border-color:#9de50066}@supports (color:color-mix(in lab, red, red)){.hover\:border-lime-400\/40:hover{border-color:color-mix(in oklab, var(--color-lime-400) 40%, transparent)}}.hover\:border-lime-400\/50:hover{border-color:#9de50080}@supports (color:color-mix(in lab, red, red)){.hover\:border-lime-400\/50:hover{border-color:color-mix(in oklab, var(--color-lime-400) 50%, transparent)}}.hover\:border-red-400:hover{border-color:var(--color-red-400)}.hover\:bg-lime-400\/10:hover{background-color:#9de5001a}@supports (color:color-mix(in lab, red, red)){.hover\:bg-lime-400\/10:hover{background-color:color-mix(in oklab, var(--color-lime-400) 10%, transparent)}}.hover\:bg-white\/5:hover{background-color:#f8fafc0d}@supports (color:color-mix(in lab, red, red)){.hover\:bg-white\/5:hover{background-color:color-mix(in oklab, var(--color-white) 5%, transparent)}}.hover\:bg-white\/8:hover{background-color:#f8fafc14}@supports (color:color-mix(in lab, red, red)){.hover\:bg-white\/8:hover{background-color:color-mix(in oklab, var(--color-white) 8%, transparent)}}.hover\:bg-white\/10:hover{background-color:#f8fafc1a}@supports (color:color-mix(in lab, red, red)){.hover\:bg-white\/10:hover{background-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.hover\:text-lime-400:hover{color:var(--color-lime-400)}.hover\:text-white:hover{color:var(--color-white)}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-\[0_0_35px_rgba\(220\,38\,38\,0\.7\)\]:hover{--tw-shadow:0 0 35px var(--tw-shadow-color,#dc2626b3);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}@media (width>=40rem){.sm\:mt-1{margin-top:var(--spacing)}.sm\:mt-16{margin-top:calc(var(--spacing) * 16)}.sm\:mb-3{margin-bottom:calc(var(--spacing) * 3)}.sm\:mb-10{margin-bottom:calc(var(--spacing) * 10)}.sm\:mb-16{margin-bottom:calc(var(--spacing) * 16)}.sm\:block{display:block}.sm\:flex{display:flex}.sm\:inline{display:inline}.sm\:h-10{height:calc(var(--spacing) * 10)}.sm\:w-10{width:calc(var(--spacing) * 10)}.sm\:w-auto{width:auto}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:flex-wrap{flex-wrap:wrap}.sm\:justify-center{justify-content:center}.sm\:justify-start{justify-content:flex-start}.sm\:gap-2{gap:calc(var(--spacing) * 2)}.sm\:gap-3{gap:calc(var(--spacing) * 3)}.sm\:gap-3\.5{gap:calc(var(--spacing) * 3.5)}.sm\:gap-4{gap:calc(var(--spacing) * 4)}.sm\:gap-5{gap:calc(var(--spacing) * 5)}.sm\:overflow-x-visible{overflow-x:visible}.sm\:p-1\.5{padding:calc(var(--spacing) * 1.5)}.sm\:p-3\.5{padding:calc(var(--spacing) * 3.5)}.sm\:p-5{padding:calc(var(--spacing) * 5)}.sm\:p-6{padding:calc(var(--spacing) * 6)}.sm\:p-8{padding:calc(var(--spacing) * 8)}.sm\:p-10{padding:calc(var(--spacing) * 10)}.sm\:px-4{padding-inline:calc(var(--spacing) * 4)}.sm\:px-5{padding-inline:calc(var(--spacing) * 5)}.sm\:px-7{padding-inline:calc(var(--spacing) * 7)}.sm\:px-8{padding-inline:calc(var(--spacing) * 8)}.sm\:py-3{padding-block:calc(var(--spacing) * 3)}.sm\:py-4{padding-block:calc(var(--spacing) * 4)}.sm\:py-6{padding-block:calc(var(--spacing) * 6)}.sm\:py-20{padding-block:calc(var(--spacing) * 20)}.sm\:pt-6{padding-top:calc(var(--spacing) * 6)}.sm\:pt-36{padding-top:calc(var(--spacing) * 36)}.sm\:pb-0{padding-bottom:0}.sm\:pb-12{padding-bottom:calc(var(--spacing) * 12)}.sm\:pb-20{padding-bottom:calc(var(--spacing) * 20)}.sm\:text-center{text-align:center}.sm\:text-left{text-align:left}.sm\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.sm\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.sm\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.sm\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.sm\:text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}}@media (width>=48rem){.md\:h-11{height:calc(var(--spacing) * 11)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:justify-start{justify-content:flex-start}.md\:p-8{padding:calc(var(--spacing) * 8)}.md\:p-10{padding:calc(var(--spacing) * 10)}.md\:p-12{padding:calc(var(--spacing) * 12)}.md\:p-16{padding:calc(var(--spacing) * 16)}.md\:py-3\.5{padding-block:calc(var(--spacing) * 3.5)}.md\:py-24{padding-block:calc(var(--spacing) * 24)}.md\:pt-44{padding-top:calc(var(--spacing) * 44)}.md\:pb-14{padding-bottom:calc(var(--spacing) * 14)}.md\:pb-24{padding-bottom:calc(var(--spacing) * 24)}.md\:text-left{text-align:left}.md\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.md\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.md\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}}@media (width>=64rem){.lg\:sticky{position:sticky}.lg\:top-28{top:calc(var(--spacing) * 28)}.lg\:col-span-1{grid-column:span 1/span 1}.lg\:col-span-4{grid-column:span 4/span 4}.lg\:col-span-5{grid-column:span 5/span 5}.lg\:col-span-6{grid-column:span 6/span 6}.lg\:col-span-7{grid-column:span 7/span 7}.lg\:col-span-8{grid-column:span 8/span 8}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:flex-col{flex-direction:column}.lg\:gap-10{gap:calc(var(--spacing) * 10)}.lg\:p-14{padding:calc(var(--spacing) * 14)}}@media (width>=80rem){.xl\:flex{display:flex}.xl\:inline{display:inline}.xl\:h-8{height:calc(var(--spacing) * 8)}.xl\:w-8{width:calc(var(--spacing) * 8)}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\:gap-2{gap:calc(var(--spacing) * 2)}.xl\:gap-3\.5{gap:calc(var(--spacing) * 3.5)}.xl\:px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.xl\:px-6{padding-inline:calc(var(--spacing) * 6)}.xl\:py-2{padding-block:calc(var(--spacing) * 2)}.xl\:py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.xl\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}}:root{--sat:env(safe-area-inset-top,0px);--sar:env(safe-area-inset-right,0px);--sab:env(safe-area-inset-bottom,0px);--sal:env(safe-area-inset-left,0px)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:calc(5.5rem + var(--sat,0px));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color-scheme:dark;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;overflow-x:clip}section[id],[id]{scroll-margin-top:calc(5.5rem + var(--sat,0px))}body{background-color:var(--color-bg-deep);color:var(--color-white);font-family:var(--font-body);touch-action:manipulation;-webkit-tap-highlight-color:transparent;min-width:320px;padding-left:var(--sal);padding-right:var(--sar);selection-background-color:var(--color-lime);selection-color:#090c07;font-size:1rem;line-height:1.7;overflow-x:clip}h1,h2,h3,h4,h5,h6{overflow-wrap:break-word;word-break:normal}p,a,span,li,button,input,label,textarea{overflow-wrap:break-word}::selection{background:var(--color-lime);color:#090c07}@view-transition{navigation:auto}::view-transition-old(root){animation:fade-out .25s var(--ease-in-expo) both}::view-transition-new(root){animation:fade-in .35s var(--ease-out-expo) both}@keyframes fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.98)}}@keyframes fade-in{0%{opacity:0;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}.site-nav{-webkit-backdrop-filter:blur(24px);padding-top:var(--sat);background-color:#090c07e0;border-bottom:1px solid #ffffff12;transition:padding .25s,background-color .25s,border-color .25s,box-shadow .25s;box-shadow:0 4px 30px #0006}.site-nav.scrolled{background-color:#070a05f5;border-bottom:1px solid #84cc162e;box-shadow:0 12px 36px #000000b3,0 1px #84cc1626}.hero-headline{font-family:var(--font-display);letter-spacing:-.035em;text-transform:uppercase;flex-direction:column;font-size:clamp(2.15rem,7.5vw,6.25rem);font-weight:900;line-height:1.02;display:flex}.display-xl{font-family:var(--font-display);letter-spacing:-.03em;text-transform:uppercase;font-size:clamp(2.1rem,6.5vw,5.25rem);font-weight:900;line-height:1.04}.display-lg{font-family:var(--font-display);letter-spacing:-.025em;font-size:clamp(1.8rem,4.5vw,3.75rem);font-weight:800;line-height:1.08}.display-md{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(1.4rem,3.2vw,2.6rem);font-weight:700;line-height:1.18}.display-sm{font-family:var(--font-display);letter-spacing:-.015em;font-size:clamp(1.1rem,1.8vw,1.45rem);font-weight:700;line-height:1.3}.text-gradient-lime{-webkit-text-fill-color:transparent;background:linear-gradient(135deg,#a3e635 0%,#84cc16 60%,#4d7c0f 100%);-webkit-background-clip:text}.text-gradient-white{-webkit-text-fill-color:transparent;background:linear-gradient(#fff 0%,#f8fafccc 100%);-webkit-background-clip:text}.btn-primary{color:#080b06;min-height:48px;font-family:var(--font-display);letter-spacing:.01em;cursor:pointer;transition:background .2s, transform .2s var(--ease-out-expo), box-shadow .2s;text-align:center;background:linear-gradient(135deg,#9ae62e 0%,#84cc16 100%);border:1px solid #ffffff4d;border-radius:.75rem;justify-content:center;align-items:center;gap:.625rem;padding:.875rem 1.875rem;font-size:.95rem;font-weight:700;text-decoration:none;display:inline-flex;box-shadow:0 4px 16px -2px #84cc1659,inset 0 1px #fff6}.btn-primary:hover{background:linear-gradient(135deg,#a8f03b 0%,#90db18 100%);transform:translateY(-2px);box-shadow:0 12px 28px -4px #84cc1680,inset 0 1px #ffffff73}.btn-primary:active{transform:translateY(0);box-shadow:0 4px 12px #84cc164d}.btn-emergency{color:#fff;min-height:48px;font-family:var(--font-display);letter-spacing:.01em;cursor:pointer;transition:background .2s, transform .2s var(--ease-out-expo), box-shadow .2s;text-align:center;background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%);border:1px solid #fff3;border-radius:.75rem;justify-content:center;align-items:center;gap:.625rem;padding:.875rem 1.875rem;font-size:.95rem;font-weight:700;text-decoration:none;display:inline-flex;box-shadow:0 4px 16px -2px #dc262666,inset 0 1px #ffffff4d}.btn-emergency:hover{background:linear-gradient(135deg,#f87171 0%,#e11d48 100%);transform:translateY(-2px);box-shadow:0 12px 28px -4px #dc26268c,inset 0 1px #fff6}.btn-emergency:active{transform:translateY(0);box-shadow:0 4px 12px #dc26264d}.btn-outline{-webkit-backdrop-filter:blur(12px);min-height:48px;color:var(--color-white);font-family:var(--font-display);cursor:pointer;transition:border-color .2s, background .2s, color .2s, transform .2s var(--ease-out-expo), box-shadow .2s;text-align:center;background:#ffffff0a;border:1px solid #ffffff29;border-radius:.75rem;justify-content:center;align-items:center;gap:.625rem;padding:.875rem 1.875rem;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex;box-shadow:0 4px 16px -2px #0000004d}.btn-outline:hover{color:var(--color-lime);background:#84cc1614;border-color:#84cc1699;transform:translateY(-2px);box-shadow:0 8px 24px -4px #84cc1640}.btn-outline:active{transform:translateY(0)}.section-pad{padding-block:clamp(4rem,7vw,7.5rem)}.section-pad-sm{padding-block:clamp(2.5rem,5vw,5rem)}.container{width:100%;max-width:1280px;margin-inline:auto;padding-inline:clamp(1rem,4vw,2.5rem)}.container-wide{width:100%;max-width:1440px;margin-inline:auto;padding-inline:clamp(1rem,4vw,2.5rem)}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.label{letter-spacing:.14em;text-transform:uppercase;color:var(--color-lime);background:#84cc161a;border:1px solid #84cc1640;border-radius:9999px;align-items:center;gap:.5rem;width:fit-content;padding:.35rem .85rem;font-size:.75rem;font-weight:800;display:inline-flex;box-shadow:0 2px 8px #0000004d}.label.justify-center,.label.mx-auto,.text-center>.label{margin-inline:auto}.card{-webkit-backdrop-filter:blur(16px);background:linear-gradient(#1a2016b8 0%,#12160fdb 100%);border:1px solid #ffffff14;border-radius:1rem;transition:border-color .3s cubic-bezier(.16,1,.3,1),transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s cubic-bezier(.16,1,.3,1);overflow:hidden;box-shadow:0 6px 24px -4px #0000008c,inset 0 1px #ffffff0f}.card:hover{border-color:#84cc1666;transform:translateY(-4px);box-shadow:0 20px 45px -12px #000000bf,0 0 25px #84cc161f,inset 0 1px #ffffff1f}.marquee-track{width:max-content;animation:45s linear infinite marquee-scroll;display:flex}.marquee-track:hover{animation-play-state:paused}@keyframes marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes pulse-ring{0%,to{box-shadow:0 0 #dc262680}50%{box-shadow:0 0 0 10px #dc262600}}.pulse-emergency{animation:2s ease-in-out infinite pulse-ring}[data-reveal]{opacity:0;transition:opacity .7s var(--ease-out-expo), transform .7s var(--ease-out-expo);transform:translateY(30px)}[data-reveal].is-visible{opacity:1;transform:translateY(0)}[data-reveal=left]{transform:translate(-30px)}[data-reveal=left].is-visible{transform:translate(0)}[data-reveal=right]{transform:translate(30px)}[data-reveal=right].is-visible{transform:translate(0)}[data-reveal=scale]{transform:scale(.95)}[data-reveal=scale].is-visible{transform:scale(1)}.whatsapp-fab{bottom:max(1.5rem, calc(1rem + var(--sab)));right:max(1.5rem, calc(1rem + var(--sar)));z-index:9999;width:3.5rem;min-width:48px;height:3.5rem;min-height:48px;transition:transform .25s var(--ease-out-expo), box-shadow .25s;touch-action:manipulation;background-color:#25d366;border-radius:50%;justify-content:center;align-items:center;text-decoration:none;display:flex;position:fixed;box-shadow:0 6px 25px #25d36673}.whatsapp-fab:hover{transform:scale(1.08);box-shadow:0 10px 35px #25d36699}.whatsapp-fab:active{transform:scale(.96)}.gallery-grid{column-count:3;column-gap:1.25rem}.gallery-item-wrapper{break-inside:avoid;background:var(--color-bg-card);transition:border-color .3s, transform .3s var(--ease-out-expo), box-shadow .3s;border:1px solid #ffffff14;border-radius:1rem;margin-bottom:1.25rem;overflow:hidden}.gallery-item-wrapper:hover{border-color:#84cc1666;transform:translateY(-3px);box-shadow:0 16px 36px -8px #000000b3,0 0 20px #84cc161a}.gallery-item-wrapper img{cursor:pointer;width:100%;height:auto;transition:transform .6s var(--ease-out-expo);display:block}.gallery-item-wrapper:hover img{transform:scale(1.05)}.lightbox{z-index:10000;background:#000000f2;justify-content:center;align-items:center;padding:2rem;display:none;position:fixed;inset:0}.lightbox.open{display:flex}.lightbox img{object-fit:contain;border-radius:.75rem;max-width:100%;max-height:90vh}.service-card{aspect-ratio:4/5;cursor:pointer;transition:border-color .35s var(--ease-out-expo), transform .35s var(--ease-out-expo), box-shadow .35s var(--ease-out-expo);border:1px solid #ffffff14;border-radius:1.25rem;position:relative;overflow:hidden;box-shadow:0 10px 30px -10px #000000b3}.service-card:hover{border-color:#84cc1673;transform:translateY(-6px);box-shadow:0 24px 48px -12px #000c,0 0 25px #84cc1626}.service-card img{object-fit:cover;width:100%;height:100%;transition:transform .7s var(--ease-out-expo)}.service-card:hover img{transform:scale(1.08)}.service-card .overlay{background:linear-gradient(#0000 0%,#0a0e0833 25%,#0a0e08bf 60%,#080b06fa 100%);transition:background .4s;position:absolute;inset:0}.service-card:hover .overlay{background:linear-gradient(#0000 0%,#283c0f40 20%,#10180ad1 55%,#0a0f06fa 100%)}.service-card .content{z-index:2;transition:transform .4s var(--ease-out-expo);padding:1.75rem;position:absolute;bottom:0;left:0;right:0}.service-card:hover .content{transform:translateY(-4px)}.service-card .arrow{color:var(--color-lime);opacity:.85;transition:opacity .3s 50ms, transform .3s 50ms var(--ease-out-expo);align-items:center;gap:.5rem;font-size:.875rem;font-weight:700;display:inline-flex;transform:translateY(4px)}.service-card:hover .arrow{opacity:1;transform:translateY(0)}.stat-number{font-family:var(--font-display);color:var(--color-lime);letter-spacing:-.03em;font-size:clamp(2.75rem,5.5vw,4.5rem);font-weight:900;line-height:1}.testimonial-card{-webkit-backdrop-filter:blur(16px);width:min(380px,85vw);transition:border-color .3s, transform .3s var(--ease-out-expo);background:linear-gradient(#1a2016b8 0%,#12160fdb 100%);border:1px solid #ffffff14;border-radius:1.125rem;flex-shrink:0;padding:2rem;box-shadow:0 10px 30px -10px #00000080,inset 0 1px #ffffff0d}.testimonial-card:hover{border-color:#84cc1659;transform:translateY(-4px)}.form-field{flex-direction:column;gap:.5rem;display:flex}.form-label{letter-spacing:.06em;text-transform:uppercase;color:#f8fafcb3;font-size:.8rem;font-weight:700}.form-input{-webkit-backdrop-filter:blur(8px);width:100%;color:var(--color-white);font-family:var(--font-body);background-color:#12160fcc;border:1.5px solid #ffffff1a;border-radius:.75rem;outline:none;padding:.875rem 1.125rem;font-size:1rem;transition:border-color .2s,box-shadow .2s,background-color .2s}.form-input:focus{border-color:var(--color-lime);background-color:#161c12f2;box-shadow:0 0 0 4px #84cc1629,0 2px 8px #0006}.form-input::placeholder{color:#f8fafc59}details.faq{background:var(--color-bg-card);border:1px solid #ffffff14;border-radius:.875rem;transition:border-color .2s,background-color .2s;overflow:hidden}details.faq[open]{background:#181e14e6;border-color:#84cc1659}details.faq summary{cursor:pointer;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;font-size:1rem;font-weight:700;list-style:none;transition:background .2s,color .2s;display:flex}details.faq summary::-webkit-details-marker{display:none}details.faq summary:hover{color:var(--color-lime)}details.faq summary:after{content:"+";color:var(--color-lime);transition:transform .3s var(--ease-out-expo);flex-shrink:0;margin-left:1rem;font-size:1.35rem;font-weight:600}details.faq[open] summary:after{transform:rotate(45deg)}details.faq .faq-body{color:#f8fafcbf;padding:0 1.5rem 1.5rem;font-size:.95rem;line-height:1.75}@media (width<=380px){.hero-headline{letter-spacing:-.025em;font-size:clamp(1.9rem,8.5vw,2.5rem)}.display-xl{font-size:clamp(1.85rem,8vw,2.4rem)}.display-lg{letter-spacing:-.02em;font-size:clamp(1.6rem,7vw,2rem)}.display-md{letter-spacing:-.015em;font-size:clamp(1.3rem,6vw,1.65rem)}.display-sm{font-size:1.05rem}.container,.container-wide{padding-inline:max(.75rem, var(--sal))}.section-pad{padding-block:clamp(2.5rem,6vw,3.5rem)}.section-pad-sm{padding-block:clamp(1.75rem,4vw,2.5rem)}.btn-primary,.btn-emergency,.btn-outline{gap:.35rem;min-height:44px;padding:.75rem 1rem;font-size:.85rem}.card{border-radius:.75rem}.testimonial-card{border-radius:.875rem;width:260px;padding:1.15rem .875rem}.stat-number{font-size:clamp(1.85rem,9.5vw,2.5rem)}.whatsapp-fab{width:2.875rem;min-width:44px;height:2.875rem;min-height:44px;bottom:max(1rem, var(--sab));right:max(1rem, var(--sar))}.whatsapp-fab svg{width:22px;height:22px}.lightbox{padding:.5rem}}@media (width<=640px){.section-pad{padding-block:clamp(3rem,7vw,4.5rem)}.section-pad-sm{padding-block:clamp(2.25rem,5vw,3.25rem)}.gallery-grid{column-count:1;column-gap:1rem}.testimonial-card{width:min(320px,100vw - 2.5rem);padding:1.5rem}.whatsapp-fab{width:3.125rem;height:3.125rem;bottom:max(1.25rem, calc(.75rem + var(--sab)));right:max(1.25rem, calc(.75rem + var(--sar)))}.whatsapp-fab svg{width:24px;height:24px}.lightbox{padding:.875rem}.lightbox button{padding:.5rem;font-size:1.75rem;top:1rem;right:1rem}.service-card{aspect-ratio:auto;min-height:280px}.service-card .content{padding:1.25rem}.form-input,input,select,textarea{padding:.75rem 1rem;font-size:16px!important}details.faq summary{padding:1rem 1.25rem;font-size:.95rem}details.faq .faq-body{padding:0 1.25rem 1.25rem;font-size:.9rem}}@media (width>=640.02px) and (width<=768px){.gallery-grid{column-count:2;column-gap:1rem}.testimonial-card{width:340px;padding:1.75rem}.section-pad{padding-block:clamp(3.75rem,6.5vw,5.5rem)}.service-card{aspect-ratio:4/3;min-height:300px}.whatsapp-fab{bottom:max(1.5rem, calc(1rem + var(--sab)));right:max(1.5rem, calc(1rem + var(--sar)))}}@media (width>=768.02px) and (width<=1023.98px){.gallery-grid{column-count:2;column-gap:1.25rem}.testimonial-card{width:360px}.section-pad{padding-block:clamp(4rem,7vw,6rem)}.container,.container-wide{padding-inline:2rem}}@media (width>=1024px) and (width<=1279.98px){.gallery-grid{column-count:3;column-gap:1.25rem}.container{max-width:1200px;padding-inline:1.5rem}.container-wide{max-width:1240px;padding-inline:1.5rem}}@media (width>=1280px) and (width<=1535.98px){.gallery-grid{column-count:3;column-gap:1.25rem}.container{max-width:1240px;padding-inline:2rem}.container-wide{max-width:1360px;padding-inline:2.5rem}}@media (width>=1536px) and (width<=1919.98px){.gallery-grid{column-count:4;column-gap:1.5rem}.container{max-width:1360px;padding-inline:2.5rem}.container-wide{max-width:1480px;padding-inline:3rem}.hero-headline{font-size:clamp(3.5rem,6vw,6.25rem)}}@media (width>=1920px) and (width<=2559.98px){.container{max-width:1520px;padding-inline:3.5rem}.container-wide{max-width:1680px;padding-inline:4rem}.section-pad{padding-block:8.5rem}.section-pad-sm{padding-block:5.5rem}.gallery-grid{column-count:4;column-gap:1.75rem}.display-xl{font-size:5.5rem}.display-lg{font-size:4.15rem}}@media (width>=2560px){.container{max-width:1760px;padding-inline:4.5rem}.container-wide{max-width:1920px;padding-inline:5rem}.section-pad{padding-block:9.5rem}.section-pad-sm{padding-block:6rem}.gallery-grid{column-count:5;column-gap:2rem}.display-xl{font-size:6rem}.display-lg{font-size:4.5rem}}@media (height<=600px) and (orientation:landscape){.site-nav{padding-block:.25rem}#hero{min-height:auto;padding-top:max(4.5rem, calc(3rem + var(--sat)));padding-bottom:max(2rem, calc(1.5rem + var(--sab)))}.hero-headline{margin-bottom:.75rem;font-size:clamp(1.75rem,7vh,2.75rem)}.section-pad{padding-block:2.75rem}.section-pad-sm{padding-block:2rem}.lightbox img{max-height:82vh}.whatsapp-fab{bottom:max(.75rem, var(--sab));right:max(.75rem, var(--sar));width:2.75rem;height:2.75rem}.insurance-modal-container{max-height:94vh;padding:1rem 1.25rem}}@media (hover:none) and (pointer:coarse){.card:hover,.testimonial-card:hover,.service-card:hover{transform:none}.card:active,.testimonial-card:active,.service-card:active{transform:scale(.99)}.service-card .arrow{opacity:1;transform:translateY(0)}.service-card .overlay{background:linear-gradient(#0000 0%,#0a0e0833 20%,#0a0e08bf 55%,#080b06fa 100%)}.btn-primary,.btn-emergency,.btn-outline,details.faq summary{min-height:48px}}@media (hover:hover) and (pointer:fine){.service-card .arrow{opacity:.85;transform:translateY(4px)}.service-card:hover .arrow{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.marquee-track{animation:none!important}.site-nav{background-color:#090c07f5}[data-reveal],[data-reveal=left],[data-reveal=right],[data-reveal=scale]{opacity:1!important;transition:none!important;transform:none!important}}@media (prefers-contrast:more){.card,.testimonial-card,.service-card{border:1.5px solid #ffffff4d!important}.label{border:1.5px solid var(--color-lime)!important;color:var(--color-lime)!important}}@media print{*,:before,:after{color:#111!important;box-shadow:none!important;text-shadow:none!important;background:0 0!important}html,body{font-size:11pt;color:#111!important;background:#fff!important}.site-nav,.whatsapp-fab,.lightbox,#mobile-menu-btn,#mobile-menu,.marquee-track,iframe{display:none!important}.card,.testimonial-card{page-break-inside:avoid;break-inside:avoid;margin-bottom:1rem;background:#fff!important;border:1px solid #ddd!important}.btn-primary,.btn-emergency,.btn-outline{color:#111!important;background:#f5f5f5!important;border:1px solid #111!important}a[href^=http]:after{content:" (" attr(href) ")";color:#555;font-size:80%}a[href^=\/]:after{content:" (https://cktreefelling.co.za" attr(href) ")";color:#555;font-size:80%}}@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-font-weight{syntax:"*";inherits:false}@property --tw-tracking{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-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{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}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes pulse{50%{opacity:.5}}#mobile-menu-btn[aria-expanded=true] .menu-line-1{transform:translateY(8px)rotate(45deg)}#mobile-menu-btn[aria-expanded=true] .menu-line-2{opacity:0}#mobile-menu-btn[aria-expanded=true] .menu-line-3{transform:translateY(-8px)rotate(-45deg)}.insurance-modal-backdrop{z-index:1000;-webkit-backdrop-filter:blur(12px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s var(--ease-out-expo), visibility .25s;background-color:#0a0c08d9;justify-content:center;align-items:center;padding:1.25rem;display:flex;position:fixed;inset:0}.insurance-modal-backdrop.is-open{opacity:1;visibility:visible;pointer-events:auto}.insurance-modal-container{overscroll-behavior:contain;background:var(--color-bg-card);width:100%;max-width:680px;max-height:calc(100dvh - 2.5rem);transition:transform .25s var(--ease-out-expo);border:1px solid #84cc164d;border-radius:1.25rem;padding:2rem;position:relative;overflow-y:auto;transform:scale(.96)translateY(12px);box-shadow:0 25px 50px -12px #000c,0 0 35px #84cc1626}.insurance-modal-backdrop.is-open .insurance-modal-container{transform:scale(1)translateY(0)}.insurance-modal-close{border:1px solid var(--color-border);width:2.75rem;min-width:44px;height:2.75rem;min-height:44px;color:var(--color-muted);cursor:pointer;background:#ffffff0f;border-radius:9999px;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:1.25rem;right:1.25rem}.insurance-modal-close:hover{color:var(--color-white);border-color:var(--color-lime);background:#84cc1626}.insurance-stat-pill{border:1px solid var(--color-border);text-align:center;background:#ffffff08;border-radius:.875rem;padding:.875rem .75rem;transition:border-color .2s}.insurance-stat-pill:hover{border-color:#84cc1666}@media (width<=640px){.insurance-modal-backdrop{padding:.75rem}.insurance-modal-container{border-radius:1rem;padding:1.5rem 1.125rem}.insurance-modal-close{top:1rem;right:1rem}}@media (width<=380px){.insurance-modal-backdrop{padding:.5rem}.insurance-modal-container{border-radius:.875rem;padding:1.25rem .875rem}.insurance-modal-close{width:2.5rem;height:2.5rem;top:.75rem;right:.75rem}.insurance-stat-pill{padding:.625rem .5rem}}@media (height<=600px) and (orientation:landscape){.insurance-modal-container{max-height:calc(100dvh - 1rem);padding:1rem 1.25rem}.insurance-modal-close{top:.5rem;right:.5rem}}

/* ─── Hero Keyframes ─────────────────────────────────────────── */
@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(30px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ─── Service Areas Directory Styles ─────────────────────────── */
.area-card {
  flex-direction: column;
  text-decoration: none;
  display: flex;
}
.area-link {
  color: var(--color-lime);
  font-size: 0.9rem;
  font-weight: 700;
  font-family: var(--font-display);
  letter-spacing: 0.01em;
  align-items: center;
  gap: 0.35rem;
  margin-top: auto;
  transition: gap 0.2s;
  display: inline-flex;
}
.area-card:hover .area-link {
  gap: 0.65rem;
}

/* ─── Gallery & Video Portfolio Styles ────────────────────────── */
.filter-btn {
  border: 1.5px solid var(--color-border);
  background: var(--color-bg-card);
  color: var(--color-muted);
  font-family: var(--font-display);
  cursor: pointer;
  transition: all 0.25s var(--ease-out-expo);
  white-space: nowrap;
  border-radius: 999px;
  padding: 0.65rem 1.5rem;
  font-size: 0.9rem;
  font-weight: 700;
}
.filter-btn:hover {
  border-color: var(--color-lime);
  color: var(--color-white);
  transform: translateY(-2px);
}
.filter-btn.active {
  background: var(--color-lime);
  border-color: var(--color-lime);
  color: #0c0f0a;
  box-shadow: 0 4px 20px rgba(132, 204, 22, 0.35);
}
.gallery-item-wrapper.hidden {
  display: none !important;
}
.video-card {
  border-radius: 0.875rem;
}
.video-wrapper {
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  position: relative;
  overflow: hidden;
}
.video-wrapper iframe {
  border: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.lightbox-inner {
  flex-direction: column;
  align-items: center;
  max-width: min(92vw, 1100px);
  max-height: calc(100dvh - 3rem);
  display: flex;
  position: relative;
}
.lightbox-caption {
  color: rgba(248, 250, 252, 0.85);
  text-align: center;
  font-size: 0.95rem;
  font-weight: 600;
}
@media (max-width: 640px) {
  .filter-btn {
    min-height: 40px;
    padding: 0.5rem 1rem;
    font-size: 0.8rem;
  }
  .lightbox-inner {
    max-width: 96vw;
    max-height: calc(100dvh - 2rem);
  }
  .lightbox-caption {
    font-size: 0.85rem;
  }
}
@media (max-width: 380px) {
  .filter-btn {
    min-height: 38px;
    padding: 0.4rem 0.85rem;
    font-size: 0.75rem;
  }
}

/* ─── Blog Article Prose Styles ───────────────────────────────── */
.prose-article h2 {
  font-family: var(--font-display);
  color: var(--color-white);
  letter-spacing: -0.015em;
  margin-top: 2.5rem;
  margin-bottom: 1.25rem;
  font-size: 1.65rem;
  font-weight: 800;
}
.prose-article p {
  color: var(--color-muted);
  margin-bottom: 1.5rem;
  font-size: 1.05rem;
  line-height: 1.85;
}
.prose-article ul {
  flex-direction: column;
  gap: 0.875rem;
  margin: 1.25rem 0 2rem;
  padding: 0;
  list-style: none;
  display: flex;
}
.prose-article ul li {
  color: rgba(248, 250, 252, 0.85);
  padding-left: 1.75rem;
  line-height: 1.75;
  position: relative;
}
.prose-article ul li:before {
  content: "→";
  color: var(--color-lime);
  font-weight: 800;
  position: absolute;
  left: 0;
}
.prose-article strong {
  color: var(--color-white);
  font-weight: 700;
}

/* ══════════════════════════════════════════════════════════════════
   PREMIUM POLISH — CK Tree Felling
   Award-quality micro-interactions, missing components, and effects
   ══════════════════════════════════════════════════════════════════ */

/* ─── Testimonial Card (was missing from CSS) ────────────────────── */
.testimonial-card {
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
  background: linear-gradient(145deg, #1c231833 0%, #131810ee 100%);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 1.25rem;
  padding: 1.75rem;
  width: 320px;
  flex-shrink: 0;
  transition: border-color 0.3s var(--ease-out-expo), transform 0.3s var(--ease-out-expo);
  box-shadow: 0 8px 32px -8px rgba(0,0,0,0.6), inset 0 1px rgba(255,255,255,0.07);
  position: relative;
  overflow: hidden;
}
.testimonial-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, rgba(132,204,22,0.35) 50%, transparent 100%);
}
.testimonial-card:hover {
  border-color: rgba(132,204,22,0.35);
  transform: translateY(-3px);
}

/* ─── Stat Number Display (was missing from CSS) ─────────────────── */
.stat-number {
  font-family: var(--font-display);
  font-size: clamp(2.25rem, 5vw, 3.5rem);
  font-weight: 900;
  letter-spacing: -0.04em;
  line-height: 1;
  color: var(--color-white);
  background: linear-gradient(135deg, #fff 0%, rgba(248,250,252,0.75) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* ─── Custom Cursor (desktop only) ───────────────────────────────── */
@media (hover: hover) and (pointer: fine) {
  body { cursor: none; }
  a, button, [role="button"], label[for], [data-open-insurance-modal],
  .service-card, .gallery-item-wrapper, .filter-btn, .whatsapp-fab,
  summary, [onclick] {
    cursor: none;
  }
}
.cursor-dot {
  display: none;
  position: fixed;
  top: -100px; left: -100px;
  width: 8px;
  height: 8px;
  background: var(--color-lime);
  border-radius: 50%;
  pointer-events: none;
  z-index: 99999;
  transform: translate(-50%, -50%);
  opacity: 0;
  transition: opacity 0.3s var(--ease-out-expo),
              width 0.2s var(--ease-out-expo),
              height 0.2s var(--ease-out-expo),
              background 0.2s;
  will-change: transform;
  mix-blend-mode: difference;
}
.cursor-ring {
  display: none;
  position: fixed;
  top: -100px; left: -100px;
  width: 36px;
  height: 36px;
  border: 1.5px solid rgba(132,204,22,0.5);
  border-radius: 50%;
  pointer-events: none;
  z-index: 99998;
  transform: translate(-50%, -50%);
  opacity: 0;
  transition: opacity 0.3s var(--ease-out-expo),
              width 0.35s var(--ease-out-expo),
              height 0.35s var(--ease-out-expo),
              border-color 0.25s;
  will-change: transform;
}
.cursor-dot.cursor-hover {
  width: 12px;
  height: 12px;
  background: #fff;
}
.cursor-ring.cursor-hover {
  width: 52px;
  height: 52px;
  border-color: rgba(132,204,22,0.7);
}
@media (hover: hover) and (pointer: fine) {
  .cursor-dot, .cursor-ring { display: block; }
}


/* ─── Hero Grain Noise Overlay ───────────────────────────────────── */
.hero-grain {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  opacity: 0.038;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23noise)' opacity='1'/%3E%3C/svg%3E");
  background-size: 180px 180px;
}

/* ─── Hero Background Orbs ───────────────────────────────────────── */
.hero-orb {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  filter: blur(80px);
  will-change: transform;
}
.hero-orb-1 {
  width: 600px;
  height: 600px;
  top: -150px;
  left: -100px;
  background: radial-gradient(circle, rgba(132,204,22,0.14) 0%, transparent 70%);
  animation: orb-drift-1 18s ease-in-out infinite alternate;
  z-index: 1;
}
.hero-orb-2 {
  width: 500px;
  height: 500px;
  bottom: 0;
  right: -80px;
  background: radial-gradient(circle, rgba(132,204,22,0.08) 0%, transparent 70%);
  animation: orb-drift-2 24s ease-in-out infinite alternate;
  z-index: 1;
}
@keyframes orb-drift-1 {
  0%   { transform: translate(0, 0) scale(1); }
  50%  { transform: translate(60px, 40px) scale(1.08); }
  100% { transform: translate(20px, 80px) scale(0.95); }
}
@keyframes orb-drift-2 {
  0%   { transform: translate(0, 0) scale(1); }
  50%  { transform: translate(-50px, -30px) scale(1.1); }
  100% { transform: translate(-20px, 20px) scale(0.92); }
}
@media (prefers-reduced-motion: reduce) {
  .hero-orb-1, .hero-orb-2 { animation: none; }
}

/* ─── FAQ Smooth Accordion ───────────────────────────────────────── */
details.faq {
  border: 1px solid var(--color-border);
  border-radius: 0.875rem;
  background: rgba(255,255,255,0.025);
  overflow: hidden;
  transition: border-color 0.25s, background 0.25s, box-shadow 0.25s;
}
details.faq[open] {
  border-color: rgba(132,204,22,0.35);
  background: rgba(132,204,22,0.04);
  box-shadow: 0 4px 24px -8px rgba(0,0,0,0.5), 0 0 0 1px rgba(132,204,22,0.1) inset;
}
details.faq summary {
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.25rem 1.5rem;
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 1rem;
  color: var(--color-white);
  cursor: pointer;
  user-select: none;
  gap: 1rem;
  transition: color 0.2s;
}
details.faq summary::-webkit-details-marker { display: none; }
details.faq[open] summary { color: #fff; }
details.faq summary .faq-icon {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: 1px solid var(--color-border);
  background: rgba(255,255,255,0.05);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.25s, border-color 0.25s, rotate 0.3s var(--ease-out-expo);
}
details.faq[open] summary .faq-icon {
  background: rgba(132,204,22,0.15);
  border-color: rgba(132,204,22,0.4);
  rotate: 45deg;
}
details.faq .faq-body {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.35s var(--ease-out-expo);
}
details.faq[open] .faq-body {
  grid-template-rows: 1fr;
}
details.faq .faq-body-inner {
  overflow: hidden;
  padding: 0 1.5rem 1.5rem;
  color: var(--color-muted);
  font-size: 0.975rem;
  line-height: 1.8;
}

/* ─── Service Card — Shimmer Sweep on Hover ──────────────────────── */
.service-card {
  position: relative;
  overflow: hidden;
}
.service-card::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(
    105deg,
    transparent 30%,
    rgba(255,255,255,0.05) 50%,
    transparent 70%
  );
  transform: translateX(-100%);
  transition: transform 0.6s var(--ease-out-expo);
  pointer-events: none;
  z-index: 5;
}
@media (hover: hover) {
  .service-card:hover::after {
    transform: translateX(100%);
  }
}

/* ─── Nav Active State ───────────────────────────────────────────── */
.nav-link-active {
  color: var(--color-lime) !important;
  background: rgba(132,204,22,0.1) !important;
}
.nav-link-active-mobile {
  color: var(--color-lime) !important;
  background: rgba(132,204,22,0.08) !important;
  border-left: 2px solid var(--color-lime) !important;
}

/* ─── Gallery Item Hover Caption ─────────────────────────────────── */
.gallery-item-wrapper {
  position: relative;
}
.gallery-item-caption {
  position: absolute;
  inset: auto 0 0 0;
  padding: 0.75rem 1rem;
  background: linear-gradient(to top, rgba(8,11,6,0.92) 0%, transparent 100%);
  color: rgba(248,250,252,0.9);
  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  opacity: 0;
  transform: translateY(6px);
  transition: opacity 0.3s var(--ease-out-expo), transform 0.3s var(--ease-out-expo);
  pointer-events: none;
  border-radius: 0 0 0.75rem 0.75rem;
  z-index: 3;
}
@media (hover: hover) {
  .gallery-item-wrapper:hover .gallery-item-caption {
    opacity: 1;
    transform: translateY(0);
  }
}

/* ─── Footer Link Underline Slide ────────────────────────────────── */
.footer-link {
  position: relative;
  display: inline-flex;
  text-decoration: none;
  transition: color 0.2s;
}
.footer-link::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 0;
  height: 1px;
  background: var(--color-lime);
  transition: width 0.28s var(--ease-out-expo);
}
@media (hover: hover) {
  .footer-link:hover::after { width: 100%; }
  .footer-link:hover { color: rgba(248,250,252,0.95); }
}

/* ─── Quote Form Premium Inputs ──────────────────────────────────── */
.form-input,
.form-select,
.form-textarea {
  width: 100%;
  background: rgba(255,255,255,0.04);
  border: 1px solid var(--color-border);
  border-radius: 0.75rem;
  color: var(--color-white);
  font-family: var(--font-body);
  font-size: 0.975rem;
  padding: 0.875rem 1.1rem;
  transition: border-color 0.2s, box-shadow 0.2s, background 0.2s;
  outline: none;
  -webkit-appearance: none;
  appearance: none;
}
.form-input::placeholder,
.form-textarea::placeholder {
  color: rgba(120,130,112,0.7);
}
.form-input:focus,
.form-select:focus,
.form-textarea:focus {
  border-color: rgba(132,204,22,0.6);
  background: rgba(132,204,22,0.04);
  box-shadow: 0 0 0 3px rgba(132,204,22,0.12), 0 1px 3px rgba(0,0,0,0.3);
}
.form-input:user-valid,
.form-textarea:user-valid {
  border-color: rgba(132,204,22,0.5);
}
.form-input:user-invalid,
.form-textarea:user-invalid {
  border-color: rgba(239,68,68,0.5);
}
.form-select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2384cc16' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1rem center;
  background-size: 16px;
  padding-right: 2.75rem;
  cursor: pointer;
}
.form-select option {
  background: var(--color-bg-card);
  color: var(--color-white);
}
.form-label {
  display: block;
  font-family: var(--font-display);
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(248,250,252,0.65);
  margin-bottom: 0.5rem;
}
.form-group {
  display: flex;
  flex-direction: column;
}
.form-error {
  font-size: 0.78rem;
  color: #f87171;
  margin-top: 0.35rem;
  display: none;
}
.form-input:user-invalid ~ .form-error { display: block; }

/* ─── Synchronized Floating Action Buttons ────────────────────────── */
.whatsapp-fab {
  position: fixed !important;
  z-index: 9999;
  border-radius: 50%;
  background-color: #25d366;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  touch-action: manipulation;
  box-shadow: 0 6px 25px rgba(37, 211, 102, 0.45);
  transition: transform 0.25s var(--ease-out-expo), box-shadow 0.25s;
  width: 3.5rem;
  height: 3.5rem;
  min-width: 48px;
  min-height: 48px;
  bottom: max(1.5rem, calc(1rem + var(--sab, 0px)));
  right: max(1.5rem, calc(1rem + var(--sar, 0px)));
}
.whatsapp-fab:hover {
  transform: scale(1.08);
  box-shadow: 0 10px 35px rgba(37, 211, 102, 0.6);
}
.whatsapp-fab:active {
  transform: scale(0.96);
}
.whatsapp-fab::before,
.whatsapp-fab::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 2px solid #25d366;
  opacity: 0;
  animation: wa-pulse 3s ease-out infinite;
  pointer-events: none;
}
.whatsapp-fab::after {
  animation-delay: 1.5s;
}
@keyframes wa-pulse {
  0%   { transform: scale(1);   opacity: 0.6; }
  100% { transform: scale(1.9); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .whatsapp-fab::before,
  .whatsapp-fab::after { animation: none; }
}

.scroll-top-btn {
  position: fixed !important;
  z-index: 9998;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(22, 29, 19, 0.92);
  border: 1px solid var(--color-border);
  color: var(--color-muted);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  transition: opacity 0.3s var(--ease-out-expo),
              visibility 0.3s,
              transform 0.3s var(--ease-out-expo),
              border-color 0.2s,
              color 0.2s,
              background 0.2s;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
  bottom: max(5.75rem, calc(5.25rem + var(--sab, 0px)));
  right: max(1.75rem, calc(1.25rem + var(--sar, 0px)));
}
.scroll-top-btn.visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.scroll-top-btn:hover {
  border-color: rgba(132, 204, 22, 0.5);
  color: var(--color-lime);
  background: rgba(132, 204, 22, 0.12);
}
.scroll-top-btn:active {
  transform: translateY(2px);
}

@media (max-width: 640px) {
  .whatsapp-fab {
    width: 3.125rem;
    height: 3.125rem;
    min-width: 44px;
    min-height: 44px;
    bottom: max(1rem, var(--sab, 0px));
    right: max(1rem, var(--sar, 0px));
  }
  .scroll-top-btn {
    width: 40px;
    height: 40px;
    bottom: max(4.75rem, calc(4.25rem + var(--sab, 0px)));
    right: max(1.15rem, var(--sar, 0px));
  }
}
@media (max-width: 380px) {
  .whatsapp-fab {
    width: 2.875rem;
    height: 2.875rem;
    bottom: max(0.75rem, var(--sab, 0px));
    right: max(0.75rem, var(--sar, 0px));
  }
  .scroll-top-btn {
    width: 38px;
    height: 38px;
    bottom: max(4.15rem, calc(3.75rem + var(--sab, 0px)));
    right: max(0.85rem, var(--sar, 0px));
  }
}

/* ─── Section Accent Divider ─────────────────────────────────────── */
.section-divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  margin-block: 0;
  opacity: 0.35;
}
.section-divider::before,
.section-divider::after {
  content: '';
  flex: 1;
  height: 1px;
  background: linear-gradient(to right, transparent, var(--color-border), transparent);
}

/* ─── Enhanced Hero Headline Tracking ────────────────────────────── */
@media (max-width: 640px) {
  .hero-headline { letter-spacing: -0.02em; }
}
@media (min-width: 1024px) {
  .hero-headline { letter-spacing: -0.04em; }
}

/* ─── Image Preload / Loading Shimmer ───────────────────────────── */
.img-shimmer {
  position: relative;
  overflow: hidden;
  background: var(--color-bg-card);
}
.img-shimmer::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(255,255,255,0.04) 50%,
    transparent 100%
  );
  animation: shimmer-sweep 1.6s ease-in-out infinite;
}
@keyframes shimmer-sweep {
  0%   { transform: translateX(-100%); }
  100% { transform: translateX(100%); }
}

/* ─── Card Subtle Inner Glow on Focus-Within ────────────────────── */
.card:focus-within {
  border-color: rgba(132,204,22,0.4);
  box-shadow: 0 20px 45px -12px rgba(0,0,0,0.8), 0 0 20px rgba(132,204,22,0.12), inset 0 1px rgba(255,255,255,0.12);
}

/* ─── About Section Image Frame ──────────────────────────────────── */
.about-img-frame {
  position: relative;
  border-radius: 1.25rem;
  overflow: hidden;
  box-shadow: 0 25px 60px -15px rgba(0,0,0,0.7);
}
.about-img-frame::after {
  content: '';
  position: absolute;
  inset: 0;
  border: 1px solid rgba(132,204,22,0.2);
  border-radius: 1.25rem;
  pointer-events: none;
}

/* ─── Text Selection Highlight (already in base but reinforcing) ── */
::selection {
  background: var(--color-lime);
  color: #090c07;
  text-shadow: none;
}


/* ══════════════════════════════════════════════════════════════════
   COMPREHENSIVE LAYOUT & SPACING SYSTEM
   Pixel-perfect fluid padding, margins, card grids, and media queries
   ══════════════════════════════════════════════════════════════════ */

/* ─── 1. Unified Fluid Section Padding ────────────────────────────── */
.section-pad {
  padding-block: clamp(3.25rem, 6.5vw, 6.75rem) !important;
}
.section-pad-sm {
  padding-block: clamp(2rem, 4.5vw, 4rem) !important;
}
@media (max-width: 640px) {
  .section-pad {
    padding-block: clamp(2.75rem, 7vw, 3.75rem) !important;
  }
  .section-pad-sm {
    padding-block: clamp(1.75rem, 5vw, 2.5rem) !important;
  }
}
@media (min-width: 1440px) {
  .section-pad {
    padding-block: 7.5rem !important;
  }
  .section-pad-sm {
    padding-block: 4.5rem !important;
  }
}

/* ─── 2. Subpage Hero Responsive Clearance ────────────────────────── */
.page-hero {
  position: relative;
  overflow: hidden;
  padding-top: clamp(6.25rem, 14vh, 7.25rem) !important;
  padding-bottom: clamp(2.5rem, 5vw, 3.5rem) !important;
  background: var(--color-bg-surface);
  border-bottom: 1px solid var(--color-border);
}
@media (min-width: 768px) {
  .page-hero {
    padding-top: clamp(8rem, 16vh, 9.5rem) !important;
    padding-bottom: clamp(3.5rem, 6vw, 4.5rem) !important;
  }
}
@media (min-width: 1024px) {
  .page-hero {
    padding-top: clamp(9.5rem, 18vh, 11.5rem) !important;
    padding-bottom: clamp(4rem, 7vw, 5.5rem) !important;
  }
}

/* ─── 3. Container Fluid Gutters ─────────────────────────────────── */
@media (max-width: 380px) {
  .container,
  .container-wide {
    padding-inline: max(0.875rem, var(--sal, 0px)) !important;
  }
}
@media (min-width: 381px) and (max-width: 640px) {
  .container,
  .container-wide {
    padding-inline: max(1.25rem, var(--sal, 0px)) !important;
  }
}

/* ─── 4. Service Cards Responsive Layout ─────────────────────────── */
@media (max-width: 640px) {
  .service-card {
    aspect-ratio: 16/11 !important;
    min-height: 250px !important;
    border-radius: 1rem !important;
  }
  .service-card .content {
    padding: 1.15rem !important;
  }
  .service-card .content h3 {
    font-size: clamp(1.15rem, 4.5vw, 1.35rem);
    margin-bottom: 0.25rem;
  }
  .service-card .content p {
    font-size: 0.825rem;
    margin-bottom: 0.5rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
}
@media (max-width: 380px) {
  .service-card {
    min-height: 230px !important;
    aspect-ratio: auto !important;
  }
  .service-card .content {
    padding: 0.95rem !important;
  }
}

/* ─── 5. About Section Stats Grid on Mobile ──────────────────────── */
@media (max-width: 440px) {
  #about .grid.grid-cols-2 {
    gap: 0.65rem !important;
  }
  #about .grid.grid-cols-2 .card {
    padding: 0.85rem 0.5rem !important;
    border-radius: 0.75rem !important;
  }
  #about .stat-number {
    font-size: clamp(1.6rem, 7.5vw, 2.1rem) !important;
    letter-spacing: -0.02em !important;
  }
}

/* ─── 6. Testimonial Card Width & Padding ────────────────────────── */
.testimonial-card {
  width: min(340px, calc(100vw - 2.5rem)) !important;
  padding: clamp(1.15rem, 3.5vw, 1.75rem) !important;
}
@media (max-width: 380px) {
  .testimonial-card {
    width: calc(100vw - 1.75rem) !important;
    padding: 1.1rem 0.875rem !important;
    border-radius: 1rem !important;
  }
}

/* ─── 7. Hero CTA Buttons on Mobile ──────────────────────────────── */
@media (max-width: 480px) {
  #hero .flex.flex-wrap.gap-4 {
    flex-direction: column;
    align-items: stretch;
    gap: 0.75rem !important;
  }
  #hero .flex.flex-wrap.gap-4 a,
  #hero .flex.flex-wrap.gap-4 button {
    width: 100% !important;
    justify-content: center !important;
    padding: 0.875rem 1.25rem !important;
  }
  .hero-headline {
    font-size: clamp(2.1rem, 9.5vw, 3rem) !important;
    line-height: 1.05 !important;
    margin-bottom: 1.25rem !important;
  }
}

/* ─── 8. FAQ Accordion Spacing ───────────────────────────────────── */
details.faq {
  margin-bottom: 0.875rem !important;
}
details.faq summary {
  padding: clamp(1rem, 2.5vw, 1.25rem) clamp(1.15rem, 3vw, 1.5rem) !important;
  gap: 0.75rem !important;
}
details.faq .faq-body-inner {
  padding: 0 clamp(1.15rem, 3vw, 1.5rem) clamp(1rem, 2.5vw, 1.35rem) !important;
  font-size: 0.95rem !important;
  line-height: 1.75 !important;
}

/* ─── 9. Form Inputs & Selection Cards ───────────────────────────── */
.form-field {
  display: flex;
  flex-direction: column;
}
.form-label {
  margin-bottom: 0.45rem !important;
}
.form-input,
.form-select,
.form-textarea {
  min-height: 48px;
  padding: 0.85rem 1.1rem !important;
}
@media (max-width: 640px) {
  .form-input,
  .form-select,
  .form-textarea {
    min-height: 46px;
    padding: 0.75rem 0.95rem !important;
    font-size: 0.925rem;
  }
  form[name=quote-request] label.card {
    padding: 0.875rem 1rem !important;
    gap: 0.75rem !important;
  }
  form[name=quote-request] .grid.grid-cols-1.sm\:grid-cols-2 {
    gap: 0.75rem !important;
  }
}

/* ─── 10. Gallery Masonry Column Scale ───────────────────────────── */
.gallery-grid {
  column-count: 1;
  column-gap: 1rem;
}
@media (min-width: 640px) {
  .gallery-grid {
    column-count: 2;
    column-gap: 1.25rem;
  }
}
@media (min-width: 1024px) {
  .gallery-grid {
    column-count: 3;
    column-gap: 1.5rem;
  }
}
@media (min-width: 1440px) {
  .gallery-grid {
    column-count: 4;
    column-gap: 1.75rem;
  }
}
.gallery-item-wrapper {
  margin-bottom: 1.25rem !important;
  break-inside: avoid;
}

/* ─── 11. Areas Directory Suburb Cards ───────────────────────────── */
.area-card {
  padding: clamp(1.25rem, 3vw, 1.75rem) !important;
  border-radius: 1rem !important;
}

/* ─── 12. Blog Article Prose Fluid Spacing ───────────────────────── */
.prose-article h2 {
  font-size: clamp(1.35rem, 4vw, 1.75rem) !important;
  margin-top: clamp(1.75rem, 4vw, 2.5rem) !important;
  margin-bottom: clamp(0.75rem, 2vw, 1.25rem) !important;
}
.prose-article p {
  font-size: clamp(0.95rem, 1.8vw, 1.05rem) !important;
  margin-bottom: clamp(1rem, 2.5vw, 1.5rem) !important;
}
.prose-article ul {
  margin: clamp(1rem, 2vw, 1.5rem) 0 clamp(1.25rem, 2.5vw, 2rem) !important;
  gap: 0.75rem !important;
}

/* ─── 13. Mobile Menu Safe Clearance ─────────────────────────────── */
#mobile-menu {
  padding-bottom: max(2.5rem, calc(1.5rem + var(--sab, 0px))) !important;
}
@media (max-width: 360px) {
  #mobile-menu .grid.grid-cols-2 {
    grid-template-columns: 1fr !important;
  }
}

/* ─── 14. Footer Mobile Clearance ────────────────────────────────── */
footer {
  padding-bottom: max(1.5rem, var(--sab, 0px));
}
@media (max-width: 768px) {
  footer {
    padding-bottom: max(5.25rem, calc(4.25rem + var(--sab, 0px))) !important;
  }
}


/* ══════════════════════════════════════════════════════════════════
   DESKTOP NAVIGATION SPACING & DROPDOWN CLEARANCE
   Fixes dropdown overlap, adds proper margins and link padding
   ══════════════════════════════════════════════════════════════════ */

/* Desktop nav list gap */
.site-nav ul[role="list"] {
  gap: 0.5rem !important;
}
@media (min-width: 1280px) {
  .site-nav ul[role="list"] {
    gap: 0.875rem !important;
  }
}

/* Nav link padding & margins */
.site-nav ul[role="list"] > li {
  position: relative;
  padding-block: 0.35rem !important;
}
.site-nav ul[role="list"] > li > a {
  padding: 0.5rem 0.875rem !important;
  border-radius: 0.75rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.015em !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.35rem !important;
  transition: color 0.2s, background-color 0.2s !important;
}
@media (min-width: 1280px) {
  .site-nav ul[role="list"] > li > a {
    padding: 0.55rem 1rem !important;
  }
}

/* Dropdown Container Position & Clearance */
.site-nav .group\/nav > div.absolute {
  top: calc(100% + 0.65rem) !important;
  left: 0 !important;
  padding-top: 0.25rem !important;
  width: 19.5rem !important;
  z-index: 60 !important;
}

/* Hover bridge: ensures mouse can traverse the margin without losing hover */
.site-nav .group\/nav > div.absolute::before {
  content: '';
  position: absolute;
  top: -0.85rem;
  left: 0;
  right: 0;
  height: 0.85rem;
  background: transparent;
}

/* Dropdown Card Interior Padding & Glassmorphism */
.site-nav .group\/nav > div.absolute > div {
  padding: 1rem !important;
  border-radius: 1.25rem !important;
  border: 1px solid rgba(132, 204, 22, 0.25) !important;
  background: rgba(16, 21, 14, 0.98) !important;
  -webkit-backdrop-filter: blur(24px) !important;
  backdrop-filter: blur(24px) !important;
  box-shadow: 0 25px 60px -10px rgba(0, 0, 0, 0.85),
              0 0 30px rgba(132, 204, 22, 0.08),
              inset 0 1px rgba(255, 255, 255, 0.08) !important;
}

/* Dropdown Top Action Button ("All Service Areas") */
.site-nav .group\/nav > div.absolute a[href="/areas"].flex.items-center.justify-between {
  padding: 0.75rem 1rem !important;
  margin-bottom: 0.75rem !important;
  border-radius: 0.875rem !important;
  font-size: 0.875rem !important;
  font-weight: 700 !important;
}

/* Suburb Links in Dropdown */
.site-nav .group\/nav > div.absolute .flex-col > a:not(.group\/item) {
  padding: 0.55rem 0.85rem !important;
  margin-block: 0.1rem !important;
  border-radius: 0.65rem !important;
  font-size: 0.85rem !important;
  transition: background 0.15s, color 0.15s !important;
}
.site-nav .group\/nav > div.absolute .flex-col > a:not(.group\/item):hover {
  background: rgba(255, 255, 255, 0.08) !important;
  color: #fff !important;
}

/* Services Dropdown Header ("Our Tree Services") */
.site-nav .group\/nav > div.absolute .uppercase.tracking-wider {
  padding: 0.35rem 0.5rem 0.65rem !important;
  margin-bottom: 0.5rem !important;
  font-size: 0.75rem !important;
  letter-spacing: 0.08em !important;
}

/* Services Dropdown Item Rows */
.site-nav .group\/nav > div.absolute .flex-col > a.group\/item {
  padding: 0.65rem 0.75rem !important;
  margin-bottom: 0.25rem !important;
  border-radius: 0.75rem !important;
}

/* Dropdown Bottom Footer Link */
.site-nav .group\/nav > div.absolute .mt-2.pt-2 {
  margin-top: 0.75rem !important;
  padding-top: 0.65rem !important;
}


/* ─── Hero Typography, Buttons & Trust Badges Spacing ────────────── */
:root {
  --spacing: 0.25rem;
}

.hero-subheadline {
  margin-bottom: clamp(2rem, 3.5vw, 2.75rem) !important;
  line-height: 1.75 !important;
}

.hero-cta-buttons {
  margin-top: 0 !important;
  margin-bottom: clamp(2.25rem, 4vw, 3.25rem) !important;
  gap: 1rem !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
}
.hero-cta-buttons a,
.hero-cta-buttons button {
  min-height: 52px !important;
  padding: 0.95rem 1.85rem !important;
  border-radius: 0.875rem !important;
  font-size: 0.975rem !important;
  font-weight: 700 !important;
}
@media (max-width: 480px) {
  .hero-cta-buttons {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0.85rem !important;
    margin-bottom: 2rem !important;
  }
  .hero-cta-buttons a,
  .hero-cta-buttons button {
    width: 100% !important;
    justify-content: center !important;
  }
}

.hero-trust-bar {
  margin-top: clamp(2rem, 3.5vw, 2.75rem) !important;
  padding-top: clamp(1.5rem, 3vw, 2.25rem) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
  gap: clamp(0.75rem, 2vw, 1.25rem) !important;
}
.hero-trust-bar .trust-pill {
  padding: 0.85rem 1rem !important;
  border-radius: 0.875rem !important;
  gap: 0.85rem !important;
  background: rgba(18, 24, 15, 0.75) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  transition: border-color 0.2s, background-color 0.2s, transform 0.2s !important;
}
.hero-trust-bar .trust-pill:hover {
  background: rgba(255, 255, 255, 0.08) !important;
  border-color: rgba(132, 204, 22, 0.4) !important;
  transform: translateY(-2px);
}


/* ══════════════════════════════════════════════════════════════════
   SHARED COMPONENT CLASSES — HARMONIZED PADDING & MARGINS
   Standardizes spacing across cards, section headers, buttons & grids
   ══════════════════════════════════════════════════════════════════ */

/* ─── 1. Missing Utility Classes ─────────────────────────────────── */
.w-80 { width: 20rem !important; }
@media (min-width: 1280px) {
  .xl\:gap-2\.5 { gap: 0.625rem !important; }
  .xl\:gap-3\.5 { gap: 0.875rem !important; }
}
.mobile-menu-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.75rem 1rem !important;
  border-radius: 0.75rem !important;
  font-size: 0.95rem;
  font-weight: 600;
  transition: background-color 0.15s, color 0.15s;
}
.insurance-modal-header {
  margin-bottom: 1.5rem !important;
  padding-bottom: 1.25rem !important;
  border-bottom: 1px solid var(--color-border);
}
.insurance-shield-wrapper {
  position: relative;
}
.group\/item:hover .group-hover\/item\:text-lime-400,
.group-hover\:item\:text-lime-400 {
  color: var(--color-lime) !important;
}
.shadow-\[0_0_25px_rgba\(220\,38\,38\,0\.45\)\] {
  box-shadow: 0 0 25px rgba(220, 38, 38, 0.45) !important;
}
.hover\:shadow-\[0_0_35px_rgba\(220\,38\,38\,0\.7\)\]:hover {
  box-shadow: 0 0 35px rgba(220, 38, 38, 0.7) !important;
}
.max-h-\[calc\(100dvh-4\.5rem\)\] {
  max-height: calc(100dvh - 4.5rem) !important;
}
.from-\[var\(--color-bg-deep\)\] {
  --tw-gradient-from: var(--color-bg-deep) !important;
}
.via-\[var\(--color-bg-deep\)\]\/70 {
  --tw-gradient-via: rgba(9, 12, 7, 0.7) !important;
}
.bg-\[radial-gradient\(#ef4444_1px\,transparent_1px\)\] {
  background-image: radial-gradient(#ef4444 1px, transparent 1px) !important;
}
.\[background-size\:16px_16px\] {
  background-size: 16px 16px !important;
}

/* ─── 2. Section Header Containers ───────────────────────────────── */
.text-center.mb-16,
.text-center.mb-12,
.flex.items-end.justify-between.mb-12 {
  margin-bottom: clamp(2.5rem, 5vw, 3.75rem) !important;
}
@media (max-width: 640px) {
  .text-center.mb-16,
  .text-center.mb-12,
  .flex.items-end.justify-between.mb-12 {
    margin-bottom: 2rem !important;
  }
}

/* ─── 3. Eyebrow Badge Labels (.label) ───────────────────────────── */
.label {
  display: inline-flex !important;
  align-items: center !important;
  padding: 0.35rem 0.85rem !important;
  margin-bottom: clamp(0.75rem, 2vw, 1.25rem) !important;
  font-size: 0.75rem !important;
  font-weight: 800 !important;
  border-radius: 9999px !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  width: fit-content !important;
}

/* ─── 4. Card Component Harmonization (.card) ────────────────────── */
.card {
  border-radius: 1.125rem !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
}
@media (max-width: 640px) {
  .card:not(#about .card):not(label.card):not(.service-card) {
    padding: clamp(1.15rem, 3.5vw, 1.5rem) !important;
  }
}

/* ─── 5. Button Groups & Touch Target Spacing ────────────────────── */
.btn-primary,
.btn-emergency,
.btn-outline {
  min-height: 48px !important;
  padding: clamp(0.85rem, 2vw, 0.95rem) clamp(1.35rem, 3vw, 1.85rem) !important;
  font-weight: 700 !important;
  border-radius: 0.75rem !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.625rem !important;
}
@media (max-width: 480px) {
  #cta .flex.flex-wrap.gap-4 a,
  .section-pad .flex.flex-wrap.gap-4 a.btn-primary,
  .section-pad .flex.flex-wrap.gap-4 a.btn-emergency {
    width: 100% !important;
    text-align: center !important;
  }
}

/* ─── 6. Suburb Pills in Areas Section (#areas) ──────────────────── */
#areas .flex.flex-wrap a {
  padding: clamp(0.55rem, 1.8vw, 0.75rem) clamp(1rem, 2.5vw, 1.35rem) !important;
  border-radius: 9999px !important;
  font-size: clamp(0.8rem, 1.8vw, 0.875rem) !important;
  margin-bottom: 0.25rem !important;
  gap: 0.5rem !important;
  transition: transform 0.2s, background-color 0.2s, border-color 0.2s !important;
}
#areas .flex.flex-wrap a:hover {
  transform: translateY(-2px);
}
#areas .text-center.mt-10 {
  margin-top: clamp(2rem, 4vw, 3rem) !important;
}

/* ─── 7. Insurance Shield Card & 4 Pillars Grid (#insurance) ──────── */
#insurance .insurance-shield-wrapper .card {
  padding: clamp(1.5rem, 4vw, 3rem) !important;
  border-radius: 1.5rem !important;
}
#insurance .grid.grid-cols-1.sm\:grid-cols-2.lg\:grid-cols-4 {
  gap: clamp(0.875rem, 2vw, 1.25rem) !important;
  padding-top: clamp(1.5rem, 3vw, 2.25rem) !important;
}
#insurance .grid.grid-cols-1.sm\:grid-cols-2.lg\:grid-cols-4 > div {
  padding: clamp(1rem, 2.5vw, 1.25rem) !important;
  border-radius: 0.875rem !important;
  gap: 0.875rem !important;
}

/* ─── 8. Video Cards Spacing (#videos) ───────────────────────────── */
#videos .grid {
  gap: clamp(1.25rem, 3vw, 1.75rem) !important;
}
#videos .card {
  border-radius: 1.125rem !important;
}

/* ─── 9. Testimonials Section Spacing (#testimonials) ────────────── */
#testimonials .marquee-track {
  padding-block: 0.75rem !important;
  gap: 1.5rem !important;
}

/* ─── 10. CTA Section Spacing (#cta) ─────────────────────────────── */
#cta .display-lg {
  margin-bottom: clamp(1.25rem, 2.5vw, 1.75rem) !important;
}
#cta p {
  margin-bottom: clamp(2rem, 4vw, 2.75rem) !important;
}
#cta .flex.flex-wrap.gap-4 {
  gap: clamp(0.875rem, 2vw, 1.25rem) !important;
}

/* ─── 11. Footer Elements Spacing ────────────────────────────────── */
footer .relative.overflow-hidden.py-5 {
  padding-block: clamp(1.15rem, 2.5vw, 1.6rem) !important;
}
footer .container-wide.py-12 {
  padding-top: clamp(2.5rem, 5vw, 4rem) !important;
  padding-bottom: clamp(2.5rem, 5vw, 3.5rem) !important;
}
footer .grid.grid-cols-1.sm\:grid-cols-2.lg\:grid-cols-4 {
  gap: clamp(2rem, 4vw, 3rem) !important;
}
footer ul.space-y-2\.5,
footer ul {
  gap: 0.65rem !important;
}

/* ─── 12. Subpage Service Feature Grids ──────────────────────────── */
.page-hero + .section-pad .grid.lg\:grid-cols-12 {
  gap: clamp(2rem, 4vw, 3.5rem) !important;
}
.page-hero + .section-pad .card.p-8 {
  padding: clamp(1.5rem, 3.5vw, 2.5rem) !important;
}

/* ─── 13. Tier-1 Operational Elevations (Champion Finish) ────────── */
/* OpenType Tabular Figures & Numerical Precision */
.stat-number,
[data-count],
.hero-headline,
a[href^="tel:"],
.font-mono {
  font-feature-settings: "tnum" 1, "zero" 1, "calt" 1;
  font-variant-numeric: tabular-nums;
}

/* Mobile Hero Trust Bar Glide (Eliminates text truncation) */
@media (max-width: 640px) {
  .hero-trust-bar {
    display: flex !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory;
    gap: 0.75rem !important;
    padding-bottom: 0.5rem !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .hero-trust-bar::-webkit-scrollbar {
    display: none;
  }
  .hero-trust-bar .trust-pill {
    flex-shrink: 0 !important;
    scroll-snap-align: start;
    min-width: fit-content !important;
  }
  .hero-trust-bar .truncate {
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
  }
}

/* Progressive Optical Scrim on Mobile Hero (WCAG AAA Contrast) */
@media (max-width: 768px) {
  #hero .absolute.inset-0:first-child::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
      to top,
      rgba(9, 12, 7, 0.96) 0%,
      rgba(9, 12, 7, 0.85) 45%,
      rgba(9, 12, 7, 0.6) 80%,
      rgba(9, 12, 7, 0.35) 100%
    );
    pointer-events: none;
    z-index: 1;
  }
}

/* Search Crawler & Immediate Anchor Safety */
@media print {
  [data-reveal] {
    opacity: 1 !important;
    transform: none !important;
  }
}

