@charset "utf-8";

*, ::before, ::after { box-sizing: border-box; }

body { font-family: Montserrat, sans-serif; color: rgb(86, 86, 86); }

html { scroll-behavior: smooth; }

#sticky-nav { position: relative; top: 0px; z-index: 100; box-shadow: rgba(0, 0, 0, 0.25) 0px 2px 12px; }

#banner-bg:after {
    content: "";
    width: 100%;
    position: absolute;
    height: 100%;
    margin: auto;
    background: rgba(255,255,255,.75);
    inset: 0;
}

@media (width > 40rem) { #sticky-nav {position: sticky} }

#urgency-bar { background: rgb(26, 46, 74); }

.btn-primary { background: rgb(127, 168, 41); color: rgb(255, 255, 255); font-family: Montserrat, sans-serif; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; border-radius: 9999px; transition: background 0.2s, transform 0.15s, box-shadow 0.2s; box-shadow: rgba(127, 168, 41, 0.45) 0px 4px 18px; display: inline-block; }

.btn-primary:hover { background: rgb(106, 144, 35); transform: translateY(-1px); box-shadow: rgba(127, 168, 41, 0.6) 0px 6px 24px; color:white}

.btn-primary:active { transform: translateY(0px); }

.btn-pulse { animation: 2.2s ease-out 0s infinite normal none running pulse-ring; }

@keyframes pulse-ring { 
  0% { box-shadow: rgba(127, 168, 41, 0.55) 0px 0px 0px 0px, rgba(127, 168, 41, 0.45) 0px 4px 18px; }
  70% { box-shadow: rgba(127, 168, 41, 0) 0px 0px 0px 14px, rgba(127, 168, 41, 0.45) 0px 4px 18px; }
  100% { box-shadow: rgba(127, 168, 41, 0) 0px 0px 0px 0px, rgba(127, 168, 41, 0.45) 0px 4px 18px; }
}

.btn-secondary { background: transparent; color: rgb(86, 86, 86); border: 2px solid rgb(204, 204, 204); font-family: Montserrat, sans-serif; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; border-radius: 9999px; transition: border-color 0.2s, color 0.2s; display: inline-block; }

.btn-secondary:hover { border-color: rgb(127, 168, 41); color: rgb(127, 168, 41); }

.btn-outline-white { border: 2px solid rgb(255, 255, 255); color: rgb(255, 255, 255); font-family: Montserrat, sans-serif; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; border-radius: 9999px; transition: background 0.2s, color 0.2s; display: inline-block; }

.btn-outline-white:hover { background: rgb(255, 255, 255); color: rgb(26, 46, 74); }

.phone-link { transition: color 0.15s; }

.phone-link:hover { color: rgb(127, 168, 41); }

.accent-line { width: 48px; height: 3px; background: rgb(127, 168, 41); display: inline-block; vertical-align: middle; }

.check-list li { padding-left: 1.5rem; position: relative; line-height: 1.6; }

.check-list li::before { content: "✓"; color: rgb(127, 168, 41); font-weight: 700; position: absolute; left: 0px; }

.prog-card { border-radius: 12px; overflow: hidden; box-shadow: rgba(0, 0, 0, 0.12) 0px 4px 20px; }

.prog-card-img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; display: block; }

.prog-card-body { background: rgb(86, 86, 86); padding: 1.25rem 1rem; }

.circle-img { width: 130px; height: 130px; border-radius: 50%; object-fit: cover; border: 4px solid rgb(127, 168, 41); box-shadow: rgba(0, 0, 0, 0.15) 0px 4px 14px; }

.review-card { flex-shrink: 0; width: 270px; scroll-snap-align: start; background: rgb(255, 255, 255); border: 1px solid rgb(229, 231, 235); border-radius: 10px; padding: 1rem; box-shadow: rgba(0, 0, 0, 0.07) 0px 2px 10px; }

.review-row { display: flex; gap: 0.875rem; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding-bottom: 0.5rem; }

.review-row::-webkit-scrollbar { display: none; }

.stat-card { text-align: center; padding: 1.5rem 1rem; }

.lines-bg { background-image: url("https://d9hhrg4mnvzow.cloudfront.net/www.serenitygrove.com/substance-abuse/29b8546b-serenity-grove-lines-bg-2_10000001jk0sy000004028.png"); background-color: rgb(255, 255, 255); background-size: cover; background-position: center top; }

.leaf-bg { background-image: url("https://d9hhrg4mnvzow.cloudfront.net/www.serenitygrove.com/substance-abuse/6f6add5a-serenity-grove-leaf-background-1_10000001eb0jg02m000028.png"); background-color: rgb(86, 86, 86); background-size: cover; background-position: center center; }

.reveal { opacity: 0; transform: translateY(28px); transition: opacity 0.6s, transform 0.6s; }

.reveal.visible { opacity: 1; transform: translateY(0px); }

.reveal-delay-1 { transition-delay: 0.1s; }

.reveal-delay-2 { transition-delay: 0.2s; }

.reveal-delay-3 { transition-delay: 0.3s; }

.reveal-delay-4 { transition-delay: 0.4s; }

.mobile-cta { position: fixed; bottom: 0px; left: 0px; right: 0px; z-index: 200; box-shadow: rgba(0, 0, 0, 0.2) 0px -3px 16px; }

.section-label { font-family: Montserrat, sans-serif; font-weight: 600; color: rgb(127, 168, 41); letter-spacing: 0.18em; text-transform: uppercase; font-size: 0.75rem; }

.overlay-card img { transition: transform 0.4s; }

.overlay-card:hover img { transform: scale(1.04); }


.trust-strip { background: rgb(248, 249, 246); border-top: 3px solid rgb(127, 168, 41); border-bottom: 1px solid rgb(224, 230, 208); }

.urgency-callout { background: linear-gradient(135deg, rgb(26, 46, 74) 0%, rgb(12, 92, 148) 100%); border-left: 4px solid rgb(127, 168, 41); }
@charset "utf-8";

