/*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */
@layer properties {
    @supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))) {

        *,
        :before,
        :after,
        ::backdrop {
            --tw-rotate-x: initial;
            --tw-rotate-y: initial;
            --tw-rotate-z: initial;
            --tw-skew-x: initial;
            --tw-skew-y: initial;
            --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-outline-style: solid;
            --tw-blur: initial;
            --tw-brightness: initial;
            --tw-contrast: initial;
            --tw-grayscale: initial;
            --tw-hue-rotate: initial;
            --tw-invert: initial;
            --tw-opacity: initial;
            --tw-saturate: initial;
            --tw-sepia: initial;
            --tw-drop-shadow: initial;
            --tw-drop-shadow-color: initial;
            --tw-drop-shadow-alpha: 100%;
            --tw-drop-shadow-size: initial;
            --tw-duration: initial;
            --tw-ease: initial
        }
    }
}

@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-white: #fff;
        --spacing: .25rem;
        --font-weight-normal: 400;
        --ease-in-out: cubic-bezier(.4, 0, .2, 1);
        --default-transition-duration: .15s;
        --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
        --default-font-family: var(--font-sans);
        --default-mono-font-family: var(--font-mono)
    }
}

@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;
        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 {
    .visible {
        visibility: visible
    }

    .absolute {
        position: absolute
    }

    .fixed {
        position: fixed
    }

    .relative {
        position: relative
    }

    .static {
        position: static
    }

    .sticky {
        position: sticky
    }

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

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

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

    .block {
        display: block
    }

    .flex {
        display: flex
    }

    .grid {
        display: grid
    }

    .hidden {
        display: none
    }

    .h-fit {
        height: fit-content
    }

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

    .min-h-screen {
        min-height: 100vh
    }

    .w-fit {
        width: fit-content
    }

    .w-full {
        width: 100%
    }

    .transform {
        transform: var(--tw-rotate-x, )var(--tw-rotate-y, )var(--tw-rotate-z, )var(--tw-skew-x, )var(--tw-skew-y, )
    }

    .flex-col {
        flex-direction: column
    }

    .flex-wrap {
        flex-wrap: wrap
    }

    .items-center {
        align-items: center
    }

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

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

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

    .overflow-hidden {
        overflow: hidden
    }

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

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

    .border-\[\#1C1C1C\] {
        border-color: #1c1c1c
    }

    .border-\[\#FF8C19\] {
        border-color: #ff8c19
    }

    .bg-\[\#1C1C1C\] {
        background-color: #1c1c1c
    }

    .bg-\[\#FF8C19\] {
        background-color: #ff8c19
    }

    .bg-gradient-to-br {
        --tw-gradient-position: to bottom right in oklab;
        background-image: linear-gradient(var(--tw-gradient-stops))
    }

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

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

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

    .text-center {
        text-align: center
    }

    .align-middle {
        vertical-align: middle
    }

    .text-\[14px\] {
        font-size: 14px
    }

    .leading-\[19\.6px\] {
        --tw-leading: 19.6px;
        line-height: 19.6px
    }

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

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

    .text-\[\#1C1C1C\] {
        color: #1c1c1c
    }

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

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

    .filter {
        filter: var(--tw-blur, )var(--tw-brightness, )var(--tw-contrast, )var(--tw-grayscale, )var(--tw-hue-rotate, )var(--tw-invert, )var(--tw-saturate, )var(--tw-sepia, )var(--tw-drop-shadow, )
    }

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

    .duration-300 {
        --tw-duration: .3s;
        transition-duration: .3s
    }

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

    @media(hover:hover) {
        .hover\:bg-\[\#2E2E2E\]:hover {
            background-color: #2e2e2e
        }

        .hover\:bg-\[\#FFA851\]:hover {
            background-color: #ffa851
        }
    }

    @media(min-width:48rem) {
        .md\:hidden {
            display: none
        }
    }
}

:root {
    --season: "Season Serif";
    interpolate-size: allow-keywords
}

html,
body {
    color: #f8f9fa;
    background-color: #0d1117;
    height: 100%;
    margin: 0;
    font-family: Inter
}

