@font-face {
    font-family: Fraunces;
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url(../fonts/a5a3076f5a3c2968-s.09mqwf_zjnrdf.woff2?dpl=dpl_ES1C4XJLFNaCMN9d2onfM7iJABtF)format("woff2");
    unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB
}

@font-face {
    font-family: Fraunces;
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url(../fonts/23f1a98b08006014-s.0s5mkn35-hrc5.woff2?dpl=dpl_ES1C4XJLFNaCMN9d2onfM7iJABtF)format("woff2");
    unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF
}

@font-face {
    font-family: Fraunces;
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url(../fonts/54fc36028e2bb174-s.p.20jfceqj9zyw9.woff2?dpl=dpl_ES1C4XJLFNaCMN9d2onfM7iJABtF)format("woff2");
    unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD
}

@font-face {
    font-family: Fraunces Fallback;
    src: local(Times New Roman);
    ascent-override: 84.71%;
    descent-override: 22.09%;
    line-gap-override: 0.0%;
    size-adjust: 115.45%
}

.fraunces_df4883ac-module__8D4qdq__className {
    font-family: Fraunces, Fraunces Fallback;
    font-style: normal
}

.fraunces_df4883ac-module__8D4qdq__variable {
    --font-fraunces: "Fraunces", "Fraunces Fallback"
}

@font-face {
    font-family: Hanken Grotesk;
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url(../fonts/91bd2e40df15814e-s.19s5evoqhirey.woff2?dpl=dpl_ES1C4XJLFNaCMN9d2onfM7iJABtF)format("woff2");
    unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F
}

@font-face {
    font-family: Hanken Grotesk;
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url(../fonts/a63431c4ac64ea8b-s.386o_ri1vb0yv.woff2?dpl=dpl_ES1C4XJLFNaCMN9d2onfM7iJABtF)format("woff2");
    unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB
}

@font-face {
    font-family: Hanken Grotesk;
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url(../fonts/8b4ed0a90d903ab5-s.44dak0sams9f0.woff2?dpl=dpl_ES1C4XJLFNaCMN9d2onfM7iJABtF)format("woff2");
    unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF
}

@font-face {
    font-family: Hanken Grotesk;
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url(../fonts/c47649aa31f9e140-s.p.3lxpqujs87tck.woff2?dpl=dpl_ES1C4XJLFNaCMN9d2onfM7iJABtF)format("woff2");
    unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD
}

@font-face {
    font-family: Hanken Grotesk;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(../fonts/91bd2e40df15814e-s.19s5evoqhirey.woff2?dpl=dpl_ES1C4XJLFNaCMN9d2onfM7iJABtF)format("woff2");
    unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F
}

@font-face {
    font-family: Hanken Grotesk;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(../fonts/a63431c4ac64ea8b-s.386o_ri1vb0yv.woff2?dpl=dpl_ES1C4XJLFNaCMN9d2onfM7iJABtF)format("woff2");
    unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB
}

@font-face {
    font-family: Hanken Grotesk;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(../fonts/8b4ed0a90d903ab5-s.44dak0sams9f0.woff2?dpl=dpl_ES1C4XJLFNaCMN9d2onfM7iJABtF)format("woff2");
    unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF
}

@font-face {
    font-family: Hanken Grotesk;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(../fonts/c47649aa31f9e140-s.p.3lxpqujs87tck.woff2?dpl=dpl_ES1C4XJLFNaCMN9d2onfM7iJABtF)format("woff2");
    unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD
}

@font-face {
    font-family: Hanken Grotesk;
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url(../fonts/91bd2e40df15814e-s.19s5evoqhirey.woff2?dpl=dpl_ES1C4XJLFNaCMN9d2onfM7iJABtF)format("woff2");
    unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F
}

@font-face {
    font-family: Hanken Grotesk;
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url(../fonts/a63431c4ac64ea8b-s.386o_ri1vb0yv.woff2?dpl=dpl_ES1C4XJLFNaCMN9d2onfM7iJABtF)format("woff2");
    unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB
}

@font-face {
    font-family: Hanken Grotesk;
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url(../fonts/8b4ed0a90d903ab5-s.44dak0sams9f0.woff2?dpl=dpl_ES1C4XJLFNaCMN9d2onfM7iJABtF)format("woff2");
    unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF
}

@font-face {
    font-family: Hanken Grotesk;
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url(../fonts/c47649aa31f9e140-s.p.3lxpqujs87tck.woff2?dpl=dpl_ES1C4XJLFNaCMN9d2onfM7iJABtF)format("woff2");
    unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD
}

@font-face {
    font-family: Hanken Grotesk;
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url(../fonts/91bd2e40df15814e-s.19s5evoqhirey.woff2?dpl=dpl_ES1C4XJLFNaCMN9d2onfM7iJABtF)format("woff2");
    unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F
}

@font-face {
    font-family: Hanken Grotesk;
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url(../fonts/a63431c4ac64ea8b-s.386o_ri1vb0yv.woff2?dpl=dpl_ES1C4XJLFNaCMN9d2onfM7iJABtF)format("woff2");
    unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB
}

@font-face {
    font-family: Hanken Grotesk;
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url(../fonts/8b4ed0a90d903ab5-s.44dak0sams9f0.woff2?dpl=dpl_ES1C4XJLFNaCMN9d2onfM7iJABtF)format("woff2");
    unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF
}

@font-face {
    font-family: Hanken Grotesk;
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url(../fonts/c47649aa31f9e140-s.p.3lxpqujs87tck.woff2?dpl=dpl_ES1C4XJLFNaCMN9d2onfM7iJABtF)format("woff2");
    unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD
}

@font-face {
    font-family: Hanken Grotesk Fallback;
    src: local(Arial);
    ascent-override: 99.07%;
    descent-override: 30.02%;
    line-gap-override: 0.0%;
    size-adjust: 100.94%
}

.home-margin {
    margin-top: -80px;
    z-index: -1;
}

/* Article image lightbox */
.image-lightbox {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 30px;
    background: rgba(0, 0, 0, 0.85);
    cursor: zoom-out;
}

.image-lightbox.active {
    display: flex;
}