*, ::before, ::after { --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; --tw-skew-x: 0; --tw-skew-y: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-pan-x: ; --tw-pan-y: ; --tw-pinch-zoom: ; --tw-scroll-snap-strictness: proximity; --tw-gradient-from-position: ; --tw-gradient-via-position: ; --tw-gradient-to-position: ; --tw-ordinal: ; --tw-slashed-zero: ; --tw-numeric-figure: ; --tw-numeric-spacing: ; --tw-numeric-fraction: ; --tw-ring-inset: ; --tw-ring-offset-width: 0px; --tw-ring-offset-color: #fff; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-shadow: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-shadow-colored: 0 0 #0000; --tw-blur: ; --tw-brightness: ; --tw-contrast: ; --tw-grayscale: ; --tw-hue-rotate: ; --tw-invert: ; --tw-saturate: ; --tw-sepia: ; --tw-drop-shadow: ; --tw-backdrop-blur: ; --tw-backdrop-brightness: ; --tw-backdrop-contrast: ; --tw-backdrop-grayscale: ; --tw-backdrop-hue-rotate: ; --tw-backdrop-invert: ; --tw-backdrop-opacity: ; --tw-backdrop-saturate: ; --tw-backdrop-sepia: ; --tw-contain-size: ; --tw-contain-layout: ; --tw-contain-paint: ; --tw-contain-style: ; }

::backdrop { --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; --tw-skew-x: 0; --tw-skew-y: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-pan-x: ; --tw-pan-y: ; --tw-pinch-zoom: ; --tw-scroll-snap-strictness: proximity; --tw-gradient-from-position: ; --tw-gradient-via-position: ; --tw-gradient-to-position: ; --tw-ordinal: ; --tw-slashed-zero: ; --tw-numeric-figure: ; --tw-numeric-spacing: ; --tw-numeric-fraction: ; --tw-ring-inset: ; --tw-ring-offset-width: 0px; --tw-ring-offset-color: #fff; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-shadow: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-shadow-colored: 0 0 #0000; --tw-blur: ; --tw-brightness: ; --tw-contrast: ; --tw-grayscale: ; --tw-hue-rotate: ; --tw-invert: ; --tw-saturate: ; --tw-sepia: ; --tw-drop-shadow: ; --tw-backdrop-blur: ; --tw-backdrop-brightness: ; --tw-backdrop-contrast: ; --tw-backdrop-grayscale: ; --tw-backdrop-hue-rotate: ; --tw-backdrop-invert: ; --tw-backdrop-opacity: ; --tw-backdrop-saturate: ; --tw-backdrop-sepia: ; --tw-contain-size: ; --tw-contain-layout: ; --tw-contain-paint: ; --tw-contain-style: ; }

*, ::after, ::before { box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 231, 235); }

::after, ::before { --tw-content: ''; }

:host, html { line-height: 1.5; text-size-adjust: 100%; tab-size: 4; font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-feature-settings: normal; font-variation-settings: normal; -webkit-tap-highlight-color: transparent; }

body { margin: 0px; line-height: inherit; }

hr { height: 0px; 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; text-decoration: inherit; }

b, strong { font-weight: bolder; }

code, kbd, pre, samp { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; font-feature-settings: normal; font-variation-settings: normal; font-size: 1em; }

small { font-size: 80%; }

sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sub { bottom: -0.25em; }

sup { top: -0.5em; }

table { text-indent: 0px; border-color: inherit; border-collapse: collapse; }

button, input, optgroup, select, textarea { font-family: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-size: 100%; font-weight: inherit; line-height: inherit; letter-spacing: inherit; color: inherit; margin: 0px; padding: 0px; }

button, select { text-transform: none; }

button, input:where([type="button"]), input:where([type="reset"]), input:where([type="submit"]) { appearance: button; background-color: transparent; background-image: none; }

progress { vertical-align: baseline; }

::-webkit-inner-spin-button, ::-webkit-outer-spin-button { height: auto; }

[type="search"] { appearance: textfield; outline-offset: -2px; }

::-webkit-search-decoration { appearance: none; }

::-webkit-file-upload-button { appearance: button; font: inherit; }

summary { display: list-item; }

blockquote, dd, dl, figure, h1, h2, h3, h4, h5, h6, hr, p, pre { margin: 0px; }

fieldset { margin: 0px; padding: 0px; }

legend { padding: 0px; }

menu, ol, ul { list-style: none; margin: 0px; padding: 0px; }

dialog { padding: 0px; }

textarea { resize: vertical; }

input::placeholder, textarea::placeholder { opacity: 1; color: rgb(156, 163, 175); }

[role="button"], button { cursor: pointer; }

:disabled { cursor: default; }

audio, canvas, embed, iframe, img, object, svg, video { display: block; vertical-align: middle; }

img, video { max-width: 100%; height: auto; }

[hidden]:where(:not([hidden="until-found"])) { display: none; }

.pointer-events-none { pointer-events: none; }

.visible { visibility: visible; }

.absolute { position: absolute; }

.relative { position: relative; }

.inset-0 { inset: 0px; }

.inset-x-0 { left: 0px; right: 0px; }

.bottom-0 { bottom: 0px; }

.mx-2 { margin-left: 0.5rem; margin-right: 0.5rem; }

.mx-auto { margin-left: auto; margin-right: auto; }

.my-5 { margin-top: 1.25rem; margin-bottom: 1.25rem; }

.mb-1 { margin-bottom: 0.25rem; }

.mb-10 { margin-bottom: 2.5rem; }

.mb-14 { margin-bottom: 3.5rem; }

.mb-2 { margin-bottom: 0.5rem; }

.mb-3 { margin-bottom: 0.75rem; }

.mb-4 { margin-bottom: 1rem; }

.mb-5 { margin-bottom: 1.25rem; }

.mb-6 { margin-bottom: 1.5rem; }

.mb-7 { margin-bottom: 1.75rem; }

.mb-8 { margin-bottom: 2rem; }

.ml-1 { margin-left: 0.25rem; }

.ml-auto { margin-left: auto; }

.mr-2 { margin-right: 0.5rem; }

.mt-0\.5 { margin-top: 0.125rem; }

.mt-1 { margin-top: 0.25rem; }

.mt-2 { margin-top: 0.5rem; }

.mt-4 { margin-top: 1rem; }

.inline-block { display: inline-block; }

.flex { display: flex; }

.inline-flex { display: inline-flex; }

.grid { display: grid; }

.hidden { display: none; }

.h-1 { height: 0.25rem; }

.h-12 { height: 3rem; }

.h-14 { height: 3.5rem; }

.h-16 { height: 4rem; }

.h-2 { height: 0.5rem; }

.h-3\.5 { height: 0.875rem; }

.h-4 { height: 1rem; }

.h-52 { height: 13rem; }

.h-60 { height: 15rem; }

.h-8 { height: 2rem; }

.h-9 { height: 2.25rem; }

.h-full { height: 100%; }

.max-h-96 { max-height: 24rem; }

.min-h-56 { min-height: 14rem; }

.w-12 { width: 3rem; }

.w-2 { width: 0.5rem; }

.w-3\.5 { width: 0.875rem; }

.w-4 { width: 1rem; }

.w-44 { width: 11rem; }

.w-8 { width: 2rem; }

.w-auto { width: auto; }

.w-full { width: 100%; }

.min-w-0 { min-width: 0px; }

.max-w-2xl { max-width: 42rem; }

.max-w-3xl { max-width: 48rem; }

.max-w-4xl { max-width: 56rem; }

.max-w-5xl { max-width: 64rem; }

.max-w-lg { max-width: 32rem; }

.max-w-xl { max-width: 36rem; }

.max-w-xs { max-width: 20rem; }

.flex-1 { flex: 1 1 0%; }

.flex-shrink-0 { flex-shrink: 0; }

@keyframes pulse { 
  50% { opacity: 0.5; }
}

.animate-pulse { animation: 2s cubic-bezier(0.4, 0, 0.6, 1) 0s infinite normal none running pulse; }

.grid-cols-1 { grid-template-columns: repeat(1, minmax(0px, 1fr)); }

.grid-cols-2 { grid-template-columns: repeat(2, minmax(0px, 1fr)); }

.flex-col { flex-direction: column; }

.flex-wrap { flex-wrap: wrap; }

.items-start { align-items: flex-start; }

.items-end { align-items: flex-end; }

.items-center { align-items: center; }

.items-stretch { align-items: stretch; }

.justify-end { justify-content: flex-end; }

.justify-center { justify-content: center; }

.justify-between { justify-content: space-between; }

.gap-1 { gap: 0.25rem; }

.gap-1\.5 { gap: 0.375rem; }

.gap-2 { gap: 0.5rem; }

.gap-3 { gap: 0.75rem; }

.gap-4 { gap: 1rem; }

.gap-5 { gap: 1.25rem; }

.gap-6 { gap: 1.5rem; }

.gap-8 { gap: 2rem; }

.gap-x-5 { column-gap: 1.25rem; }

.gap-x-8 { column-gap: 2rem; }

.gap-y-2 { row-gap: 0.5rem; }

.gap-y-5 { row-gap: 1.25rem; }

.space-y-1 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.25rem * var(--tw-space-y-reverse)); }