.season {
    font-family: Season Serif !important
}

.container {
    width: 95vw;
    max-width: 1400px;
    margin: 0 auto;
    padding: 2rem min(5vw, 1rem)
}

section.lines,
footer.lines {
    position: relative
}

section.lines.anim:before,
section.lines.anim:after {
    height: 0
}

section.lines:before,
section.lines:after,
footer.lines:before,
footer.lines:after {
    content: "";
    z-index: 500;
    width: 1px;
    height: 100%;
    transition: height 1s;
    position: absolute;
    top: 0
}

section.lines:before,
footer.lines:before {
    background: #fff3;
    left: min(1vw, 1rem)
}

section.lines:after,
footer.lines:after {
    background: #fff3;
    right: min(1vw, 1rem)
}

section.lines.darkLines:before,
section.lines.darkLines:after,
footer.lines.darkLines:before,
footer.lines.darkLines:after {
    background: #222a36
}

section {
    border-bottom: 1px solid #222a36 !important
}

.flex {
    display: flex
}

.flex-col {
    flex-direction: column
}

@media(min-width:768px) {
    .md-flex-row {
        flex-direction: row
    }
}

.items-center {
    align-items: center
}

.justify-center {
    justify-content: center
}

.gap-4 {
    gap: 1rem
}

.grid {
    display: grid
}

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

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

.relative {
    position: relative
}

.w-fit {
    width: fit-content
}

.w-full {
    width: 100%
}

.h-full {
    height: 100%
}

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

section>.overlay {
    z-index: 1;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}

section>.overlay+.container {
    z-index: 2;
    position: relative
}

header {
    z-index: 50;
    background: #0d1117;
    justify-content: space-between;
    width: 100%;
    display: flex;
    position: relative;
    top: 0
}

header .container {
    justify-content: space-between;
    align-items: center;
    display: flex
}

header .container .menu-container {
    align-items: center;
    gap: 2rem;
    display: flex
}

header .container .menu-container nav {
    gap: 2rem;
    display: flex
}

header nav a {
    font-family: Forma;
    font-weight: 400;
    font-style: Regular;
    letter-spacing: 1.3px;
    text-transform: uppercase;
    color: #f8f9fa;
    opacity: .8;
    font-size: 12px;
    line-height: 21px;
    text-decoration: none;
    transition: opacity .3s ease-in-out;
    position: relative
}

header nav a:before {
    content: url("data:image/svg+xml,%3csvg%20width='8'%20height='8'%20viewBox='0%200%208%208'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M3.55342%200.355947L3.30857%202.60163C3.26822%202.97085%202.97086%203.26821%202.60164%203.30855L0.35595%203.55341L0%203.59209V4.40791L0.35595%204.44659L2.60164%204.69145C2.97086%204.73179%203.26822%205.02915%203.30857%205.39837L3.55342%207.64407L3.59211%208H4.40792L4.44661%207.64407L4.69147%205.39837C4.73181%205.02915%205.02917%204.73179%205.39839%204.69145L7.64406%204.44659L8%204.4079V3.59209L7.64406%203.55341L5.39839%203.30855C5.02917%203.26821%204.73181%202.97085%204.69147%202.60163L4.44661%200.355947L4.40792%200H3.59211L3.55342%200.355947Z'%20fill='%23E8621A'/%3e%3c/svg%3e");
    opacity: 0;
    transition: opacity .3s ease-in-out;
    display: flex;
    position: absolute;
    top: 50%;
    left: -15px;
    transform: translateY(-50%)
}

header nav a:hover,
header nav a:focus-visible,
header nav a.active,
header nav a:hover:before,
header nav a:focus-visible:before,
header nav a.active:before {
    opacity: 1;
    transition: opacity .3s
}

header nav a.with-arrow {
    align-items: center;
    gap: 5px;
    display: flex
}