.image-lightbox img {
    max-width: 95vw;
    max-height: 90vh;
    width: auto;
    height: auto;
    object-fit: contain;
    border-radius: 2px;
    box-shadow: 0 20px 80px rgba(0, 0, 0, 0.4);
}

.image-lightbox-close {
    position: absolute;
    top: 20px;
    right: 25px;
    font-size: 35px;
    line-height: 1;
    color: #fff;
    cursor: pointer;
    z-index: 100000;
}

body.lightbox-open {
    overflow: hidden;
}

/* ==================================
   INNER PAGES
================================== */

body.inner-page .logo-white {
    display: none;
}

body.inner-page .logo-dark {
    display: block !important;
    opacity: 1;
}

body.inner-page .menu-toggle span {
    background: #222;
}

/* ==================================
   WHITE HEADER PAGE
================================== */

/* Initial state */
body.inner-page.white-header:not(.menu-open) .logo-white {
    display: block !important;
    opacity: 1 !important;
}

body.inner-page.white-header:not(.menu-open) .logo-dark {
    display: none !important;
    opacity: 0 !important;
}

body.inner-page.white-header:not(.menu-open) .menu-toggle span {
    background: #fff !important;
}

/* After scrolling */
body.inner-page.white-header #site-header.scrolled .logo-white {
    display: none !important;
    opacity: 0 !important;
}

body.inner-page.white-header #site-header.scrolled .logo-dark {
    display: block !important;
    opacity: 1 !important;
}

body.inner-page.white-header #site-header.scrolled .menu-toggle span {
    background: #222 !important;
}

/* White menu text before scroll */
body.inner-page.white-header #site-header:not(.scrolled) .desktop-nav a {
    color: #fff !important;
}

/* Gold active menu */
body.inner-page.white-header #site-header:not(.scrolled) .desktop-nav a.active {
    color: #c8a04a !important;
}


.dubai-frame {
    position: relative;
    overflow: hidden;

    /* outer dark frame */
    background: linear-gradient(90deg,
        #17241d 0%,
        #1d2a22 20%,
        #1d2a22 80%,
        #17241d 100%);

    padding: 28px;
    border-radius: 2px;

    /* panoramic ratio */
    aspect-ratio: 80 / 27;

    box-shadow:
        0 40px 90px -34px rgba(0, 0, 0, .6),
        inset 0 0 80px rgba(0, 0, 0, .25);
}


.dubai-frame img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;

    /* slight zoom like screenshot */
    transform: scale(1.05);

    /* subtle inner border */
    border: 1px solid rgba(255, 255, 255, .08);
}

.why-dubai-bor {
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

/* Security, Growth, Lifestyle, etc */
.mt-14.grid h3 {
    font-size: 1.3rem !important;
    font-weight: 400;
    line-height: 1;
    letter-spacing: -0.02em;
    color: #ece6dc;
}

/* Description text */
.mt-14.grid h3+p {
    margin-top: 10px !important;
    font-size: 1.08rem !important;
    line-height: 1.75 !important;
    color: rgba(236, 230, 220, 0.65) !important;
    max-width: 95%;
}

/* How ROX Helps container */
.mt-14.grid .border-l-2 {
    margin-top: 20px !important;
    padding-left: 18px !important;
    border-left: 1px solid rgba(166, 124, 43, 0.85) !important;
}

/* HOW ROX HELPS label */
.mt-14.grid .border-l-2>p:first-child {
    font-size: 0.72rem !important;
    font-weight: 500;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: #a67c2b !important;
    margin: 0;
}

/* How ROX Helps description */
.mt-14.grid .border-l-2>p:last-child {
    margin-top: 10px !important;
    font-size: 1.08rem !important;
    line-height: 1.75 !important;
    color: rgba(236, 230, 220, 0.9) !important;
}

/* Grid spacing */
.mt-14.grid {
    column-gap: 8rem !important;
    row-gap: 4rem !important;
    margin-top: 90px;
    margin-bottom: 90px;
}

/* Freedom section */
.mt-14.border-t p {
    font-size: 3rem !important;
    line-height: 1.12 !important;
    font-weight: 300 !important;
    letter-spacing: -0.02em;
}

/* Freedom word */
.mt-14.border-t p span {
    color: #a67c2b !important;
}

/* Divider */
.mt-14.border-t {
    border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
    padding-top: 3.5rem !important;
}

html {
    scroll-behavior: smooth;
}

html.lenis,
html.lenis body {
    height: auto;
}

.lenis.lenis-smooth {
    scroll-behavior: auto !important;
}

.logo-hidden {

    display: none;

}

/* ==========================
   Footer Navigation
========================== */

.footer-nav {

    display: flex;
    flex-direction: column;

    gap: 22px;

    padding: 40px 0;

}

.footer-menu {

    display: flex;
    flex-wrap: wrap;

    gap: 10px;

    align-items: center;

}

.footer-menu a {

    color: rgba(255, 255, 255, .78);

    text-decoration: none;

    text-transform: uppercase;

    font-size: 12px;
    letter-spacing: 2px;

    transition: .3s;

}

.footer-menu a:hover {

    color: #fff;

}

.back-to-top {

    display: inline-block;

    color: rgba(255, 255, 255, .62);

    text-decoration: none;

    text-transform: uppercase;

    font-size: .78rem;

    letter-spacing: .24em;

    transition: .3s;

}

.back-to-top:hover {

    color: #fff;

}

/* ==========================
   Footer Links
========================== */

.footer-menu a,
.back-to-top {

    position: relative;

    display: inline-block;

    color: rgba(255, 255, 255, .72);

    text-decoration: none;

    text-transform: uppercase;

    font-size: 12px;

    letter-spacing: 2px;

    transition: color .35s ease;

}

/* Underline */

.footer-menu a::after,
.back-to-top::after {

    content: "";

    position: absolute;

    left: 0;

    bottom: -5px;

    width: 0;

    height: 1px;

    background: rgba(255, 255, 255, .9);

    transition: width .35s cubic-bezier(.22, .61, .36, 1);

}

/* Hover */

.footer-menu a:hover,
.back-to-top:hover {

    color: #fff;

}

.footer-menu a:hover::after,
.back-to-top:hover::after {

    width: 100%;

}

#bottom-cta {
    transform: translateY(100%);
    opacity: 0;
    transition: all .4s ease;
}