.space-y-1\.5 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(0.375rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.375rem * var(--tw-space-y-reverse)); }

.space-y-2 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.5rem * var(--tw-space-y-reverse)); }

.divide-x > :not([hidden]) ~ :not([hidden]) { --tw-divide-x-reverse: 0; border-right-width: calc(1px * var(--tw-divide-x-reverse)); border-left-width: calc(1px * calc(1 - var(--tw-divide-x-reverse))); }

.divide-gray-200 > :not([hidden]) ~ :not([hidden]) { --tw-divide-opacity: 1; border-color: rgb(229 231 235 / var(--tw-divide-opacity, 1)); }

.self-start { align-self: flex-start; }

.overflow-hidden { overflow: hidden; }

.truncate { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.whitespace-nowrap { white-space: nowrap; }

.rounded-full { border-radius: 9999px; }

.rounded-xl { border-radius: 0.75rem; }

.border { border-width: 1px; }

.border-2 { border-width: 2px; }

.border-gray-100 { --tw-border-opacity: 1; border-color: rgb(243 244 246 / var(--tw-border-opacity, 1)); }

.border-gray-200 { --tw-border-opacity: 1; border-color: rgb(229 231 235 / var(--tw-border-opacity, 1)); }

.border-white { --tw-border-opacity: 1; border-color: rgb(255 255 255 / var(--tw-border-opacity, 1)); }

.bg-green-400 { --tw-bg-opacity: 1; background-color: rgb(74 222 128 / var(--tw-bg-opacity, 1)); }

.bg-sg-dark { --tw-bg-opacity: 1; background-color: rgb(86 86 86 / var(--tw-bg-opacity, 1)); }

.bg-sg-gray { --tw-bg-opacity: 1; background-color: rgb(240 240 240 / var(--tw-bg-opacity, 1)); }

.bg-sg-green { --tw-bg-opacity: 1; background-color: rgb(127 168 41 / var(--tw-bg-opacity, 1)); }

.bg-white { --tw-bg-opacity: 1; background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1)); }

.bg-gradient-to-t { background-image: linear-gradient(to top, var(--tw-gradient-stops)); }

.from-black\/80 { --tw-gradient-from: rgb(0 0 0 / 0.8) var(--tw-gradient-from-position); --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }

.from-white { --tw-gradient-from: #fff var(--tw-gradient-from-position); --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }

.via-black\/30 { --tw-gradient-to: rgb(0 0 0 / 0)  var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), rgb(0 0 0 / 0.3) var(--tw-gradient-via-position), var(--tw-gradient-to); }

.to-transparent { --tw-gradient-to: transparent var(--tw-gradient-to-position); }

.object-contain { object-fit: contain; }

.object-cover { object-fit: cover; }

.object-bottom { object-position: center bottom; }

.object-center { object-position: center center; }

.p-4 { padding: 1rem; }

.p-5 { padding: 1.25rem; }