@media(max-width:800px) {
    header .container .menu-container nav {
        opacity: 0;
        visibility: hidden;
        background: #0d1117;
        flex-direction: column;
        gap: 1rem;
        width: 100%;
        padding: 1.5em 1.5em 1.5em 3rem;
        transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
        position: absolute;
        top: 90%;
        left: 0
    }

    header .container .menu-container nav.open {
        opacity: 1;
        visibility: visible;
        transition: opacity .3s ease-in-out, visibility .3s ease-in-out
    }
}

.site-header {
    visibility: hidden;
    opacity: 0;
    height: 0;
    transition: all 500ms ease;
}

.site-header.scroll-down {
    visibility: visible;
    opacity: 1;
    height: auto;
    transition: all 1000ms ease;
}

#toggleMenu {
    cursor: pointer;
    z-index: 100;
    background: 0 0;
    border: 1px solid #4949497d;
    border-radius: 6px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: .3em;
    width: 40px;
    height: 40px;
    display: flex;
    position: relative
}

#toggleMenu span {
    background-color: #f8f9fa;
    width: 20px;
    height: 1px;
    transition: all .3s ease-in-out;
    display: block;
    position: relative
}

#toggleMenu.open span:first-child {
    width: 25px;
    transition: all .3s ease-in-out;
    transform: rotate(45deg)translate(2px, 1px)
}

#toggleMenu.open span:last-child {
    width: 25px;
    transition: all .3s ease-in-out;
    transform: rotate(-45deg)translate(2px, -1px)
}

@media(min-width:800px) {
    #toggleMenu {
        display: none !important
    }
}

.hero {
    max-height: 1500px;
    position: relative
}

@media(min-width:800px) {
    .hero {
        min-height: 100vh
    }
}

@media(min-width:2300px) {
    .hero {
        height: 100vh;
        min-height: 100%;
        max-height: 1000px
    }
}

.hero .container {
    z-index: 2;
    position: relative
}

.hero video {
    object-fit: cover;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0 will-change:transform;
}

.hero .scroll {
    z-index: 10;
    position: absolute;
    bottom: 2rem;
    right: 2rem
}

.hero .scroll svg {
    overflow: hidden
}

.hero .scroll #arrow {
    animation: 3.3s ease-out infinite scrollDown
}

@keyframes scrollDown {
    0% {
        transform: translateY(-100px)
    }

    25% {
        transform: translateY(0)
    }

    50% {
        transform: translateY(0)
    }

    75% {
        transform: translateY(0)
    }

    to {
        transform: translateY(70px)
    }
}

@media(max-width:800px) {
    .hero .scroll {
        display: none
    }
}

@media(min-width:800px) {

    .hero-fixed,
    .fixed-container {
        width: 100%;
        height: 100%;
        position: fixed;
        top: 0;
        left: 0
    }
}