#bottom-cta.show {
    transform: translateY(0);
    opacity: 1;
}

.header-top {

    background: transparent !important;

    border-bottom: none !important;

    backdrop-filter: none !important;

}

#investment-image {
    transition: opacity .3s ease;
}

.investment-active {

    border-color: rgba(166, 124, 43, .4) !important;

    background: linear-gradient(110deg,

        rgba(166, 124, 43, .08),

        rgba(166, 124, 43, 0) 60%) !important;

}

.investment-active .active-arrow {

    opacity: 1 !important;

}

.investment-active .active-line {

    display: block !important;

}

.investment-active {

    border-color: rgba(166, 124, 43, .4) !important;

    background: linear-gradient(110deg,

        rgba(166, 124, 43, .08),

        rgba(166, 124, 43, 0) 60%) !important;

}

.active-line {

    opacity: 0;

    transition: .3s;

}

.investment-active .active-line {

    opacity: 1;

}

.investment-active .active-arrow {

    opacity: 1 !important;

}

.hanken_grotesk_fe35aed9-module__WYwImq__className {
    font-family: Hanken Grotesk, Hanken Grotesk Fallback;
    font-style: normal
}

.hanken_grotesk_fe35aed9-module__WYwImq__variable {
    --font-hanken: "Hanken Grotesk", "Hanken Grotesk Fallback"
}

@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-space-y-reverse: 0;
            --tw-divide-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-ordinal: initial;
            --tw-slashed-zero: initial;
            --tw-numeric-figure: initial;
            --tw-numeric-spacing: initial;
            --tw-numeric-fraction: initial;
            --tw-shadow: 0 0 #0000;
            --tw-shadow-color: initial;
            --tw-shadow-alpha: 100%;
            --tw-inset-shadow: 0 0 #0000;
            --tw-inset-shadow-color: initial;
            --tw-inset-shadow-alpha: 100%;
            --tw-ring-color: initial;
            --tw-ring-shadow: 0 0 #0000;
            --tw-inset-ring-color: initial;
            --tw-inset-ring-shadow: 0 0 #0000;
            --tw-ring-inset: initial;
            --tw-ring-offset-width: 0px;
            --tw-ring-offset-color: #fff;
            --tw-ring-offset-shadow: 0 0 #0000;
            --tw-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-ease: initial
        }
    }
}

@layer theme {

    :root,
    :host {
        --font-sans: var(--font-hanken), ui-sans-serif, sans-serif;
        --font-serif: var(--font-fraunces), Georgia, "Times New Roman", serif;
        --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
        --color-black: #000;
        --spacing: .25rem;
        --container-md: 28rem;
        --container-xl: 36rem;
        --container-2xl: 42rem;
        --text-sm: .875rem;
        --text-sm--line-height: calc(1.25 / .875);
        --font-weight-light: 300;
        --font-weight-normal: 400;
        --font-weight-medium: 500;
        --leading-snug: 1.375;
        --leading-relaxed: 1.625;
        --ease-out: cubic-bezier(0, 0, .2, 1);
        --blur-md: 12px;
        --default-transition-duration: .15s;
        --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
        --default-font-family: var(--font-hanken), ui-sans-serif, sans-serif;
        --default-mono-font-family: var(--font-mono)
    }
}

@layer base {

    *,
    :after,
    :before,
    ::backdrop {
        box-sizing: border-box;
        border: 0 solid;
        margin: 0;
        padding: 0
    }

    ::file-selector-button {
        box-sizing: border-box;
        border: 0 solid;
        margin: 0;
        padding: 0
    }

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

    hr {
        height: 0;
        color: inherit;
        border-top-width: 1px
    }

    abbr:where([title]) {
        -webkit-text-decoration: underline dotted;
        text-decoration: underline dotted
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        font-size: inherit;
        font-weight: inherit
    }

    a {
        color: inherit;
        -webkit-text-decoration: inherit;
        -webkit-text-decoration: inherit;
        -webkit-text-decoration: inherit;
        -webkit-text-decoration: inherit;
        text-decoration: inherit
    }

    b,
    strong {
        font-weight: bolder
    }

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

    small {
        font-size: 80%
    }

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

    sub {
        bottom: -.25em
    }

    sup {
        top: -.5em
    }

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

    :-moz-focusring {
        outline: auto
    }

    progress {
        vertical-align: baseline
    }

    summary {
        display: list-item
    }

    ol,
    ul,
    menu {
        list-style: none
    }

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

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

    button,
    input,
    select,
    optgroup,
    textarea {
        font: inherit;
        font-feature-settings: inherit;
        font-variation-settings: inherit;
        letter-spacing: inherit;
        color: inherit;
        opacity: 1;
        background-color: #0000;
        border-radius: 0
    }

    ::file-selector-button {
        font: inherit;
        font-feature-settings: inherit;
        font-variation-settings: inherit;
        letter-spacing: inherit;
        color: inherit;
        opacity: 1;
        background-color: #0000;
        border-radius: 0
    }

    :where(select:is([multiple], [size])) optgroup {
        font-weight: bolder
    }

    :where(select:is([multiple], [size])) optgroup option {
        padding-inline-start: 20px
    }

    ::file-selector-button {
        margin-inline-end: 4px
    }

    ::placeholder {
        opacity: 1
    }

    @supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px) {
        ::placeholder {
            color: currentColor
        }

        @supports (color:color-mix(in lab, red, red)) {
            ::placeholder {
                color: color-mix(in oklab, currentcolor 50%, transparent)
            }
        }
    }

    textarea {
        resize: vertical
    }

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

    ::-webkit-date-and-time-value {
        min-height: 1lh;
        text-align: inherit
    }

    ::-webkit-datetime-edit {
        display: inline-flex
    }

    ::-webkit-datetime-edit-fields-wrapper {
        padding: 0
    }

    ::-webkit-datetime-edit {
        padding-block: 0
    }

    ::-webkit-datetime-edit-year-field {
        padding-block: 0
    }

    ::-webkit-datetime-edit-month-field {
        padding-block: 0
    }

    ::-webkit-datetime-edit-day-field {
        padding-block: 0
    }

    ::-webkit-datetime-edit-hour-field {
        padding-block: 0
    }

    ::-webkit-datetime-edit-minute-field {
        padding-block: 0
    }

    ::-webkit-datetime-edit-second-field {
        padding-block: 0
    }

    ::-webkit-datetime-edit-millisecond-field {
        padding-block: 0
    }

    ::-webkit-datetime-edit-meridiem-field {
        padding-block: 0
    }

    ::-webkit-calendar-picker-indicator {
        line-height: 1
    }

    :-moz-ui-invalid {
        box-shadow: none
    }

    button,
    input:where([type=button], [type=reset], [type=submit]) {
        appearance: button
    }

    ::file-selector-button {
        appearance: button
    }

    ::-webkit-inner-spin-button {
        height: auto
    }

    ::-webkit-outer-spin-button {
        height: auto
    }

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

