/*
! tailwindcss v3.4.1 | MIT License | https://tailwindcss.com
*/

/* Local Font Declarations */
@font-face{font-family:Montserrat;font-style:normal;font-weight:400;src:url(./fonts/montserrat-v30-latin-regular.woff2) format("woff2")}
@font-face{font-family:Montserrat;font-style:normal;font-weight:600;src:url(./fonts/montserrat-v30-latin-600.woff2) format("woff2")}
@font-face{font-family:Montserrat;font-style:normal;font-weight:700;src:url(./fonts/montserrat-v30-latin-700.woff2) format("woff2")}
@font-face{font-family:"Open Sans";font-style:normal;font-weight:400;src:url(./fonts/open-sans-v43-latin-regular.woff2) format("woff2")}
@font-face{font-family:"Open Sans";font-style:normal;font-weight:600;src:url(./fonts/open-sans-v43-latin-600.woff2) format("woff2")}
@font-face{font-family:"Open Sans";font-style:normal;font-weight:700;src:url(./fonts/open-sans-v43-latin-700.woff2) format("woff2")}


*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}
:after,:before{--tw-content:""}
html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,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:0;line-height:inherit}
h1,h2,h3,p,span{font-size:inherit;font-weight:inherit}
a{color:inherit;text-decoration:inherit}
button{font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}
button{text-transform:none}
button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}
img,svg{display:block;vertical-align:middle}
button,img,svg{max-width:100%;height:auto}
.container{width:100%}
@media (min-width:640px){.container{max-width:640px}}
@media (min-width:768px){.container{max-width:768px}}
@media (min-width:1024px){.container{max-width:1024px}}
@media (min-width:1280px){.container{max-width:1280px}}
@media (min-width:1536px){.container{max-width:1536px}}
.fixed{position:fixed}
.absolute{position:absolute}
.relative{position:relative}
.inset-0{inset:0}
.bottom-10{bottom:2.5rem}
.left-0{left:0}
.left-1\/2{left:50%}
.right-0{right:0}
.top-0{top:0}
.z-0{z-index:0}
.z-10{z-index:10}
.z-40{z-index:40}
.z-50{z-index:50}
.order-first{order:-9999}
.mx-auto{margin-left:auto;margin-right:auto}
.mx-0{margin-left:0;margin-right:0}
.mt-12{margin-top:3rem}
.mt-16{margin-top:4rem}
.mt-20{margin-top:5rem}
.mt-4{margin-top:1rem}
.mt-6{margin-top:1.5rem}
.mt-8{margin-top:2rem}
.flex{display:flex}
.hidden{display:none}
.block{display:block}
.grid{display:grid}
.h-10{height:2.5rem}
.h-40{height:10rem}
.h-48{height:12rem}
.h-5{height:1.25rem}
.h-6{height:1.5rem}
.h-full{height:100%}
.min-h-screen{min-height:100vh}
.w-40{width:10rem}
.w-48{width:12rem}
.w-full{width:100%}
.w-auto{width:auto}
.flex-shrink-0{flex-shrink:0}
.max-w-3xl{max-width:48rem}
.max-w-7xl{max-width:80rem}
.max-w-xl{max-width:36rem}
.-translate-x-1\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}
@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}
50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}
.animate-bounce{animation:bounce 1s infinite}
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}
.scroll-smooth{scroll-behavior:smooth}
.rounded-full{border-radius:9999px}
.border-t{border-top-width:1px}
.border-4{border-width:4px}
.border-slate-200{--tw-border-opacity:1;border-color:rgb(226 232 240 / var(--tw-border-opacity))}
.border-white{--tw-border-opacity:1;border-color:rgb(255 255 255 / var(--tw-border-opacity))}
.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.shadow-lg{--tw-shadow:0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}
.flex-col{flex-direction:column}
.items-start{align-items:flex-start}
.items-center{align-items:center}
.justify-center{justify-content:center}
.justify-between{justify-content:space-between}
.gap-8{gap:2rem}
.gap-x-12{column-gap:3rem}
.gap-y-16{row-gap:4rem}
.gap-12{gap:3rem}
.overflow-hidden{overflow:hidden}
.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * (1 - var(--tw-space-x-reverse)))}
.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * (1 - var(--tw-space-x-reverse)))}
.space-x-8>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(2rem * var(--tw-space-x-reverse));margin-left:calc(2rem * (1 - var(--tw-space-x-reverse)))}
.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}
.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}
.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}
.fill-current{fill:currentColor}
.object-cover{object-fit:cover}
.bg-off-white{--tw-bg-opacity:1;background-color:rgb(250 250 250 / var(--tw-bg-opacity))}
.bg-off-white\/80{background-color:rgba(250,250,250,.8)}
.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249 / var(--tw-bg-opacity))}
.bg-slate-50{--tw-bg-opacity:1;background-color:rgb(248 250 252 / var(--tw-bg-opacity))}
.bg-slate-200{--tw-bg-opacity:1;background-color:rgb(226 232 240 / var(--tw-bg-opacity))}
.pb-20{padding-bottom:5rem}
.py-8{padding-top:2rem;padding-bottom:2rem}
.py-20{padding-top:5rem;padding-bottom:5rem}
.px-6{padding-left:1.5rem;padding-right:1.5rem}
.py-4{padding-top:1rem;padding-bottom:1rem}
.pt-1{padding-top:.25rem}
.text-center{text-align:center}
.text-left{text-align:left}
.font-montserrat{font-family:Montserrat,sans-serif}
.font-open-sans{font-family:"Open Sans",sans-serif}
.text-3xl{font-size:1.875rem;line-height:2.25rem}
.text-5xl{font-size:3rem;line-height:1}
.text-2xl{font-size:1.5rem;line-height:2rem}
.text-lg{font-size:1.125rem;line-height:1.75rem}
.text-xl{font-size:1.25rem;line-height:1.75rem}
.text-sm{font-size:.875rem;line-height:1.25rem}
.font-bold{font-weight:700}
.font-normal{font-weight:400}
.font-semibold{font-weight:600}
.uppercase{text-transform:uppercase}
.leading-tight{line-height:1.25}
.leading-relaxed{line-height:1.625}
.tracking-wider{letter-spacing:.05em}
.text-charcoal-grey{--tw-text-opacity:1;color:rgb(51 51 51 / var(--tw-text-opacity))}
.text-deep-teal{--tw-text-opacity:1;color:rgb(0 109 119 / var(--tw-text-opacity))}
.text-muted-gold{--tw-text-opacity:1;color:rgb(196 167 106 / var(--tw-text-opacity))}
.text-slate-500{--tw-text-opacity:1;color:rgb(100 116 139 / var(--tw-text-opacity))}
.text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105 / var(--tw-text-opacity))}
.opacity-60{opacity:.6}
.stroke-currentColor{stroke:currentColor}
.stroke-2{stroke-width:2}
.underline{text-decoration-line:underline}
.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}
.backdrop-blur-sm{--tw-backdrop-blur:blur(4px);-webkit-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: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-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}
.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}
.duration-300{transition-duration:.3s}
.hover\:opacity-100:hover{opacity:1}
.hover\:text-deep-teal:hover{--tw-text-opacity:1;color:rgb(0 109 119 / var(--tw-text-opacity))}
.hover\:text-muted-gold:hover{--tw-text-opacity:1;color:rgb(196 167 106 / var(--tw-text-opacity))}
@media (min-width:768px){.md\:col-span-1{grid-column:span 1 / span 1}
.md\:col-span-2{grid-column:span 2 / span 2}
.md\:order-last{order:9999}
.md\:order-none{order:0}
.md\:mx-0{margin-left:0;margin-right:0}
.md\:flex{display:flex}
.md\:flex-row{flex-direction:row}
.md\:hidden{display:none}
.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.md\:items-start{align-items:flex-start}
.md\:justify-start{justify-content:flex-start}
.md\:gap-12{gap:3rem}
.md\:gap-16{gap:4rem}
.md\:gap-8{gap:2rem}
.md\:space-y-0{--tw-space-y-reverse:0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}
.md\:pb-32{padding-bottom:8rem}
.md\:py-32{padding-top:8rem;padding-bottom:8rem}
.md\:text-left{text-align:left}
.md\:text-right{text-align:right}
.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}
.md\:text-7xl{font-size:4.5rem;line-height:1}}

/*
 * =================================================================
 * CUSTOM CSS FOR MOBILE MENU
 * =================================================================
 */

/* 1. Hide the mobile menu by default */
#mobile-menu {
    display: none;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
}

/* 2. Show the mobile menu when body has the .mobile-menu-open class */
body.mobile-menu-open #mobile-menu {
    display: flex;
    opacity: 1;
}

/* 3. Lock the body scroll when the menu is open */
body.mobile-menu-open {
    overflow: hidden;
}

/* 4. Hide the mobile menu on medium screens and up */
@media (min-width: 768px) {
    #mobile-menu {
        display: none !important;
    }
    body.mobile-menu-open {
       overflow: auto;
    }
}