@font-face {
    font-family: Geist;
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url(./fonts/fef07dbb0973bf53-s.3p2_lha1f2xer_2.woff2)format("woff2");
    unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F
}

@font-face {
    font-family: Geist;
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url(./fonts/8a480f0b521d4e75-s.1qq4vpdcun5oj_3.woff2)format("woff2");
    unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116
}

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

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

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

@font-face {
    font-family: Geist Fallback;
    src: local(Arial);
    ascent-override: 95.94%;
    descent-override: 28.16%;
    line-gap-override: 0.0%;
    size-adjust: 104.76%
}

.geist_9c6cb61b-module__8NX9hq__className {
    font-family: Geist, Geist Fallback;
    font-style: normal
}

.geist_9c6cb61b-module__8NX9hq__variable {
    --font-geist: "Geist", "Geist Fallback"
}

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

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

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

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

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

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

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

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

@font-face {
    font-family: Enriqueta Fallback;
    src: local(Times New Roman);
    ascent-override: 97.45%;
    descent-override: 23.61%;
    line-gap-override: 0.0%;
    size-adjust: 110.52%
}

.enriqueta_be48197e-module__oJEyeW__className {
    font-family: Enriqueta, Enriqueta Fallback;
    font-style: normal
}

.enriqueta_be48197e-module__oJEyeW__variable {
    --font-enriqueta: "Enriqueta", "Enriqueta 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-border-style: solid
        }
    }
}

@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;
        --default-font-family: var(--font-sans);
        --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 {
    .grid {
        display: grid
    }

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

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0
}

html {
    scroll-behavior: smooth
}

body {
    color: #1f2937;
    background-color: #fff;
    font-family: Segoe UI, Roboto, -apple-system, BlinkMacSystemFont, sans-serif
}

main {
    margin: 0;
    padding: 0
}

input,
textarea,
select {
    border: 1px solid #d1d5db;
    border-radius: .5rem;
    padding: .75rem;
    font-family: inherit;
    font-size: 1rem;
    transition: border-color .3s
}

input:focus,
textarea:focus,
select:focus {
    border-color: #ff1493;
    outline: none;
    box-shadow: 0 0 0 3px #ff14931a
}

@keyframes slideInUp {
    0% {
        opacity: 0;
        transform: translateY(30px)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

.animate-slide-in-up {
    animation: .6s ease-out slideInUp
}

@property --tw-border-style {
    syntax: "*";
    inherits: false;
    initial-value: solid
}

.navbar-wrapper {
    z-index: 999;
    border-radius: 50px;
    width: 92%;
    max-width: 1400px;
    position: fixed;
    top: 20px;
    left: 50%;
    transform: translate(-50%)
}

.navbar-container {
    -webkit-backdrop-filter: blur(20px);
    background: #ffffffd1;
    border-radius: 50px;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    max-width: 1200px;
    height: 60px;
    margin: 0 auto;
    padding: 0 28px;
    display: flex;
    position: relative;
    box-shadow: 0 6px 24px #00000014
}

.navbar-logo {
    flex-shrink: 0;
    align-items: center;
    text-decoration: none;
    display: flex
}

.navbar-logo img {
    width: 180px;
    height: auto
}

.navbar-menu {
    align-items: center;
    gap: 48px;
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex
}

.navbar-menu a {
    color: #161616;
    white-space: nowrap;
    font-size: 16px;
    font-weight: 500;
    text-decoration: none;
    transition: color .25s
}

.navbar-menu a:hover,
.navbar-menu a.active {
    color: #ff178f
}

.navbar-right {
    flex-shrink: 0;
    align-items: center;
    gap: 10px;
    display: flex
}

.book-btn {
    color: #fff;
    white-space: nowrap;
    background: #ff138e;
    border-radius: 999px;
    flex-shrink: 0;
    align-items: center;
    gap: 10px;
    padding: 5px 5px 5px 18px;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
    transition: background .25s;
    display: flex
}

.book-btn:hover {
    background: #e0007c
}

.arrow-circle {
    color: #fff;
    background: #000;
    border-radius: 50%;
    flex-shrink: 0;
    justify-content: center;
    align-items: center;
    width: 40px;
    height: 40px;
    font-size: 14px;
    display: flex
}

.hamburger {
    cursor: pointer;
    z-index: 10;
    background: 0 0;
    border: none;
    border-radius: 8px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
    padding: 8px;
    transition: background .2s;
    display: none
}

.hamburger:hover {
    background: #ff138e14
}

.hamburger span {
    transform-origin: 50%;
    background: #161616;
    border-radius: 4px;
    width: 24px;
    height: 2px;
    transition: all .32s;
    display: block
}

.hamburger.open span:first-child {
    transform: translateY(7px)rotate(45deg)
}

.hamburger.open span:nth-child(2) {
    opacity: 0;
    transform: scaleX(0)
}

.hamburger.open span:nth-child(3) {
    transform: translateY(-7px)rotate(-45deg)
}

.mobile-menu {
    z-index: 1;
    background: #fff;
    border-radius: 20px;
    flex-direction: column;
    margin: 0;
    padding: 12px 0;
    list-style: none;
    animation: .28s slideDown;
    display: none;
    position: absolute;
    top: calc(100% + 10px);
    left: 0;
    right: 0;
    overflow: hidden;
    box-shadow: 0 8px 28px #0000001a
}

.mobile-menu.open {
    display: flex
}

@keyframes slideDown {
    0% {
        opacity: 0;
        transform: translateY(-8px)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

.mobile-menu li a {
    color: #161616;
    box-sizing: border-box;
    padding: 13px 24px;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.4;
    text-decoration: none;
    transition: color .2s, background .2s;
    display: block
}

.mobile-menu li a:hover,
.mobile-menu li a.active {
    color: #ff178f;
    background: #ff138e0d
}

@media (max-width:1024px) {
    .navbar-container {
        height: 64px;
        padding: 0 22px
    }

    .navbar-logo img {
        width: 155px
    }

    .navbar-menu {
        gap: 32px
    }

    .navbar-menu a {
        font-size: 15px
    }

    .book-btn {
        padding: 4px 4px 4px 16px;
        font-size: 14px
    }

    .arrow-circle {
        width: 36px;
        height: 36px;
        font-size: 13px
    }
}

@media (max-width:768px) {
    .navbar-wrapper {
        padding: 0 12px;
        top: 10px
    }

    .navbar-container {
        border-radius: 36px;
        height: 60px;
        padding: 0 16px
    }

    .navbar-logo img {
        width: 135px
    }

    .navbar-menu {
        display: none
    }

    .hamburger {
        display: flex
    }

    .navbar-right .book-btn {
        display: none
    }

    .mobile-menu-book {
        padding: 10px 20px 4px
    }

    .mobile-menu-book .book-btn {
        box-sizing: border-box;
        justify-content: center;
        align-items: center;
        gap: 8px;
        width: 100%;
        padding: 10px 10px 10px 20px;
        font-size: 14px;
        line-height: 1.3;
        display: flex
    }

    .arrow-circle {
        width: 32px;
        height: 32px;
        font-size: 12px
    }
}