@layer components;

@layer utilities {
    .pointer-events-none {
        pointer-events: none
    }

    .absolute {
        position: absolute
    }

    .fixed {
        position: fixed
    }

    .relative {
        position: relative
    }

    .inset-0 {
        inset: calc(var(--spacing) * 0)
    }

    .inset-x-0 {
        inset-inline: calc(var(--spacing) * 0)
    }

    .-top-4 {
        top: calc(var(--spacing) * -4)
    }

    .top-0 {
        top: calc(var(--spacing) * 0)
    }

    .top-7 {
        top: calc(var(--spacing) * 7)
    }

    .-right-4 {
        right: calc(var(--spacing) * -4)
    }

    .-bottom-4 {
        bottom: calc(var(--spacing) * -4)
    }

    .bottom-0 {
        bottom: calc(var(--spacing) * 0)
    }

    .bottom-7 {
        bottom: calc(var(--spacing) * 7)
    }

    .-left-4 {
        left: calc(var(--spacing) * -4)
    }

    .left-0 {
        left: calc(var(--spacing) * 0)
    }

    .left-1\/2 {
        left: 50%
    }

    .isolate {
        isolation: isolate
    }

    .-z-10 {
        z-index: calc(10 * -1)
    }

    .z-10 {
        z-index: 10
    }

    .z-50 {
        z-index: 50
    }

    .order-1 {
        order: 1
    }

    .order-2 {
        order: 2
    }

    .container {
        width: 100%
    }

    @media (min-width:40rem) {
        .container {
            max-width: 40rem
        }
    }

    @media (min-width:48rem) {
        .container {
            max-width: 48rem
        }
    }

    @media (min-width:64rem) {
        .container {
            max-width: 64rem
        }
    }

    @media (min-width:80rem) {
        .container {
            max-width: 80rem
        }
    }

    @media (min-width:96rem) {
        .container {
            max-width: 96rem
        }
    }

    .mx-auto {
        margin-inline: auto
    }

    .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-5 {
        margin-top: calc(var(--spacing) * 5)
    }

    .mt-6 {
        margin-top: calc(var(--spacing) * 6)
    }

    .mt-7 {
        margin-top: calc(var(--spacing) * 7)
    }

    .mt-8 {
        margin-top: calc(var(--spacing) * 8)
    }

    .mt-10 {
        margin-top: calc(var(--spacing) * 10)
    }

    .mt-12 {
        margin-top: calc(var(--spacing) * 12)
    }

    .mt-16 {
        margin-top: calc(var(--spacing) * 16)
    }

    .mb-16 {
        margin-bottom: calc(var(--spacing) * 16)
    }

    .ml-auto {
        margin-left: auto
    }

    .block {
        display: block
    }

    .flex {
        display: flex
    }

    .grid {
        display: grid
    }

    .hidden {
        display: none
    }

    .inline-block {
        display: inline-block
    }

    .inline-flex {
        display: inline-flex
    }

    .aspect-\[3\/4\] {
        aspect-ratio: 3/4
    }

    .aspect-\[4\/5\] {
        aspect-ratio: 4/5
    }

    .aspect-\[5\/6\] {
        aspect-ratio: 5/6
    }

    .aspect-\[16\/9\] {
        aspect-ratio: 16/9
    }

    .aspect-\[16\/10\] {
        aspect-ratio: 16/10
    }

    .aspect-\[16\/11\] {
        aspect-ratio: 16/11
    }

    .h-1\.5 {
        height: calc(var(--spacing) * 1.5)
    }

    .h-8 {
        height: calc(var(--spacing) * 8)
    }

    .h-11 {
        height: calc(var(--spacing) * 11)
    }

    .h-24 {
        height: calc(var(--spacing) * 24)
    }

    .h-\[66svh\] {
        height: 66svh
    }

    .h-\[calc\(100\%-3\.5rem\)\] {
        height: calc(100% - 3.5rem)
    }

    .h-full {
        height: 100%
    }

    .h-px {
        height: 1px
    }

    .min-h-\[100svh\] {
        min-height: 100svh
    }

    .w-1\.5 {
        width: calc(var(--spacing) * 1.5)
    }

    .w-7 {
        width: calc(var(--spacing) * 7)
    }

    .w-24 {
        width: calc(var(--spacing) * 24)
    }

    .w-\[2px\] {
        width: 2px
    }

    .w-auto {
        width: auto
    }

    .w-full {
        width: 100%
    }

    .w-px {
        width: 1px
    }

    .max-w-2xl {
        max-width: var(--container-2xl)
    }

    .max-w-\[1240px\] {
        max-width: 1240px
    }

    .max-w-md {
        max-width: var(--container-md)
    }

    .max-w-xl {
        max-width: var(--container-xl)
    }

    .grow {
        flex-grow: 1
    }

    .-translate-x-1\/2 {
        --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
        translate: var(--tw-translate-x) var(--tw-translate-y)
    }

    .resize {
        resize: both
    }

    .scroll-mt-24 {
        scroll-margin-top: calc(var(--spacing) * 24)
    }

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

    .grid-cols-\[1\.05fr_0\.95fr\] {
        grid-template-columns: 1.05fr .95fr
    }

    .flex-col {
        flex-direction: column
    }

    .flex-wrap {
        flex-wrap: wrap
    }

    .items-baseline {
        align-items: baseline
    }

    .items-center {
        align-items: center
    }

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

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

    .justify-center {
        justify-content: center
    }

    .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-6 {
        gap: calc(var(--spacing) * 6)
    }

    .gap-10 {
        gap: calc(var(--spacing) * 10)
    }

    .gap-12 {
        gap: calc(var(--spacing) * 12)
    }

    .gap-14 {
        gap: calc(var(--spacing) * 14)
    }

    .gap-16 {
        gap: calc(var(--spacing) * 16)
    }

    .gap-px {
        gap: 1px
    }

    :where(.space-y-3>:not(:last-child)) {
        --tw-space-y-reverse: 0;
        margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
        margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))
    }

    :where(.divide-y>:not(:last-child)) {
        --tw-divide-y-reverse: 0;
        border-bottom-style: var(--tw-border-style);
        border-top-style: var(--tw-border-style);
        border-top-width: calc(1px * var(--tw-divide-y-reverse));
        border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)))
    }

    :where(.divide-\[var\(--hairline\)\]>:not(:last-child)) {
        border-color: var(--hairline)
    }

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

    .overflow-hidden {
        overflow: hidden
    }

    .rounded-\[2px\] {
        border-radius: 2px
    }

    .rounded-full {
        border-radius: 3.40282e38px
    }

    .border {
        border-style: var(--tw-border-style);
        border-width: 1px
    }

    .border-t {
        border-top-style: var(--tw-border-style);
        border-top-width: 1px
    }

    .border-r {
        border-right-style: var(--tw-border-style);
        border-right-width: 1px
    }

    .border-b {
        border-bottom-style: var(--tw-border-style);
        border-bottom-width: 1px
    }

    .border-l {
        border-left-style: var(--tw-border-style);
        border-left-width: 1px
    }

    .border-\[var\(--hairline\)\] {
        border-color: var(--hairline)
    }

    .border-\[var\(--hairline-light\)\] {
        border-color: var(--hairline-light)
    }

    .border-brass\/40 {
        border-color: var(--brass)
    }

    @supports (color:color-mix(in lab, red, red)) {
        .border-brass\/40 {
            border-color: color-mix(in oklab, var(--brass) 40%, transparent)
        }
    }

    .border-brass\/50 {
        border-color: var(--brass)
    }

    @supports (color:color-mix(in lab, red, red)) {
        .border-brass\/50 {
            border-color: color-mix(in oklab, var(--brass) 50%, transparent)
        }
    }

    .border-ink\/20 {
        border-color: var(--ink)
    }

    @supports (color:color-mix(in lab, red, red)) {
        .border-ink\/20 {
            border-color: color-mix(in oklab, var(--ink) 20%, transparent)
        }
    }

    .border-ink\/25 {
        border-color: var(--ink)
    }

    @supports (color:color-mix(in lab, red, red)) {
        .border-ink\/25 {
            border-color: color-mix(in oklab, var(--ink) 25%, transparent)
        }
    }

    .border-transparent {
        border-color: #0000
    }

    .bg-\[var\(--hairline\)\] {
        background-color: var(--hairline)
    }

    .bg-bone {
        background-color: var(--bone)
    }

    .bg-bone-deep {
        background-color: var(--bone-deep)
    }

    .bg-bone\/85 {
        background-color: var(--bone)
    }

    @supports (color:color-mix(in lab, red, red)) {
        .bg-bone\/85 {
            background-color: color-mix(in oklab, var(--bone) 85%, transparent)
        }
    }

    .bg-bone\/90 {
        background-color: var(--bone)
    }

    @supports (color:color-mix(in lab, red, red)) {
        .bg-bone\/90 {
            background-color: color-mix(in oklab, var(--bone) 90%, transparent)
        }
    }

    .bg-brass {
        background-color: var(--brass)
    }

    .bg-forest {
        background-color: var(--forest)
    }

    .bg-forest-deep,
    .bg-forest-deep\/40 {
        background-color: var(--forest-deep)
    }

    @supports (color:color-mix(in lab, red, red)) {
        .bg-forest-deep\/40 {
            background-color: color-mix(in oklab, var(--forest-deep) 40%, transparent)
        }
    }

    .bg-ink-soft\/40 {
        background-color: var(--ink-soft)
    }

    @supports (color:color-mix(in lab, red, red)) {
        .bg-ink-soft\/40 {
            background-color: color-mix(in oklab, var(--ink-soft) 40%, transparent)
        }
    }

    .bg-transparent {
        background-color: #0000
    }

    .bg-gradient-to-br {
        --tw-gradient-position: to bottom 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-\[linear-gradient\(110deg\, rgba\(166\, 124\, 43\, 0\.08\)\, rgba\(166\, 124\, 43\, 0\)_60\%\)\] {
        background-image: linear-gradient(110deg, #a67c2b14, #a67c2b00 60%)
    }

    .from-black\/45 {
        --tw-gradient-from: #00000073
    }

    @supports (color:color-mix(in lab, red, red)) {
        .from-black\/45 {
            --tw-gradient-from: color-mix(in oklab, var(--color-black) 45%, transparent)
        }
    }

    .from-black\/45 {
        --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-bone-deep {
        --tw-gradient-from: var(--bone-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))
    }

    .to-\[\#e3dccb\] {
        --tw-gradient-to: #e3dccb;
        --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))
    }

    .object-cover {
        object-fit: cover
    }

    .p-7 {
        padding: calc(var(--spacing) * 7)
    }

    .p-8 {
        padding: calc(var(--spacing) * 8)
    }

    .px-3 {
        padding-inline: calc(var(--spacing) * 3)
    }

    .px-5 {
        padding-inline: calc(var(--spacing) * 5)
    }

    .px-6 {
        padding-inline: calc(var(--spacing) * 6)
    }

    .px-7 {
        padding-inline: calc(var(--spacing) * 7)
    }

    .px-10 {
        padding-inline: calc(var(--spacing) * 10)
    }

    .py-1 {
        padding-block: calc(var(--spacing) * 1)
    }

    .py-3 {
        padding-block: calc(var(--spacing) * 3)
    }

    .py-4 {
        padding-block: calc(var(--spacing) * 4)
    }

    .py-6 {
        padding-block: calc(var(--spacing) * 6)
    }

    .py-16 {
        padding-block: calc(var(--spacing) * 16)
    }

    .py-24 {
        padding-block: calc(var(--spacing) * 24)
    }

    .py-28 {
        padding-block: calc(var(--spacing) * 28)
    }

    .pt-1 {
        padding-top: calc(var(--spacing) * 1)
    }

    .pt-9 {
        padding-top: calc(var(--spacing) * 9)
    }

    .pt-32 {
        padding-top: calc(var(--spacing) * 32)
    }

    .pb-12 {
        padding-bottom: calc(var(--spacing) * 12)
    }

    .pb-16 {
        padding-bottom: calc(var(--spacing) * 16)
    }

    .text-center {
        text-align: center
    }

    .text-left {
        text-align: left
    }

    .font-serif {
        font-family: var(--font-fraunces), Georgia, "Times New Roman", serif
    }

    .text-sm {
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height))
    }

    .text-\[0\.66rem\] {
        font-size: .66rem
    }

    .text-\[0\.68rem\] {
        font-size: .68rem
    }

    .text-\[0\.72rem\] {
        font-size: .72rem
    }

    .text-\[0\.76rem\] {
        font-size: .76rem
    }

    .text-\[0\.78rem\] {
        font-size: .78rem
    }

    .text-\[0\.82rem\] {
        font-size: .82rem
    }

    .text-\[0\.95rem\] {
        font-size: .95rem
    }

    .text-\[0\.96rem\] {
        font-size: .96rem
    }

    .text-\[0\.98rem\] {
        font-size: .98rem
    }

    .text-\[1\.1rem\] {
        font-size: 1.1rem
    }

    .text-\[1\.02rem\] {
        font-size: 1.02rem
    }

    .text-\[1\.3rem\] {
        font-size: 1.3rem
    }

    .text-\[1\.4rem\] {
        font-size: 1.4rem
    }

    .text-\[1\.05rem\] {
        font-size: 1.05rem
    }

    .text-\[1\.5rem\] {
        font-size: 1.5rem
    }

    .text-\[1\.32rem\] {
        font-size: 1.32rem
    }

    .text-\[1\.95rem\] {
        font-size: 1.95rem
    }

    .text-\[1rem\] {
        font-size: 1rem
    }

    .text-\[2\.1rem\] {
        font-size: 2.1rem
    }

    .text-\[2\.2rem\] {
        font-size: 2.2rem
    }

    .text-\[2\.3rem\] {
        font-size: 2.3rem
    }

    .text-\[3\.7rem\] {
        font-size: 3.7rem
    }

    .leading-\[1\.1\] {
        --tw-leading: 1.1;
        line-height: 1.1
    }

    .leading-\[1\.02\] {
        --tw-leading: 1.02;
        line-height: 1.02
    }

    .leading-\[1\.4\] {
        --tw-leading: 1.4;
        line-height: 1.4
    }

    .leading-\[1\.07\] {
        --tw-leading: 1.07;
        line-height: 1.07
    }

    .leading-\[1\.7\] {
        --tw-leading: 1.7;
        line-height: 1.7
    }

    .leading-\[1\.08\] {
        --tw-leading: 1.08;
        line-height: 1.08
    }

    .leading-\[1\.65\] {
        --tw-leading: 1.65;
        line-height: 1.65
    }

    .leading-\[1\.75\] {
        --tw-leading: 1.75;
        line-height: 1.75
    }

    .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)
    }

    .font-light {
        --tw-font-weight: var(--font-weight-light);
        font-weight: var(--font-weight-light)
    }

    .font-medium {
        --tw-font-weight: var(--font-weight-medium);
        font-weight: var(--font-weight-medium)
    }

    .font-normal {
        --tw-font-weight: var(--font-weight-normal);
        font-weight: var(--font-weight-normal)
    }

    .tracking-\[-0\.02em\] {
        --tw-tracking: -.02em;
        letter-spacing: -.02em
    }

    .tracking-\[0\.02em\] {
        --tw-tracking: .02em;
        letter-spacing: .02em
    }

    .tracking-\[0\.14em\] {
        --tw-tracking: .14em;
        letter-spacing: .14em
    }

    .tracking-\[0\.16em\] {
        --tw-tracking: .16em;
        letter-spacing: .16em
    }

    .tracking-\[0\.18em\] {
        --tw-tracking: .18em;
        letter-spacing: .18em
    }

    .tracking-\[0\.24em\] {
        --tw-tracking: .24em;
        letter-spacing: .24em
    }

    .tracking-\[0\.26em\] {
        --tw-tracking: .26em;
        letter-spacing: .26em
    }

    .tracking-\[0\.28em\] {
        --tw-tracking: .28em;
        letter-spacing: .28em
    }

    .text-balance {
        text-wrap: balance
    }

    .text-pretty {
        text-wrap: pretty
    }

    .text-bone,
    .text-bone\/45 {
        color: var(--bone)
    }

    @supports (color:color-mix(in lab, red, red)) {
        .text-bone\/45 {
            color: color-mix(in oklab, var(--bone) 45%, transparent)
        }
    }

    .text-bone\/55 {
        color: var(--bone)
    }

    @supports (color:color-mix(in lab, red, red)) {
        .text-bone\/55 {
            color: color-mix(in oklab, var(--bone) 55%, transparent)
        }
    }

    .text-bone\/70 {
        color: var(--bone)
    }

    @supports (color:color-mix(in lab, red, red)) {
        .text-bone\/70 {
            color: color-mix(in oklab, var(--bone) 70%, transparent)
        }
    }

    .text-bone\/75 {
        color: var(--bone)
    }

    @supports (color:color-mix(in lab, red, red)) {
        .text-bone\/75 {
            color: color-mix(in oklab, var(--bone) 75%, transparent)
        }
    }

    .text-bone\/80 {
        color: var(--bone)
    }

    @supports (color:color-mix(in lab, red, red)) {
        .text-bone\/80 {
            color: color-mix(in oklab, var(--bone) 80%, transparent)
        }
    }

    .text-bone\/85 {
        color: var(--bone)
    }

    @supports (color:color-mix(in lab, red, red)) {
        .text-bone\/85 {
            color: color-mix(in oklab, var(--bone) 85%, transparent)
        }
    }

    .text-brass {
        color: var(--brass)
    }

    .text-brass-soft {
        color: var(--brass-soft)
    }

    .text-ink {
        color: var(--ink)
    }

    .text-ink-soft,
    .text-ink-soft\/70 {
        color: var(--ink-soft)
    }

    @supports (color:color-mix(in lab, red, red)) {
        .text-ink-soft\/70 {
            color: color-mix(in oklab, var(--ink-soft) 70%, transparent)
        }
    }

    .uppercase {
        text-transform: uppercase
    }

    .italic {
        font-style: italic
    }

    .tabular-nums {
        --tw-numeric-spacing: tabular-nums;
        font-variant-numeric: var(--tw-ordinal, ) var(--tw-slashed-zero, ) var(--tw-numeric-figure, ) var(--tw-numeric-spacing, ) var(--tw-numeric-fraction, )
    }

    .opacity-0 {
        opacity: 0
    }

    .opacity-100 {
        opacity: 1
    }

    .shadow-\[0_24px_50px_-28px_rgba\(26\, 26\, 23\, 0\.4\)\] {
        --tw-shadow: 0 24px 50px -28px var(--tw-shadow-color, #1a1a1766);
        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_40px_80px_-30px_rgba\(26\, 26\, 23\, 0\.45\)\] {
        --tw-shadow: 0 40px 80px -30px var(--tw-shadow-color, #1a1a1773);
        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_40px_80px_-32px_rgba\(26\, 26\, 23\, 0\.4\)\] {
        --tw-shadow: 0 40px 80px -32px var(--tw-shadow-color, #1a1a1766);
        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_40px_80px_-32px_rgba\(26\, 26\, 23\, 0\.45\)\] {
        --tw-shadow: 0 40px 80px -32px var(--tw-shadow-color, #1a1a1773);
        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_40px_80px_-34px_rgba\(26\, 26\, 23\, 0\.4\)\] {
        --tw-shadow: 0 40px 80px -34px var(--tw-shadow-color, #1a1a1766);
        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_50px_90px_-34px_rgba\(0\, 0\, 0\, 0\.65\)\] {
        --tw-shadow: 0 50px 90px -34px var(--tw-shadow-color, #000000a6);
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }

    .backdrop-blur-md {
        --tw-backdrop-blur: blur(var(--blur-md));
        -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 {
        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-500 {
        --tw-duration: .5s;
        transition-duration: .5s
    }

    .duration-\[1\.1s\] {
        --tw-duration: 1.1s;
        transition-duration: 1.1s
    }

    .ease-out {
        --tw-ease: var(--ease-out);
        transition-timing-function: var(--ease-out)
    }

    @media (hover:hover) {
        .group-hover\:translate-x-0\.5:is(:where(.group): hover *) {
            --tw-translate-x: calc(var(--spacing) * .5);
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .group-hover\:translate-x-1:is(:where(.group):hover *) {
            --tw-translate-x: calc(var(--spacing) * 1);
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .group-hover\:scale-\[1\.06\]:is(:where(.group):hover *) {
            scale: 1.06
        }

        .group-hover\:opacity-100:is(:where(.group):hover *) {
            opacity: 1
        }
    }

    .first\:pt-0:first-child {
        padding-top: calc(var(--spacing) * 0)
    }

    @media (hover:hover) {
        .hover\:-translate-y-0\.5:hover {
            --tw-translate-y: calc(var(--spacing) * -.5);
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .hover\:-translate-y-1:hover {
            --tw-translate-y: calc(var(--spacing) * -1);
            translate: var(--tw-translate-x) var(--tw-translate-y)
        }

        .hover\:bg-bone-deep:hover {
            background-color: var(--bone-deep)
        }

        .hover\:shadow-\[0_16px_34px_-16px_rgba\(37\, 48\, 42\, 0\.7\)\]:hover {
            --tw-shadow: 0 16px 34px -16px var(--tw-shadow-color, #25302ab3);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }

        .hover\:shadow-\[0_22px_45px_-18px_rgba\(37\, 48\, 42\, 0\.7\)\]:hover {
            --tw-shadow: 0 22px 45px -18px var(--tw-shadow-color, #25302ab3);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }

        .hover\:shadow-\[0_30px_60px_-30px_rgba\(0\, 0\, 0\, 0\.7\)\]:hover {
            --tw-shadow: 0 30px 60px -30px var(--tw-shadow-color, #000000b3);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }
    }

    @media (min-width:40rem) {
        .sm\:col-span-2 {
            grid-column: span 2/span 2
        }

        .sm\:block {
            display: block
        }

        .sm\:w-auto {
            width: auto
        }

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

        .sm\:flex-row {
            flex-direction: row
        }

        .sm\:items-center {
            align-items: center
        }

        .sm\:justify-between {
            justify-content: space-between
        }
    }

    @media (min-width:48rem) {
        .md\:top-8 {
            top: calc(var(--spacing) * 8)
        }

        .md\:mt-20 {
            margin-top: calc(var(--spacing) * 20)
        }

        .md\:aspect-\[5\/6\] {
            aspect-ratio: 5/6
        }

        .md\:aspect-\[21\/9\] {
            aspect-ratio: 21/9
        }

        .md\:h-14 {
            height: calc(var(--spacing) * 14)
        }

        .md\:grid-cols-3 {
            grid-template-columns: repeat(3, minmax(0, 1fr))
        }

        .md\:flex-row {
            flex-direction: row
        }

        .md\:items-end {
            align-items: flex-end
        }

        .md\:justify-between {
            justify-content: space-between
        }

        .md\:self-auto {
            align-self: auto
        }

        .md\:p-8 {
            padding: calc(var(--spacing) * 8)
        }

        .md\:p-9 {
            padding: calc(var(--spacing) * 9)
        }

        .md\:px-10 {
            padding-inline: calc(var(--spacing) * 10)
        }

        .md\:py-5 {
            padding-block: calc(var(--spacing) * 5)
        }

        .md\:py-20 {
            padding-block: calc(var(--spacing) * 20)
        }

        .md\:py-32 {
            padding-block: calc(var(--spacing) * 32)
        }

        .md\:py-36 {
            padding-block: calc(var(--spacing) * 36)
        }

        .md\:text-\[1\.5rem\] {
            font-size: 1.5rem
        }

        .md\:text-\[1\.08rem\] {
            font-size: 1.08rem
        }

        .md\:text-\[1\.15rem\] {
            font-size: 1.15rem
        }

        .md\:text-\[3\.1rem\] {
            font-size: 3.1rem
        }

        .md\:text-\[3\.4rem\] {
            font-size: 3.4rem
        }

        .md\:text-\[3rem\] {
            font-size: 3rem
        }
    }

    @media (min-width:64rem) {
        .lg\:sticky {
            position: sticky
        }

        .lg\:top-28 {
            top: calc(var(--spacing) * 28)
        }

        .lg\:order-1 {
            order: 1
        }

        .lg\:order-2 {
            order: 2
        }

        .lg\:col-span-1 {
            grid-column: span 1/span 1
        }

        .lg\:block {
            display: block
        }

        .lg\:flex {
            display: flex
        }

        .lg\:hidden {
            display: none
        }

        .lg\:inline {
            display: inline
        }

        .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-\[0\.85fr_1\.15fr\] {
            grid-template-columns: .85fr 1.15fr
        }

        .lg\:grid-cols-\[0\.92fr_1\.08fr\] {
            grid-template-columns: .92fr 1.08fr
        }

        .lg\:grid-cols-\[1\.1fr_0\.9fr\] {
            grid-template-columns: 1.1fr .9fr
        }

        .lg\:grid-cols-\[1\.15fr_0\.85fr\] {
            grid-template-columns: 1.15fr .85fr
        }

        .lg\:items-end {
            align-items: flex-end
        }

        .lg\:gap-20 {
            gap: calc(var(--spacing) * 20)
        }

        :where(.lg\:space-y-px>:not(:last-child)) {
            --tw-space-y-reverse: 0;
            margin-block-start: calc(1px * var(--tw-space-y-reverse));
            margin-block-end: calc(1px * calc(1 - var(--tw-space-y-reverse)))
        }

        .lg\:pt-2 {
            padding-top: calc(var(--spacing) * 2)
        }

        .lg\:text-\[4\.15rem\] {
            font-size: 4.15rem
        }
    }
}

:root {
    --bone: #f6f2ea;
    --bone-deep: #efe9dd;
    --ink: #1a1a17;
    --ink-soft: #4a4a42;
    --forest: #25302a;
    --forest-deep: #1c2620;
    --brass: #a67c2b;
    --brass-soft: #c39a4d;
    --hairline: #1a1a1724;
    --hairline-light: #f6f2ea2e
}

* {
    box-sizing: border-box
}

html {
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizelegibility
}

body {
    background-color: var(--bone);
    color: var(--ink);
    font-family: var(--font-sans);
    font-feature-settings: "ss01", "cv01";
    overflow-x: hidden
}

html.lenis,
html.lenis body {
    height: auto
}

.lenis.lenis-smooth {
    scroll-behavior: auto !important
}

.lenis.lenis-stopped {
    overflow: hidden
}

.grain-overlay {
    z-index: 60;
    pointer-events: none;
    opacity: .4;
    mix-blend-mode: multiply;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.82' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
    position: fixed;
    inset: 0
}

.photo-warm:after {
    content: "";
    mix-blend-mode: multiply;
    pointer-events: none;
    background: linear-gradient(#25302a1f 0%, #a67c2b1a 100%), #634a2114;
    position: absolute;
    inset: 0
}

.font-serif {
    font-family: var(--font-serif)
}

.text-balance {
    text-wrap: balance
}

.text-pretty {
    text-wrap: pretty
}

.hairline {
    background: var(--hairline);
    width: 100%;
    height: 1px
}

.draw-underline {
    position: relative
}

.draw-underline:after {
    content: "";
    transform-origin: 0;
    background: currentColor;
    width: 100%;
    height: 1px;
    transition: transform .5s cubic-bezier(.22, 1, .36, 1);
    position: absolute;
    bottom: -2px;
    left: 0;
    transform: scaleX(0)
}

.draw-underline:hover:after {
    transform: scaleX(1)
}

::selection {
    color: var(--ink);
    background: #a67c2b38
}

@media (prefers-reduced-motion:reduce) {

    *,
    :before,
    :after {
        scroll-behavior: auto !important;
        transition-duration: .001ms !important;
        animation-duration: .001ms !important
    }
}

@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-space-y-reverse {
    syntax: "*";
    inherits: false;
    initial-value: 0
}

@property --tw-divide-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-ordinal {
    syntax: "*";
    inherits: false
}

@property --tw-slashed-zero {
    syntax: "*";
    inherits: false
}

@property --tw-numeric-figure {
    syntax: "*";
    inherits: false
}

@property --tw-numeric-spacing {
    syntax: "*";
    inherits: false
}

@property --tw-numeric-fraction {
    syntax: "*";
    inherits: false
}

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

@property --tw-shadow-color {
    syntax: "*";
    inherits: false
}

@property --tw-shadow-alpha {
    syntax: "<percentage>";
    inherits: false;
    initial-value: 100%
}

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

@property --tw-inset-shadow-color {
    syntax: "*";
    inherits: false
}

@property --tw-inset-shadow-alpha {
    syntax: "<percentage>";
    inherits: false;
    initial-value: 100%
}

@property --tw-ring-color {
    syntax: "*";
    inherits: false
}

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

@property --tw-inset-ring-color {
    syntax: "*";
    inherits: false
}

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

@property --tw-ring-inset {
    syntax: "*";
    inherits: false
}

@property --tw-ring-offset-width {
    syntax: "<length>";
    inherits: false;
    initial-value: 0
}

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

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

@property --tw-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-ease {
    syntax: "*";
    inherits: false
}