.hero .overlay {
    background: linear-gradient(#0000, #0d1117);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}

.hero h4 {
    letter-spacing: -2%;
    font-family: Season Serif;
    font-size: 30px;
    font-weight: 300
}

.hero h1 {
    font-family: Season Serif;
    font-weight: 300;
    font-style: Light;
    letter-spacing: -2%;
    text-align: center;
    max-width: 20ch;
    margin: auto;
    font-size: clamp(60px, 10vw, 80px);
    line-height: clamp(60px, 10vw, 67px)
}

.hero .down {
    margin-inline: auto;
    gap: 2rem;
    max-width: 800px;
    margin-top: min(10vw, 10rem);

    margin-inline: auto;
    gap: 2rem;
    max-width: 1000px;
    margin-top: min(10vw, 10rem);
}

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

@media(min-width:1600px) {
    .hero .down {
        margin-top: min(20vw, 18rem)
    }
}

.hero p {
    letter-spacing: 0%;
    opacity: .8;
    font-size: 18px;
    font-weight: 500;
    line-height: 25px;
    max-width: 35ch;
}


@media(min-width:800px) {
    .hero p:last-child {
        margin-left: auto;
        text-align: end;
    }
}

@media(max-width:800px) {
    .hero h4 {
        font-size: 6vw
    }

    .hero h1 {
        font-size: 15vw;
        line-height: max(40px, 15vw)
    }

    section.hero {
        height: 100%;
        max-height: none
    }
}

header {
    height: 0
}

.hero video {
    opacity: 0;
    transform: scale(1.2)
}

header .navbar a {
    transform: translateY(-50px)
}

.hero .arrow {
    transform: rotate(60deg)
}

header .navbar a,
header .logo,
.hero h4,
.hero h1,
.hero p,
.hero .arrow,
.hero .scroll {
    visibility: hidden
}

header .logo {
    will-change: opacity, transform
}

@property --tw-rotate-x {
    syntax: "*";
    inherits: false
}

@property --tw-rotate-y {
    syntax: "*";
    inherits: false
}

@property --tw-rotate-z {
    syntax: "*";
    inherits: false
}

@property --tw-skew-x {
    syntax: "*";
    inherits: false
}

@property --tw-skew-y {
    syntax: "*";
    inherits: false
}

@property --tw-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-outline-style {
    syntax: "*";
    inherits: false;
    initial-value: solid
}

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

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

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

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

@property --tw-hue-rotate {
    syntax: "*";
    inherits: false
}

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

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

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

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

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

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

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

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

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

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

/* ===============================
   Common Typography (Pages & Posts)
   =============================== */

/* Headings */
#page h1,
#post h1 {
    color: #eef4ff;
    font-family: var(--season);
    font-size: clamp(2.25rem, 5vw, 4.5rem);
    line-height: 0.95;
    font-weight: 300;
    letter-spacing: -0.02em;
    margin: 3rem 0 1rem;
}


/* Headings */
#page h2,
#post h2 {
    color: #eef4ff;
    font-family: var(--season);
    font-size: clamp(2.15rem, 5vw, 4.1rem);
    line-height: 0.95;
    font-weight: 300;
    letter-spacing: -0.02em;
    margin: 3rem 0 1rem;
}

#page h3,
#post h3 {
    font-family: Inter, sans-serif;
    font-weight: 500;
    font-size: clamp(1.5rem, 2.5vw, 2rem);
    line-height: 1.2;
    color: #f8f9fa;
    margin: 2.5rem 0 0.75rem;
}

#page h4,
#post h4 {
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.4;
    color: #f8f9fa;
    opacity: 0.8;
    max-width: 55ch;
    margin: 2rem 0 0.5rem;
}

/* Paragraphs */
#page p,
#post p {
    font-family: Inter, sans-serif;
    font-weight: 400;
    font-size: clamp(1rem, 1.4vw, 1.25rem);
    line-height: 1.5;
    color: #f8f9fa;
    opacity: 0.8;
    max-width: 65ch;
    margin-bottom: 1.25rem;
}

/* Links */
#page a,
#post a {
    color: #9ecbff;
    text-decoration: none;
    transition: opacity 0.2s ease;
}

#page a:hover,
#post a:hover {
    opacity: 0.7;
}

/* Lists */
#page ul,
#post ul,
#page ol,
#post ol {
    margin: 1.5rem 0;
    padding-left: 1.5rem;
    max-width: 60ch;
}

#page li,
#post li {
    margin-bottom: 0.5rem;
    line-height: 1.5;
    list-style-type: disc;

    font-family: Inter, sans-serif;
    font-weight: 400;
    font-size: clamp(1rem, 1.4vw, 1.25rem);
    line-height: 1.5;
    color: #f8f9fa;
    opacity: 0.8;
    max-width: 65ch;
    margin-bottom: 1.25rem;
}

/* Images */
#page img,
#post img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 2rem 0;
    border-radius: 8px;
}

/* Text emphasis */
#page strong,
#post strong {
    font-weight: 600;
    color: #ffffff;
}

#page em,
#post em {
    font-style: italic;
}

/* Blockquotes */
#page blockquote,
#post blockquote {
    border-left: 3px solid #9ecbff;
    padding-left: 1rem;
    margin: 2rem 0;
    opacity: 0.9;
    font-style: italic;
}

/* First / Last child spacing fix */
#page>*:first-child,
#post>*:first-child {
    margin-top: 0;
}

#page>*:last-child,
#post>*:last-child {
    margin-bottom: 0;
}