.px-10 { padding-left: 2.5rem; padding-right: 2.5rem; }

.px-12 { padding-left: 3rem; padding-right: 3rem; }

.px-4 { padding-left: 1rem; padding-right: 1rem; }

.px-8 { padding-left: 2rem; padding-right: 2rem; }

.py-10 { padding-top: 2.5rem; padding-bottom: 2.5rem; }

.py-12 { padding-top: 3rem; padding-bottom: 3rem; }

.py-14 { padding-top: 3.5rem; padding-bottom: 3.5rem; }

.py-2 { padding-top: 0.5rem; padding-bottom: 0.5rem; }

.py-3 { padding-top: 0.75rem; padding-bottom: 0.75rem; }

.py-3\.5 { padding-top: 0.875rem; padding-bottom: 0.875rem; }

.py-4 { padding-top: 1rem; padding-bottom: 1rem; }

.py-5 { padding-top: 1.25rem; padding-bottom: 1.25rem; }

.py-7 { padding-top: 1.75rem; padding-bottom: 1.75rem; }

.pb-12 { padding-bottom: 3rem; }

.pb-4 { padding-bottom: 1rem; }

.pt-6 { padding-top: 1.5rem; }

.pb-0 { padding-bottom: 0px; }

.pb-14 { padding-bottom: 3.5rem; }

.text-left { text-align: left; }

.text-center { text-align: center; }

.font-montserrat { font-family: Montserrat, sans-serif; }

.font-playfair { font-family: "Playfair Display", serif; }

.text-2xl { font-size: 1.5rem; line-height: 2rem; }

.text-3xl { font-size: 1.875rem; line-height: 2.25rem; }

.text-4xl { font-size: 2.25rem; line-height: 2.5rem; }

.text-base { font-size: 1rem; line-height: 1.5rem; }

.text-sm { font-size: 0.875rem; line-height: 1.25rem; }

.text-xl { font-size: 1.25rem; line-height: 1.75rem; }

.text-xs { font-size: 0.75rem; line-height: 1rem; }

.font-bold { font-weight: 700; }

.font-semibold { font-weight: 600; }

.uppercase { text-transform: uppercase; }

.leading-none { line-height: 1; }

.leading-relaxed { line-height: 1.625; }

.leading-snug { line-height: 1.375; }

.leading-tight { line-height: 1.25; }

.tracking-wide { letter-spacing: 0.025em; }

.tracking-wider { letter-spacing: 0.05em; }

.tracking-widest { letter-spacing: 0.1em; }

.text-blue-200 { --tw-text-opacity: 1; color: rgb(191 219 254 / var(--tw-text-opacity, 1)); }

.text-gray-200 { --tw-text-opacity: 1; color: rgb(229 231 235 / var(--tw-text-opacity, 1)); }

.text-gray-300 { --tw-text-opacity: 1; color: rgb(209 213 219 / var(--tw-text-opacity, 1)); }

.text-gray-400 { --tw-text-opacity: 1; color: rgb(156 163 175 / var(--tw-text-opacity, 1)); }

.text-gray-500 { --tw-text-opacity: 1; color: rgb(107 114 128 / var(--tw-text-opacity, 1)); }

.text-gray-600 { --tw-text-opacity: 1; color: rgb(75 85 99 / var(--tw-text-opacity, 1)); }

.text-gray-700 { --tw-text-opacity: 1; color: rgb(55 65 81 / var(--tw-text-opacity, 1)); }

.text-gray-800 { --tw-text-opacity: 1; color: rgb(31 41 55 / var(--tw-text-opacity, 1)); }

.text-sg-blue { --tw-text-opacity: 1; color: rgb(12 92 148 / var(--tw-text-opacity, 1)); }

.text-sg-dark { --tw-text-opacity: 1; color: rgb(86 86 86 / var(--tw-text-opacity, 1)); }

.text-sg-green { --tw-text-opacity: 1; color: rgb(127 168 41 / var(--tw-text-opacity, 1)); }

.text-sg-sky { --tw-text-opacity: 1; color: rgb(143 213 240 / var(--tw-text-opacity, 1)); }

.text-white { --tw-text-opacity: 1; color: rgb(255 255 255 / var(--tw-text-opacity, 1)); }

.text-yellow-400 { --tw-text-opacity: 1; color: rgb(250 204 21 / var(--tw-text-opacity, 1)); }

.underline { text-decoration-line: underline; }

.opacity-40 { opacity: 0.4; }

.opacity-80 { opacity: 0.8; }

.opacity-90 { opacity: 0.9; }

.shadow-sm { --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05); --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }

.transition { transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-text-decoration-color, -webkit-backdrop-filter; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }

.hover\:bg-gray-100:hover { --tw-bg-opacity: 1; background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1)); }

.hover\:bg-white:hover { --tw-bg-opacity: 1; background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1)); }

.hover\:text-sg-green:hover { --tw-text-opacity: 1; color: rgb(127 168 41 / var(--tw-text-opacity, 1)); }

.hover\:text-white:hover { --tw-text-opacity: 1; color: rgb(255 255 255 / var(--tw-text-opacity, 1)); }

.hover\:underline:hover { text-decoration-line: underline; }

@media (min-width: 640px) {
  .sm\:inline { display: inline; }
  .sm\:hidden { display: none; }
  .sm\:flex-row { flex-direction: row; }
}

@media (min-width: 768px) {
  .md\:h-72 { height: 18rem; }
  .md\:w-1\/2 { width: 50%; }
  .md\:w-2\/5 { width: 40%; }
  .md\:w-3\/5 { width: 60%; }
  .md\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .md\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0px, 1fr)); }
  .md\:grid-cols-4 { grid-template-columns: repeat(4, minmax(0px, 1fr)); }
  .md\:flex-row { flex-direction: row; }
  .md\:text-left { text-align: left; }
  .md\:text-2xl { font-size: 1.5rem; line-height: 2rem; }
  .md\:text-3xl { font-size: 1.875rem; line-height: 2.25rem; }
  .md\:text-4xl { font-size: 2.25rem; line-height: 2.5rem; }
  .md\:text-5xl { font-size: 3rem; line-height: 1; }
  .md\:text-base { font-size: 1rem; line-height: 1.5rem; }
  .md\:text-sm { font-size: 0.875rem; line-height: 1.25rem; }
}

@media (min-width: 1024px) {
  .lg\:h-80 { height: 20rem; }
  .lg\:text-4xl { font-size: 2.25rem; line-height: 2.5rem; }
  .lg\:text-5xl { font-size: 3rem; line-height: 1; }
  .lg\:text-6xl { font-size: 3.75rem; line-height: 1; }
}
@charset "utf-8";

@layer properties;

@layer theme, base, components, utilities;

@layer theme {
  :root, :host { --font-sans: ui-sans-serif, system-ui, 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-yellow-400: oklch(85.2% 0.199 91.936); --color-green-400: oklch(79.2% 0.209 151.711); --color-blue-200: oklch(88.2% 0.059 254.128); --color-gray-100: oklch(96.7% 0.003 264.542); --color-gray-200: oklch(92.8% 0.006 264.531); --color-gray-300: oklch(87.2% 0.01 258.338); --color-gray-400: oklch(70.7% 0.022 261.325); --color-gray-500: oklch(55.1% 0.027 264.364); --color-gray-600: oklch(44.6% 0.03 256.802); --color-gray-700: oklch(37.3% 0.034 259.733); --color-gray-800: oklch(27.8% 0.033 256.848); --color-black: #000; --color-white: #fff; --spacing: 0.25rem; --container-xs: 20rem; --container-lg: 32rem; --container-xl: 36rem; --container-2xl: 42rem; --container-3xl: 48rem; --container-4xl: 56rem; --container-5xl: 64rem; --text-xs: 0.75rem; --text-xs--line-height: calc(1 / 0.75); --text-sm: 0.875rem; --text-sm--line-height: calc(1.25 / 0.875); --text-base: 1rem; --text-base--line-height: calc(1.5 / 1); --text-xl: 1.25rem; --text-xl--line-height: calc(1.75 / 1.25); --text-2xl: 1.5rem; --text-2xl--line-height: calc(2 / 1.5); --text-3xl: 1.875rem; --text-3xl--line-height: calc(2.25 / 1.875); --text-4xl: 2.25rem; --text-4xl--line-height: calc(2.5 / 2.25); --text-5xl: 3rem; --text-5xl--line-height: 1; --text-6xl: 3.75rem; --text-6xl--line-height: 1; --font-weight-semibold: 600; --font-weight-bold: 700; --tracking-wide: 0.025em; --tracking-wider: 0.05em; --tracking-widest: 0.1em; --leading-tight: 1.25; --leading-snug: 1.375; --leading-relaxed: 1.625; --radius-xl: 0.75rem; --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite; --default-transition-duration: 150ms; --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); --default-font-family: var(--font-sans); --default-mono-font-family: var(--font-mono); }
}

@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button { box-sizing: border-box; margin: 0px; padding: 0px; border: 0px solid; }
  html, :host { line-height: 1.5; text-size-adjust: 100%; tab-size: 4; font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'); font-feature-settings: var(--default-font-feature-settings, normal); font-variation-settings: var(--default-font-variation-settings, normal); -webkit-tap-highlight-color: transparent; }
  hr { height: 0px; 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; 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 { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
  sub { bottom: -0.25em; }
  sup { top: -0.5em; }
  table { text-indent: 0px; border-color: inherit; border-collapse: collapse; }
  progress { vertical-align: baseline; }
  summary { display: list-item; }
  ol, ul, menu { list-style: none; }
  img, svg, video, canvas, audio, iframe, embed, object { display: block; vertical-align: middle; }
  img, video { max-width: 100%; height: auto; }
  button, input, select, optgroup, textarea, ::file-selector-button { font: inherit; letter-spacing: inherit; color: inherit; border-radius: 0px; background-color: transparent; opacity: 1; }
  :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)) {
  color: color-mix(currentcolor, transparent);
}
}
}
  textarea { resize: vertical; }
  ::-webkit-search-decoration { 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: 0px; }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field { padding-block: 0px; }
  ::-webkit-calendar-picker-indicator { line-height: 1; }
  button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button { appearance: button; }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button { height: auto; }
  [hidden]:where(:not([hidden="until-found"])) { display: none !important; }
}

@layer utilities {
  .pointer-events-none { pointer-events: none; }
  .absolute { position: absolute; }
  .relative { position: relative; }
  .inset-0 { inset: calc(var(--spacing) * 0); }
  .inset-x-0 { inset-inline: calc(var(--spacing) * 0); }
  .bottom-0 { bottom: calc(var(--spacing) * 0); }
  .mx-2 { margin-inline: calc(var(--spacing) * 2); }
  .mx-auto { margin-inline: auto; }
  .my-5 { margin-block: calc(var(--spacing) * 5); }
  .mt-0\.5 { margin-top: calc(var(--spacing) * 0.5); }
  .mt-1 { margin-top: calc(var(--spacing) * 1); }
  .mt-2 { margin-top: calc(var(--spacing) * 2); }
  .mt-4 { margin-top: calc(var(--spacing) * 4); }
  .mr-2 { margin-right: calc(var(--spacing) * 2); }
  .mb-1 { margin-bottom: calc(var(--spacing) * 1); }
  .mb-2 { margin-bottom: calc(var(--spacing) * 2); }
  .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-7 { margin-bottom: calc(var(--spacing) * 7); }
  .mb-8 { margin-bottom: calc(var(--spacing) * 8); }
  .mb-10 { margin-bottom: calc(var(--spacing) * 10); }
  .mb-14 { margin-bottom: calc(var(--spacing) * 14); }
  .ml-1 { margin-left: calc(var(--spacing) * 1); }
  .ml-auto { margin-left: auto; }
  .flex { display: flex; }
  .grid { display: grid; }
  .hidden { display: none; }
  .inline-block { display: inline-block; }
  .inline-flex { display: inline-flex; }
  .h-1 { height: calc(var(--spacing) * 1); }
  .h-2 { height: calc(var(--spacing) * 2); }
  .h-3\.5 { height: calc(var(--spacing) * 3.5); }
  .h-4 { height: calc(var(--spacing) * 4); }
  .h-8 { height: calc(var(--spacing) * 8); }
  .h-9 { height: calc(var(--spacing) * 9); }
  .h-12 { height: calc(var(--spacing) * 12); }
  .h-14 { height: calc(var(--spacing) * 14); }
  .h-16 { height: calc(var(--spacing) * 16); }
  .h-52 { height: calc(var(--spacing) * 52); }
  .h-60 { height: calc(var(--spacing) * 60); }
  .h-full { height: 100%; }
  .max-h-96 { max-height: calc(var(--spacing) * 96); }
  .min-h-56 { min-height: calc(var(--spacing) * 56); }
  .w-2 { width: calc(var(--spacing) * 2); }
  .w-3\.5 { width: calc(var(--spacing) * 3.5); }
  .w-4 { width: calc(var(--spacing) * 4); }
  .w-8 { width: calc(var(--spacing) * 8); }
  .w-12 { width: calc(var(--spacing) * 12); }
  .w-44 { width: calc(var(--spacing) * 44); }
  .w-auto { width: auto; }
  .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-lg { max-width: var(--container-lg); }
  .max-w-xl { max-width: var(--container-xl); }
  .max-w-xs { max-width: var(--container-xs); }
  .min-w-0 { min-width: calc(var(--spacing) * 0); }
  .flex-1 { flex: 1 1 0%; }
  .flex-shrink-0 { flex-shrink: 0; }
  .animate-pulse { animation: var(--animate-pulse); }
  .grid-cols-1 { grid-template-columns: repeat(1, minmax(0px, 1fr)); }
  .grid-cols-2 { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
  .flex-col { flex-direction: column; }
  .flex-wrap { flex-wrap: wrap; }
  .items-center { align-items: center; }
  .items-end { align-items: flex-end; }
  .items-start { align-items: flex-start; }
  .items-stretch { align-items: stretch; }
  .justify-between { justify-content: space-between; }
  .justify-center { justify-content: center; }
  .justify-end { justify-content: flex-end; }
  .gap-1 { gap: calc(var(--spacing) * 1); }
  .gap-1\.5 { gap: calc(var(--spacing) * 1.5); }
  .gap-2 { gap: calc(var(--spacing) * 2); }
  .gap-3 { gap: calc(var(--spacing) * 3); }
  .gap-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); }
  .space-y-1 {
  :where(& > :not(:last-child)) { --tw-space-y-reverse: 0; margin-block-start: calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse)); margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse))); }
}
  .space-y-1\.5 {
  :where(& > :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))); }
}
  .space-y-2 {
  :where(& > :not(:last-child)) { --tw-space-y-reverse: 0; margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse)); margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse))); }
}
  .gap-x-5 { column-gap: calc(var(--spacing) * 5); }
  .gap-x-8 { column-gap: calc(var(--spacing) * 8); }
  .gap-y-2 { row-gap: calc(var(--spacing) * 2); }
  .gap-y-5 { row-gap: calc(var(--spacing) * 5); }
  .divide-x {
  :where(& > :not(:last-child)) { --tw-divide-x-reverse: 0; border-inline-style: var(--tw-border-style); border-inline-start-width: calc(1px * var(--tw-divide-x-reverse)); border-inline-end-width: calc(1px * calc(1 - var(--tw-divide-x-reverse))); }
}
  .divide-gray-200 {
  :where(& > :not(:last-child)) { border-color: var(--color-gray-200); }
}
  .self-start { align-self: flex-start; }
  .truncate { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .overflow-hidden { overflow: hidden; }
  .rounded-full { border-radius: calc(infinity * 1px); }
  .rounded-xl { border-radius: var(--radius-xl); }
  .border { border-style: var(--tw-border-style); border-width: 1px; }
  .border-2 { border-style: var(--tw-border-style); border-width: 2px; }
  .border-gray-100 { border-color: var(--color-gray-100); }
  .border-gray-200 { border-color: var(--color-gray-200); }
  .border-white { border-color: var(--color-white); }
  .bg-green-400 { background-color: var(--color-green-400); }
  .bg-white { background-color: var(--color-white); }
  .bg-gradient-to-t { --tw-gradient-position: to top in oklab; background-image: linear-gradient(var(--tw-gradient-stops)); }
  .from-black\/80 {
  --tw-gradient-from: color-mix(in srgb, #000 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
  --tw-gradient-from: color-mix(in oklab, var(--color-black) 80%, 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));
}
  .from-white { --tw-gradient-from: var(--color-white); --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-black\/30 {
  --tw-gradient-via: color-mix(in srgb, #000 30%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
  --tw-gradient-via: color-mix(in oklab, var(--color-black) 30%, 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-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)); }
  .object-contain { object-fit: contain; }
  .object-cover { object-fit: cover; }
  .object-bottom { object-position: center bottom; }
  .object-center { object-position: center center; }
  .p-4 { padding: calc(var(--spacing) * 4); }
  .p-5 { padding: calc(var(--spacing) * 5); }
  .px-4 { padding-inline: calc(var(--spacing) * 4); }
  .px-8 { padding-inline: calc(var(--spacing) * 8); }
  .px-10 { padding-inline: calc(var(--spacing) * 10); }
  .px-12 { padding-inline: calc(var(--spacing) * 12); }
  .py-2 { padding-block: calc(var(--spacing) * 2); }
  .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-7 { padding-block: calc(var(--spacing) * 7); }
  .py-10 { padding-block: calc(var(--spacing) * 10); }
  .py-12 { padding-block: calc(var(--spacing) * 12); }
  .py-14 { padding-block: calc(var(--spacing) * 14); }
  .pt-6 { padding-top: calc(var(--spacing) * 6); }
  .pb-4 { padding-bottom: calc(var(--spacing) * 4); }
  .pb-12 { padding-bottom: calc(var(--spacing) * 12); }
  .text-center { text-align: center; }
  .text-left { text-align: left; }
  .text-2xl { font-size: var(--text-2xl); line-height: var(--tw-leading, var(--text-2xl--line-height)); }
  .text-3xl { font-size: var(--text-3xl); line-height: var(--tw-leading, var(--text-3xl--line-height)); }
  .text-4xl { font-size: var(--text-4xl); line-height: var(--tw-leading, var(--text-4xl--line-height)); }
  .text-base { font-size: var(--text-base); line-height: var(--tw-leading, var(--text-base--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)); }
  .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-semibold { --tw-font-weight: var(--font-weight-semibold); font-weight: var(--font-weight-semibold); }
  .tracking-wide { --tw-tracking: var(--tracking-wide); letter-spacing: var(--tracking-wide); }
  .tracking-wider { --tw-tracking: var(--tracking-wider); letter-spacing: var(--tracking-wider); }
  .tracking-widest { --tw-tracking: var(--tracking-widest); letter-spacing: var(--tracking-widest); }
  .whitespace-nowrap { white-space: nowrap; }
  .text-blue-200 { color: var(--color-blue-200); }
  .text-gray-200 { color: var(--color-gray-200); }
  .text-gray-300 { color: var(--color-gray-300); }
  .text-gray-400 { color: var(--color-gray-400); }
  .text-gray-500 { color: var(--color-gray-500); }
  .text-gray-600 { color: var(--color-gray-600); }
  .text-gray-700 { color: var(--color-gray-700); }
  .text-gray-800 { color: var(--color-gray-800); }
  .text-white { color: var(--color-white); }
  .text-yellow-400 { color: var(--color-yellow-400); }
  .uppercase { text-transform: uppercase; }
  .underline { text-decoration-line: underline; }
  .opacity-40 { opacity: 0.4; }
  .opacity-80 { opacity: 0.8; }
  .opacity-90 { opacity: 0.9; }
  .shadow-sm { --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
  .transition { transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events; transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); transition-duration: var(--tw-duration, var(--default-transition-duration)); }
  .hover\:bg-gray-100 {
  &:hover {
  @media (hover: hover) {
  background-color: var(--color-gray-100);
}
}
}
  .hover\:bg-white {
  &:hover {
  @media (hover: hover) {
  background-color: var(--color-white);
}
}
}
  .hover\:text-white {
  &:hover {
  @media (hover: hover) {
  color: var(--color-white);
}
}
}
  .hover\:underline {
  &:hover {
  @media (hover: hover) {
  text-decoration-line: underline;
}
}
}
  .sm\:hidden {
  @media (width >= 40rem) {
  display: none;
}
}
  .sm\:inline {
  @media (width >= 40rem) {
  display: inline;
}
}
  .sm\:flex-row {
  @media (width >= 40rem) {
  flex-direction: row;
}
}
  .md\:h-72 {
  @media (width >= 48rem) {
  height: calc(var(--spacing) * 72);
}
}
  .md\:w-1\/2 {
  @media (width >= 48rem) {
  width: calc(50%);
}
}
  .md\:w-2\/5 {
  @media (width >= 48rem) {
  width: calc(40%);
}
}
  .md\:w-3\/5 {
  @media (width >= 48rem) {
  width: calc(60%);
}
}
  .md\:grid-cols-2 {
  @media (width >= 48rem) {
  grid-template-columns: repeat(2, minmax(0px, 1fr));
}
}
  .md\:grid-cols-3 {
  @media (width >= 48rem) {
  grid-template-columns: repeat(3, minmax(0px, 1fr));
}
}
  .md\:grid-cols-4 {
  @media (width >= 48rem) {
  grid-template-columns: repeat(4, minmax(0px, 1fr));
}
}
  .md\:flex-row {
  @media (width >= 48rem) {
  flex-direction: row;
}
}
  .md\:text-left {
  @media (width >= 48rem) {
  text-align: left;
}
}
  .md\:text-2xl {
  @media (width >= 48rem) {
  font-size: var(--text-2xl); line-height: var(--tw-leading, var(--text-2xl--line-height));
}
}
  .md\:text-3xl {
  @media (width >= 48rem) {
  font-size: var(--text-3xl); line-height: var(--tw-leading, var(--text-3xl--line-height));
}
}
  .md\:text-4xl {
  @media (width >= 48rem) {
  font-size: var(--text-4xl); line-height: var(--tw-leading, var(--text-4xl--line-height));
}
}
  .md\:text-5xl {
  @media (width >= 48rem) {
  font-size: var(--text-5xl); line-height: var(--tw-leading, var(--text-5xl--line-height));
}
}
  .md\:text-base {
  @media (width >= 48rem) {
  font-size: var(--text-base); line-height: var(--tw-leading, var(--text-base--line-height));
}
}
  .md\:text-sm {
  @media (width >= 48rem) {
  font-size: var(--text-sm); line-height: var(--tw-leading, var(--text-sm--line-height));
}
}
  .lg\:h-80 {
  @media (width >= 64rem) {
  height: calc(var(--spacing) * 80);
}
}
  .lg\:text-4xl {
  @media (width >= 64rem) {
  font-size: var(--text-4xl); line-height: var(--tw-leading, var(--text-4xl--line-height));
}
}
  .lg\:text-5xl {
  @media (width >= 64rem) {
  font-size: var(--text-5xl); line-height: var(--tw-leading, var(--text-5xl--line-height));
}
}
  .lg\:text-6xl {
  @media (width >= 64rem) {
  font-size: var(--text-6xl); line-height: var(--tw-leading, var(--text-6xl--line-height));
}
}
}

@property --tw-space-y-reverse { syntax: "*"; inherits: false; initial-value: 0; }

@property --tw-divide-x-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: 0px; }

@property --tw-ring-offset-color { syntax: "*"; inherits: false; initial-value: #fff; }

@property --tw-ring-offset-shadow { syntax: "*"; inherits: false; initial-value: 0 0 #0000; }

@keyframes pulse { 
  50% { opacity: 0.5; }
}

@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-space-y-reverse: 0; --tw-divide-x-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; }
}
}

.no-scroll {
    overflow: hidden;
}

.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 1; /* Sit on top */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
  align-items: center;
  overflow-y: hidden;
  z-index: 100000;
}

/* Modal Content/Box */
.modal-content {
  background-color: #fefefe;
  margin: 15% auto; /* 15% from the top and centered */
  padding: 20px;
  border: 1px solid #888;
  width: calc(100% - 24px); /* Could be more or less, depending on screen size */
  margin: auto;
  height: fit-content;
  max-width: 900px;
  max-height: calc(100% - 24px);
  overflow-y: scroll;
}

/* The Close Button */
.close {
  color: #aaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}

#gform_wrapper_8,
#gform_wrapper_8 .gform_body,
#gform_wrapper_8 .gform_fields {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* Fields grid: Name + Phone side by side, rest full width */
#gform_wrapper_8 .gform_fields {
  display: flex !important;
  grid-template-columns: 1fr 1fr;
  gap: 14px 16px !important;
  flex-wrap: wrap;
}

.gform_wrapper.gravity-theme .gfield {
    width: 100%;
}

.gform_wrapper.gravity-theme .gfield.gfield--width-half {
  width: calc(50% - 8px) !important;
}

@media (max-width: 640px) {
  .gform_wrapper.gravity-theme .gfield.gfield--width-half {
    width: 100% !important;
  }
}

.gform-field-label--type-sub {
    font-size: 13px !important;
}

/* Labels */
#gform_wrapper_8 .gfield_label,
#gform_wrapper_8 legend.gfield_label {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  color: #4a4035 !important;
  margin-bottom: 5px !important;
  display: block !important;
  padding: 0 !important;
}

/* Required asterisk / text */
#gform_wrapper_8 .gfield_required {
  color: rgb(127 168 41) !important;
  font-size: 10px !important;
  margin-left: 3px !important;
}

/* Text, email, tel, date inputs */
#gform_wrapper_8 input[type="text"],
#gform_wrapper_8 input[type="email"],
#gform_wrapper_8 input[type="tel"],
#gform_wrapper_8 input.datepicker {
  width: 100% !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 14px !important;
  color: #1a1a1a !important;
  background: #ffffff !important;
  border: 1px solid #d4cdb8 !important;
  border-radius: 3px !important;
  padding: 9px 12px !important;
  box-sizing: border-box !important;
  transition: border-color 0.2s ease !important;
  outline: none !important;
  box-shadow: none !important;
  margin: 0 !important;
}

#gform_wrapper_8 input[type="text"]:focus,
#gform_wrapper_8 input[type="email"]:focus,
#gform_wrapper_8 input[type="tel"]:focus,
#gform_wrapper_8 input.datepicker:focus {
  border-color: rgb(127 168 41) !important;
  box-shadow: 0 0 0 2px rgba(201, 172, 59, 0.15) !important;
}

/* Radio groups */
#gform_wrapper_8 .gfield_radio {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px 20px !important;
  margin-top: 4px !important;
}

#gform_wrapper_8 .gfield-choice-input[type="radio"] {
  appearance: none !important;
  -webkit-appearance: none !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  border: 2px solid rgb(127 168 41) !important;
  border-radius: 50% !important;
  background: #fff !important;
  cursor: pointer !important;
  position: relative !important;
  margin: 0 !important;
  padding: 0 !important;
  transition: background 0.15s, border-color 0.15s !important;
}

#gform_wrapper_8 .gfield-choice-input[type="radio"]:checked {
  background: rgb(127 168 41) !important;
  border-color: rgb(127 168 41) !important;
}

#gform_wrapper_8 .gfield-choice-input[type="radio"]:checked::after {
  content: '' !important;
  display: block !important;
  width: 6px !important;
  height: 6px !important;
  border-radius: 50% !important;
  background: #fff !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
}

.gfield_checkbox {
  gap: 10px;
  display: flex;
  flex-direction: column;
}

.gchoice {
 line-height: 1.1;
}

#gform_wrapper_8 .gform-field-label--type-inline {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #1a1a1a !important;
  cursor: pointer !important;
  display: inline;
}

/* Fieldset reset */
#gform_wrapper_8 fieldset {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Datepicker icon */
#gform_wrapper_8 .ginput_container_date {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

#gform_wrapper_8 .ui-datepicker-trigger {
  width: 20px !important;
  height: 20px !important;
  opacity: 0.5 !important;
  cursor: pointer !important;
  flex-shrink: 0 !important;
}

/* reCAPTCHA */
#gform_wrapper_8 .ginput_recaptcha {
  margin-top: 4px !important;
}

/* Footer / submit row */
#gform_wrapper_8 .gform_footer {
  margin: 16px 0 0 0 !important;
  padding: 0 !important;
}

/* Submit button */
#gform_submit_button_8 {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  color: white !important;
  background: rgb(127 168 41) !important;
  border: none !important;
  border-radius: 3px !important;
  padding: 12px 32px !important;
  cursor: pointer !important;
  transition: background 0.2s ease, transform 0.1s ease !important;
  display: inline-block !important;
  margin-top:10px;
  width:100%;
}

#gform_submit_button_8:hover {
  background: #658620 !important;
}

#gform_submit_button_8:active {
  transform: scale(0.98) !important;
}

/* Validation errors */
#gform_wrapper_8 .gfield_error input,
#gform_wrapper_8 .gfield_error textarea {
  border-color: #c0392b !important;
}

#gform_wrapper_8 .validation_message {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 11px !important;
  color: #c0392b !important;
  margin-top: 4px !important;
}

/* Responsive: stack to single column on small screens */
@media (max-width: 480px) {
  #gform_wrapper_8 .gform_fields {
    grid-template-columns: 1fr !important;
  }
  #gform_wrapper_8 .gform_fields .gfield {
    grid-column: 1 / 13 !important;
  }
}

.gform_required_legend {
    display: none;
}

.verify-btn {
  cursor: pointer;
}