/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
    :root, :host {
        --font-sans: "Lato", Arial, sans-serif;
        --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
        --color-white: #fff;
        --spacing: 0.25rem;
        --container-xs: 20rem;
        --container-lg: 32rem;
        --container-xl: 36rem;
        --container-2xl: 42rem;
        --container-3xl: 48rem;
        --container-4xl: 56rem;
        --container-5xl: 64rem;
        --container-6xl: 72rem;
        --text-sm: 0.875rem;
        --text-sm--line-height: calc(1.25 / 0.875);
        --text-base: 1rem;
        --text-base--line-height: calc(1.5 / 1);
        --text-lg: 1.125rem;
        --text-lg--line-height: calc(1.75 / 1.125);
        --font-weight-light: 300;
        --font-weight-normal: 400;
        --leading-relaxed: 1.625;
        --leading-loose: 2;
        --radius-3xl: 1.5rem;
        --default-font-family: var(--font-sans);
        --default-mono-font-family: var(--font-mono);
        --color-navy: #072343;
        --color-cream: #f2eee3;
        --color-paper: #faf7ef;
        --color-ivory: #f2eee3;
        --color-copper: #a66225;
        --color-bronze: #dc9659;
        --color-line: #d5c7b3;
        --font-display: "Carrig Refined", "Cormorant Garamond", Georgia, serif;
    }

}

@layer base {
    *, ::after, ::before, ::backdrop, ::file-selector-button {
        box-sizing: border-box;
        margin: 0;
        padding: 0;
        border: 0 solid;
    }

    html, :host {
        line-height: 1.5;
        -webkit-text-size-adjust: 100%;
        tab-size: 4;
        font-family: var(--default-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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 {
        font-size: 75%;
        line-height: 0;
        position: relative;
        vertical-align: baseline;
    }

    sub {
        bottom: -0.25em;
    }

    sup {
        top: -0.5em;
    }

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

    :-moz-focusring:where(:not(iframe)) {
        outline: auto;
    }

    progress {
        vertical-align: baseline;
    }

    summary {
        display: list-item;
    }

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

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

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

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

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

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

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

    ::placeholder {
        opacity: 1;
    }

    @supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {
        ::placeholder {
            color: currentcolor;
            @supports (color: color-mix(in lab, red, red)) {
                color: color-mix(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, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
        padding-block: 0;
    }

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

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

    button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
        appearance: button;
    }

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

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

}

@layer utilities {
    .visible {
        visibility: visible;
    }

    .sr-only {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip-path: inset(50%);
        white-space: nowrap;
        border-width: 0;
    }

    .absolute {
        position: absolute;
    }

    .fixed {
        position: fixed;
    }

    .relative {
        position: relative;
    }

    .static {
        position: static;
    }

    .sticky {
        position: sticky;
    }

    .inset-0 {
        inset: 0px;
    }

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

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

    .top-\[20\%\] {
        top: 20%;
    }

    .right-\[6\%\] {
        right: 6%;
    }

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

    .left-\[6\%\] {
        left: 6%;
    }

    .isolate {
        isolation: isolate;
    }

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

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

    .z-10 {
        z-index: 10;
    }

    .container {
        width: 100%;
        @media (width >= 40rem) {
            max-width: 40rem;
        }

        @media (width >= 48rem) {
            max-width: 48rem;
        }

        @media (width >= 64rem) {
            max-width: 64rem;
        }

        @media (width >= 80rem) {
            max-width: 80rem;
        }

        @media (width >= 96rem) {
            max-width: 96rem;
        }

    }

    .mx-auto {
        margin-inline: auto;
    }

    .my-8 {
        margin-block: calc(var(--spacing) * 8);
    }

    .my-14 {
        margin-block: calc(var(--spacing) * 14);
    }

    .my-16 {
        margin-block: calc(var(--spacing) * 16);
    }

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

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

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

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

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

    .mt-auto {
        margin-top: auto;
    }

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

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

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

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

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

    .block {
        display: block;
    }

    .contents {
        display: contents;
    }

    .flex {
        display: flex;
    }

    .grid {
        display: grid;
    }

    .hidden {
        display: none;
    }

    .inline {
        display: inline;
    }

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

    .table {
        display: table;
    }

    .aspect-square {
        aspect-ratio: 1 / 1;
    }

    .size-24 {
        width: calc(var(--spacing) * 24);
        height: calc(var(--spacing) * 24);
    }

    .h-\[55\%\] {
        height: 55%;
    }

    .h-full {
        height: 100%;
    }

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

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

    .w-auto {
        width: auto;
    }

    .w-full {
        width: 100%;
    }

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

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

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

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

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

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

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

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

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

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

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

    .shrink {
        flex-shrink: 1;
    }

    .grow {
        flex-grow: 1;
    }

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

    .resize {
        resize: both;
    }

    .columns-2 {
        columns: 2;
    }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    .overflow-hidden {
        overflow: hidden;
    }

    .rounded {
        border-radius: 0.25rem;
    }

    .rounded-3xl {
        border-radius: var(--radius-3xl);
    }

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

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

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

    .border-copper {
        border-color: var(--color-copper);
    }

    .border-line {
        border-color: var(--color-line);
    }

    .bg-\[\#1f1309\]\/75 {
        background-color: color-mix(in oklab, #1f1309 75%, transparent);
    }

    .bg-cream {
        background-color: var(--color-cream);
    }

    .bg-navy {
        background-color: var(--color-navy);
    }

    .bg-paper {
        background-color: var(--color-paper);
    }

    .bg-white {
        background-color: var(--color-white);
    }

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

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

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

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

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

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

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

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

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

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

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

    .pr-6 {
        padding-right: calc(var(--spacing) * 6);
    }

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

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

    .pl-5 {
        padding-left: calc(var(--spacing) * 5);
    }

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

    .font-sans {
        font-family: var(--font-sans);
    }

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

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

    .leading-loose {
        --tw-leading: var(--leading-loose);
        line-height: var(--leading-loose);
    }

    .leading-relaxed {
        --tw-leading: var(--leading-relaxed);
        line-height: var(--leading-relaxed);
    }

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

    .whitespace-pre-line {
        white-space: pre-line;
    }

    .text-copper {
        color: var(--color-copper);
    }

    .text-ivory {
        color: var(--color-ivory);
    }

    .text-navy {
        color: var(--color-navy);
    }

    .antialiased {
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }

    .shadow {
        --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }

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

    .blur {
        --tw-blur: blur(8px);
        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,);
    }

    @media (width >= 40rem) {
        .sm\:grid-cols-2 {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

    }

    @media (width >= 48rem) {
        .md\:grid-cols-2 {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

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

        .md\:grid-cols-\[1fr_1fr_1fr\] {
            grid-template-columns: 1fr 1fr 1fr;
        }

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

        .md\:text-right {
            text-align: right;
        }

    }

    @media (width >= 64rem) {
        .lg\:block {
            display: block;
        }

        .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-4 {
            grid-template-columns: repeat(4, minmax(0, 1fr));
        }

        .lg\:grid-cols-\[0\.8fr_1\.2fr\] {
            grid-template-columns: 0.8fr 1.2fr;
        }

        .lg\:grid-cols-\[0\.9fr_1\.1fr\] {
            grid-template-columns: 0.9fr 1.1fr;
        }

        .lg\:grid-cols-\[0\.75fr_1\.25fr\] {
            grid-template-columns: 0.75fr 1.25fr;
        }

        .lg\:grid-cols-\[0\.85fr_1\.15fr\] {
            grid-template-columns: 0.85fr 1.15fr;
        }

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

        .lg\:grid-cols-\[1fr_1\.3fr_1\.2fr\] {
            grid-template-columns: 1fr 1.3fr 1.2fr;
        }

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

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

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

        .lg\:py-7 {
            padding-block: calc(var(--spacing) * 7);
        }

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

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

        .lg\:py-40 {
            padding-block: calc(var(--spacing) * 40);
        }

        .lg\:py-64 {
            padding-block: calc(var(--spacing) * 64);
        }

        .lg\:pb-28 {
            padding-bottom: calc(var(--spacing) * 28);
        }

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

    }

}

.button {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    transition: transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s,filter .4s;
}

.button::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: linear-gradient(110deg,transparent 15%,rgba(255,255,255,.23) 48%,transparent 78%);
    transform: translateX(-130%) skewX(-16deg);
    transition: transform .8s cubic-bezier(.22,1,.36,1);
    pointer-events: none;
    z-index: -1;
}

.button > span {
    transition: transform .45s cubic-bezier(.22,1,.36,1);
}

.button .button-star {
    transition: transform .65s cubic-bezier(.22,1,.36,1);
}

@media (hover:hover) and (pointer:fine) {
    .button:hover {
        transform: translateY(-3px);
        box-shadow: 0 10px 24px rgba(7,35,67,.16);
        filter: brightness(1.035);
    }

    .button:hover::before {
        transform: translateX(130%) skewX(-16deg);
    }

    .button:hover > span {
        transform: translateX(-2px);
    }

    .button:hover .button-star {
        transform: scale(1.16);
    }

    .play-link {
        transition: transform .5s cubic-bezier(.22,1,.36,1),box-shadow .5s;
    }

    .play-link:hover {
        transform: scale(1.08);
        box-shadow: 0 12px 28px rgba(7,35,67,.22);
    }

    .journal-card > a {
        overflow: hidden;
    }

    .journal-card > a > img {
        transition: transform .9s cubic-bezier(.22,1,.36,1);
    }

    .journal-card:hover > a > img {
        transform: scale(1.035);
    }

}

.button:active {
    transform: translateY(0) scale(.98);
}

.navigation-dialog {
    inset: 0 auto 0 0;
    width: min(480px,calc(100% - 32px));
    height: 100dvh;
    min-height: 0;
    max-height: 100dvh;
    overflow-y: auto;
    overscroll-behavior: contain;
    box-shadow: 18px 0 70px rgba(7,35,67,.13);
}

.navigation-dialog::backdrop {
    background: rgba(7,35,67,.56);
    backdrop-filter: blur(4px);
    animation: drawer-backdrop-in .45s ease both;
}

.navigation-dialog.is-closing::backdrop {
    animation: drawer-backdrop-out .32s ease both;
}

.drawer-inner {
    min-height: 100%;
    display: flex;
    flex-direction: column;
    padding: clamp(24px,4vw,48px);
}

.primary-menu {
    font-size: clamp(1.9rem,3.5vw,2.8rem);
    margin: 2.8rem 0;
}

.primary-menu a {
    display: inline-block;
    transition: color .25s,transform .35s cubic-bezier(.22,1,.36,1);
}

.primary-menu a:hover,.primary-menu a:focus-visible {
    transform: translateX(8px);
}

.drawer-footer {
    margin-top: auto;
    border-top: 1px solid var(--color-line);
    padding-top: 24px;
    font-size: 13px;
    line-height: 1.8;
}

.drawer-footer a {
    display: inline-block;
    margin-top: 18px;
    color: var(--color-copper);
}

.reveal-pending {
    opacity: 0;
}

.service-hero {
    background: var(--color-paper);
}

.service-title {
    font-size: clamp(3rem,5.8vw,5.6rem);
    font-variant-caps: small-caps;
}

.service-hero-image {
    width: 100%;
    max-height: 600px;
    aspect-ratio: .9;
    object-fit: cover;
    border-radius: 240px 240px 12px 12px;
}

.podcast-star {
    position: absolute;
    width: var(--star-size,24px);
    height: var(--star-size,24px);
    transform: translate(-50%,-50%);
    object-fit: contain;
    pointer-events: none;
    z-index: 2;
}

.podcast-star:nth-of-type(1) {
    left: 75%;
    top: 6.7%;
    --star-size: 27px;
    --star-delay: -.8s;
}

.podcast-star:nth-of-type(2) {
    left: 97%;
    top: 67.1%;
    --star-size: 19px;
    --star-delay: -2.1s;
}

.podcast-star:nth-of-type(3) {
    left: 9%;
    top: 78.7%;
    --star-size: 23px;
    --star-delay: -3.4s;
}

.podcast-stars {
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.magic-star,.button-star {
    animation: star-glow 5.2s ease-in-out infinite;
    animation-delay: var(--star-delay,0s);
}

@media (min-width:1024px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
    .watercolour {
        background-attachment: fixed;
    }

}

@keyframes star-glow {
    0%,100% {
        opacity: .68;
        filter: drop-shadow(0 0 0 rgba(242,238,227,0));
    }

    50% {
        opacity: 1;
        filter: drop-shadow(0 0 5px rgba(242,238,227,.35));
    }

}

@keyframes drawer-backdrop-in {
    from {
        background: rgba(7,35,67,0);
        backdrop-filter: blur(0);
    }

    to {
        background: rgba(7,35,67,.56);
        backdrop-filter: blur(4px);
    }

}

@keyframes drawer-backdrop-out {
    to {
        background: rgba(7,35,67,0);
        backdrop-filter: blur(0);
    }

}

@media (prefers-reduced-motion:reduce) {
    .reveal-pending {
        opacity: 1;
    }

    .button:hover,.button:active,.button:hover > span,.button:hover .button-star,.play-link:hover,.primary-menu a:hover {
        transform: none;
    }

    .button::before {
        display: none;
    }

    .navigation-dialog::backdrop,.navigation-dialog.is-closing::backdrop {
        animation: none;
        backdrop-filter: none;
    }

    .magic-star,.button-star {
        animation: none;
        opacity: 1;
        filter: none;
    }

    .watercolour {
        background-attachment: scroll;
    }

}

.testimonial-stage {
    position: relative;
    touch-action: pan-y pinch-zoom;
}

.testimonial-dots {
    display: flex;
    align-items: center;
    gap: 0;
}

.testimonial-dot {
    display: grid;
    place-items: center;
    width: 36px;
    height: 44px;
}

.testimonial-dot span {
    display: block;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--color-ivory);
    opacity: .35;
    transition: opacity .3s,transform .3s;
}

.testimonial-dot[aria-pressed="true"] span {
    opacity: 1;
    transform: scale(1.4);
}

.testimonial-dot:hover span {
    opacity: .8;
}

.testimonials:focus-visible {
    outline-offset: -5px;
}

.testimonial-arrow {
    font-family: var(--font-sans);
    font-weight: 300;
}

[data-testimonial-count] {
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.about-arch-frame {
    position: relative;
}

@media (prefers-reduced-motion:no-preference) {
    .podcast-stars {
        animation: podcast-star-orbit 110s linear infinite;
    }

    .podcast-star {
        animation: star-glow 5.2s ease-in-out infinite,podcast-star-upright 110s linear infinite;
        animation-delay: var(--star-delay,0s),0s;
    }

}

@keyframes podcast-star-orbit {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }

}

@keyframes podcast-star-upright {
    from {
        transform: translate(-50%,-50%) rotate(0deg);
    }

    to {
        transform: translate(-50%,-50%) rotate(-360deg);
    }

}

.ohv-editorial-hero {
    padding-top: 38px;
}

.ohv-editorial-heading {
    max-width: 960px;
    margin-inline: auto;
    text-align: center;
}

.ohv-editorial-title {
    font-family: var(--font-display);
    font-size: clamp(4rem,9.3vw,8.5rem);
    line-height: .98;
    font-variant-caps: small-caps;
    letter-spacing: -.035em;
    margin: 22px 0 26px;
}

.ohv-hero-description {
    max-width: 510px;
    margin-inline: auto;
    font-size: 17px;
    line-height: 1.8;
    font-weight: 300;
}

.ohv-panorama {
    margin-top: 64px;
    position: relative;
}

.ohv-panorama-photo {
    display: block;
    width: 100%;
    height: clamp(260px,32vw,430px);
    object-fit: cover;
    object-position: center 45%;
    border-radius: 2px 2px 100px 2px;
}

.ohv-editorial-intro {
    padding-bottom: clamp(4rem,7vw,6.5rem);
}

.ohv-intro-description {
    max-width: 680px;
    margin-inline: auto;
    font-size: clamp(1.05rem,1.6vw,1.3rem);
    font-weight: 300;
}

.ohv-editorial-intro .section-title {
    font-size: clamp(2.5rem,4.3vw,4rem);
}

.ohv-audience .about-title {
    max-width: 400px;
    font-size: clamp(2rem,3vw,2.8rem);
}

.ohv-mission-frame {
    max-width: 440px;
    position: relative;
}

.ohv-mission-photo {
    display: block;
    width: 100%;
    aspect-ratio: .82;
    object-fit: cover;
    border-radius: 2px;
}

.ohv-editorial-mission .section-title {
    max-width: 480px;
}

.ohv-editorial-mission .prose-copy {
    max-width: 570px;
}

.ohv-process-row {
    display: grid;
    grid-template-columns: 52px 1fr;
    gap: 24px;
    padding: 32px 0;
    border-top: 1px solid rgba(242,238,227,.25);
}

.ohv-process-row:first-child {
    padding-top: 0;
    border-top: 0;
}

.ohv-process-row:last-child {
    padding-bottom: 0;
}

.ohv-step-number {
    font-family: var(--font-display);
    font-size: 2.7rem;
    color: var(--color-bronze);
    line-height: 1;
}

.ohv-highlights li {
    position: relative;
    padding-left: 27px;
    font-weight: 300;
}

.ohv-highlights li::before {
    content: '✦';
    position: absolute;
    left: 0;
    top: 0;
    color: var(--color-copper);
    font-size: 14px;
}

.ohv-included-card {
    padding: 36px 0 0;
    border-top: 1px solid var(--color-copper);
}

.ohv-included-card .about-title {
    font-size: clamp(2rem,3vw,2.9rem);
}

.ohv-editorial-included .grid {
    column-gap: clamp(36px,8vw,110px);
}

.ohv-herd-message {
    background: linear-gradient(135deg,#9b5720,#84451d);
}

.ohv-message-photo-wrap {
    max-width: 460px;
    margin-inline: auto;
}

.ohv-message-photo {
    display: block;
    width: 100%;
    aspect-ratio: .9;
    object-fit: cover;
    object-position: center;
    border-radius: 2px;
}

.ohv-herd-message .section-title {
    font-size: clamp(2.6rem,4.3vw,4rem);
}

.ohv-pricing {
    padding: clamp(28px,6vw,76px);
    border-radius: 2px;
}

.ohv-pricing .border-line {
    border-color: rgba(242,238,227,.25);
}

.ohv-price {
    font-family: var(--font-display);
    font-size: clamp(3.5rem,7vw,5.4rem);
    line-height: 1;
}

.ohv-price span {
    font-family: var(--font-sans);
    font-size: 14px;
    font-weight: 300;
}

.ohv-faqs details {
    border-top: 1px solid var(--color-line);
}

.ohv-faqs details:last-child {
    border-bottom: 1px solid var(--color-line);
}

.ohv-faqs summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    cursor: pointer;
    padding: 25px 0;
    font-family: var(--font-display);
    font-size: 1.65rem;
    line-height: 1.25;
    list-style: none;
}

.ohv-faqs summary::-webkit-details-marker {
    display: none;
}

.ohv-faqs summary span {
    flex-shrink: 0;
    font-family: var(--font-sans);
    font-size: 22px;
    color: var(--color-copper);
}

.ohv-faqs details[open] summary span {
    transform: rotate(45deg);
}

.ohv-moon-divider {
    display: block;
    width: min(280px,85%);
    height: auto;
    pointer-events: none;
}

.offering-hero {
    background: var(--color-cream);
    padding-block: clamp(3.5rem,6vw,6rem);
}

.offering-hero-image {
    display: block;
    width: 100%;
    aspect-ratio: 1.15;
    max-height: 460px;
    object-fit: cover;
    border-radius: 120px 16px 16px 16px;
}

.offering-hero-art {
    min-width: 0;
}

.ohv-timeline-scroll {
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x proximity;
    scrollbar-width: thin;
    scrollbar-color: var(--color-copper) var(--color-line);
    padding: 6px 2px 24px;
}

.ohv-festival-list {
    display: flex;
    min-width: 100%;
    width: max-content;
    padding: 0;
    margin: 0;
    list-style: none;
}

.ohv-festival-list > li {
    width: 240px;
    flex-shrink: 0;
    scroll-snap-align: start;
}

.ohv-festival-marker {
    position: relative;
    display: flex;
    align-items: center;
    height: 56px;
}

.ohv-festival-marker::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 28px;
    border-top: 1px solid var(--color-copper);
    opacity: .5;
}

.ohv-festival-list > li:last-child .ohv-festival-marker::after {
    right: calc(100% - 28px);
}

.ohv-festival-marker span {
    position: relative;
    z-index: 1;
    display: grid;
    place-items: center;
    width: 52px;
    height: 52px;
    border: 1px solid var(--color-copper);
    border-radius: 50%;
    background: var(--color-cream);
    color: var(--color-copper);
    font-family: var(--font-display);
    font-size: 1.55rem;
}

.ohv-festival-card {
    margin: 22px 24px 0 0;
    padding: 0;
    min-height: 130px;
}

.ohv-festival-card h4 {
    font-size: 1.75rem;
    line-height: 1.2;
}

.ohv-festival-card p {
    font-size: 13px;
    margin-top: 16px;
}

.ohv-timeline-controls {
    display: flex;
    gap: 10px;
}

.ohv-timeline-controls button:disabled {
    opacity: .3;
    cursor: default;
}

@media (max-width:767px) {
    .ohv-editorial-hero {
        padding-top: 24px;
    }

    .ohv-panorama {
        margin-top: 40px;
    }

    .ohv-panorama-photo {
        border-bottom-right-radius: 60px;
        object-position: 60% center;
    }

    .ohv-mission-frame {
        max-width: 360px;
        margin-inline: auto;
    }

    .ohv-process-row {
        grid-template-columns: 38px 1fr;
        gap: 16px;
    }

    .offering-hero-image {
        border-top-left-radius: 85px;
    }

    .ohv-festival-list > li {
        width: 220px;
    }

}

.herd-corner-ornament {
    transform: rotate(180deg);
}

.testimonial-ornament-right {
    -webkit-transform: rotate(270deg) scaleX(-1);
    transform: rotate(270deg) scaleX(-1);
}

.testimonial-ornament-left {
    -webkit-transform: rotate(-270deg) scaleX(-1);
    transform: rotate(-270deg) scaleX(-1);
}

.meet-dilara-tagline {
    font-family: var(--font-sans);
    font-size: 12px;
    line-height: 1.9;
    font-weight: 400;
    letter-spacing: .12em;
}

.portrait-stars {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: visible;
    pointer-events: none;
}

.portrait-stars-moving {
    display: none;
}

.portrait-stars.is-orbiting .portrait-stars-moving {
    display: inline;
}

.portrait-stars.is-orbiting .portrait-stars-still {
    display: none;
}

.podcast-compact {
    padding-block: clamp(3rem,5vw,4.5rem);
    background: linear-gradient(135deg,#9b5720,#84451d);
}

.podcast-compact-layout {
    display: grid;
    grid-template-columns: 112px minmax(0,1fr);
    align-items: center;
    gap: clamp(28px,5vw,72px);
    max-width: 1120px;
}

.podcast-media-link {
    display: block;
    width: 112px;
    height: 112px;
    color: var(--color-ivory);
    border-radius: 50%;
    transition: transform .45s cubic-bezier(.22,1,.36,1),filter .45s;
}

.podcast-media-link svg {
    display: block;
    width: 100%;
    height: 100%;
}

.podcast-compact-title {
    font-size: clamp(2.4rem,4.5vw,4rem);
    font-variant-caps: small-caps;
}

.podcast-compact-copy .prose-copy {
    max-width: 780px;
}

@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
    .podcast-media-link:hover {
        transform: scale(1.06);
        filter: drop-shadow(0 0 12px rgba(242,238,227,.24));
    }

}

@media (max-width:767px) {
    .podcast-compact-layout {
        grid-template-columns: 64px minmax(0,1fr);
        gap: 20px;
        align-items: start;
    }

    .podcast-media-link {
        width: 64px;
        height: 64px;
        margin-top: 30px;
    }

}

@media (max-width:420px) {
    .podcast-compact-layout {
        grid-template-columns: 1fr;
    }

    .podcast-media-link {
        margin-top: 0;
        width: 70px;
        height: 70px;
    }

}

@media (prefers-reduced-motion:reduce) {
    .portrait-stars.is-orbiting .portrait-stars-moving {
        display: none;
    }

    .portrait-stars.is-orbiting .portrait-stars-still {
        display: inline;
    }

    .podcast-media-link {
        transition: none;
    }

}

.home-offerings-list {
    max-width: 1120px;
    margin-inline: auto;
}

.home-offering-card {
    display: grid;
    grid-template-columns: .365fr .635fr;
    overflow: hidden;
    min-height: 0;
    border: 1px solid var(--color-copper);
    border-radius: 24px;
    background: var(--color-paper);
}

.home-offering-photo {
    display: block;
    width: 100%;
    height: 100%;
    aspect-ratio: 2/3;
    object-fit: cover;
}

.home-offering-copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
    padding: clamp(30px,4.2vw,56px);
}

.home-offering-title {
    font-family: var(--font-display);
    font-variant-caps: small-caps;
    font-size: clamp(2rem,3.7vw,3.5rem);
    line-height: 1.12;
}

.home-offering-description {
    max-width: 470px;
    font-size: clamp(15px,1.5vw,18px);
    line-height: 1.85;
}

.home-offering-copy .button {
    min-height: 60px;
    padding: .9rem 2rem;
    font-size: 1.45rem;
}

@media (max-width:639px) {
    .home-offering-card {
        grid-template-columns: 1fr;
        border-radius: 20px;
    }

    .home-offering-photo {
        aspect-ratio: 1.25;
        height: auto;
        max-height: 360px;
    }

    .home-offering-copy {
        padding: 28px;
        min-height: 320px;
    }

    .home-offering-title {
        font-size: 2.25rem;
    }

    .home-offering-copy .button {
        min-height: 52px;
        font-size: 1.25rem;
    }

}

.charities-orbit-frame {
    color: var(--color-line);
}

.charity-portrait {
    display: block;
    width: 100%;
    height: auto;
}

@media (min-width:1024px) {
    .home-offerings-list {
        max-width: 1240px;
    }

    .home-offering-card {
        border-radius: 18px;
    }

    .home-offering-copy {
        padding: 24px;
    }

    .home-offering-title {
        font-size: clamp(1.65rem,2.1vw,2rem);
    }

    .home-offering-description {
        font-size: 14px;
        line-height: 1.8;
        margin-top: 20px;
    }

    .home-offering-copy .eyebrow {
        font-size: 9px;
        letter-spacing: .14em;
    }

    .home-offering-copy .button {
        min-height: 48px;
        padding: .7rem 1.4rem;
        font-size: 1.15rem;
    }

}

.wisdom-meet-gradient {
    background: linear-gradient(180deg,#fff 0%,var(--color-ivory) 100%);
}

.meet-dilara-tagline {
    text-transform: uppercase;
}

.ohv-page {
    background: var(--color-cream);
}

.offering-page {
    background: var(--color-paper);
}

.offering-cover {
    position: relative;
    isolation: isolate;
    display: flex;
    align-items: center;
    min-height: 560px;
    overflow: hidden;
    background: var(--color-navy);
    border-radius: 0 0 110px 110px;
}

.offering-cover-photo {
    position: absolute;
    inset: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 65% center;
}

.offering-cover-shade {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(90deg,rgba(7,35,67,.95),rgba(7,35,67,.77) 43%,rgba(7,35,67,.18));
}

.offering-cover-content {
    position: relative;
    z-index: 2;
    padding-block: 64px 84px;
}

.offering-cover::after {
    content: '';
    position: absolute;
    inset: 12px;
    z-index: 3;
    border: 1px solid rgba(220,150,89,.65);
    border-top: 0;
    border-radius: 0 0 98px 98px;
    pointer-events: none;
}

.offering-cover .service-title {
    font-size: clamp(3rem,5.7vw,5.6rem);
}

.ohv-year-stats {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    border-top: 1px solid var(--color-line);
    border-bottom: 1px solid var(--color-line);
    padding-block: 32px;
}

.ohv-year-stats li {
    padding-inline: 28px;
    border-right: 1px solid var(--color-line);
    text-align: center;
}

.ohv-year-stats li:last-child {
    border-right: 0;
}

.ohv-stat-value {
    display: block;
    color: var(--color-copper);
    font-family: var(--font-display);
    font-size: clamp(2.6rem,4vw,3.6rem);
    line-height: 1.1;
    margin-bottom: 18px;
}

.ohv-year-stats p {
    font-size: 14px;
    font-weight: 300;
    line-height: 1.8;
}

.ohv-message-photo-wrap {
    position: relative;
    padding: 12px;
    border: 1px solid rgba(242,238,227,.7);
    border-radius: 240px 240px 6px 6px;
}

.ohv-message-photo {
    border-radius: 228px 228px 2px 2px;
}

.ohv-message-corner {
    position: absolute;
    width: 105px;
    left: -22px;
    bottom: -22px;
    height: auto;
    pointer-events: none;
}

.ohv-membership-layout {
    display: grid;
    grid-template-columns: .85fr 1.15fr;
    gap: clamp(40px,6vw,88px);
    align-items: start;
}

.ohv-payment-options {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
}

.ohv-payment-options.has-monthly {
    grid-template-columns: 1fr 1fr;
}

.ohv-payment-option {
    padding: 32px 24px;
    border: 1px solid var(--color-line);
    border-radius: 18px;
    background: var(--color-paper);
}

.ohv-payment-option .ohv-price {
    font-size: clamp(3.2rem,5vw,4.5rem);
}

.ohv-payment-option .ohv-price span {
    display: block;
    margin-top: 12px;
}

@media (max-width:1023px) {
    .ohv-membership-layout {
        grid-template-columns: 1fr;
    }

    .ohv-year-stats {
        grid-template-columns: 1fr 1fr;
        row-gap: 32px;
    }

    .ohv-year-stats li:nth-child(2n) {
        border-right: 0;
    }

}

@media (max-width:639px) {
    .offering-cover {
        min-height: 520px;
        border-radius: 0 0 48px 48px;
    }

    .offering-cover::after {
        inset: 9px;
        border-radius: 0 0 39px 39px;
    }

    .offering-cover-content {
        padding-block: 46px 64px;
    }

    .offering-cover-shade {
        background: linear-gradient(90deg,rgba(7,35,67,.94),rgba(7,35,67,.62));
    }

    .ohv-year-stats li {
        padding-inline: 12px;
    }

    .ohv-year-stats p {
        font-size: 13px;
    }

    .ohv-stat-value {
        font-size: 2.5rem;
    }

    .ohv-payment-options.has-monthly {
        grid-template-columns: 1fr;
    }

    .ohv-payment-option {
        padding: 28px;
    }

    .ohv-message-corner {
        width: 85px;
        left: -12px;
        bottom: -18px;
    }

}

.offering-cover {
    min-height: 630px;
    border-radius: 0 0 80px 80px;
}

.offering-cover-content {
    padding-block: 150px 90px;
}

.offering-cover-shade {
    background: linear-gradient(180deg,rgba(7,35,67,.65),transparent 28%),linear-gradient(90deg,rgba(7,35,67,.82),rgba(7,35,67,.57) 46%,rgba(7,35,67,.08));
}

.offering-cover::after {
    border-radius: 0 0 68px 68px;
    border-color: rgba(242,238,227,.42);
}

.ohv-year-intro {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: clamp(36px,7vw,100px);
    align-items: center;
}

.ohv-year-intro .section-title {
    max-width: 520px;
}

.ohv-year-story {
    max-width: 540px;
}

.ohv-year-inclusions {
    border-top: 1px solid var(--color-line);
    padding-top: 22px;
}

.ohv-festival-slider .ohv-timeline-scroll {
    padding: 16px calc((100% - 300px)/2) 24px;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.ohv-festival-slider .ohv-timeline-scroll::-webkit-scrollbar {
    display: none;
}

.ohv-festival-list {
    gap: 24px;
}

.ohv-festival-list > li {
    width: 300px;
    scroll-snap-align: center;
}

.ohv-festival-card {
    min-height: 330px;
    height: 100%;
    margin: 0;
    padding: 30px 24px;
    border: 1px solid var(--color-line);
    border-radius: 24px;
    background: var(--color-paper);
    text-align: center;
    transition: border-color .4s,box-shadow .4s,background .4s;
}

:is([data-festival-slide],[data-festival-clone])[data-active="true"] .ohv-festival-card {
    border-color: var(--color-copper);
    background: linear-gradient(180deg,var(--color-paper) 65%,#eadecd);
    box-shadow: 0 10px 30px rgba(7,35,67,.07);
}

.ohv-festival-moon {
    width: 78px;
    height: 78px;
    color: var(--color-copper);
    margin: 28px auto;
}

.ohv-festival-card h4 {
    min-height: 2.4em;
    font-size: 1.8rem;
}

.ohv-festival-card .ohv-festival-date {
    margin-top: 14px;
    font-size: 13px;
}

.ohv-slider-footer {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 28px;
    margin-top: 20px;
}

.ohv-timeline-controls {
    align-items: center;
    gap: 20px;
}

[data-timeline-count] {
    font-size: 12px;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.ohv-mission-frame {
    position: relative;
}

.ohv-message-photo-wrap {
    border-radius: 240px 240px 0 0;
}

.ohv-message-photo {
    border-radius: 228px 228px 0 0;
}

.cursor-star {
    display: none;
    position: fixed;
    left: 0;
    top: 0;
    width: 18px;
    height: 18px;
    z-index: 50;
    opacity: 0;
    pointer-events: none;
    transition: opacity .3s;
}

@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
    .cursor-star {
        display: block;
    }

    .cursor-star.is-visible {
        opacity: .27;
    }

}

@media (max-width:767px) {
    .offering-cover {
        min-height: 600px;
        border-radius: 0 0 44px 44px;
    }

    .offering-cover-content {
        padding-block: 140px 70px;
    }

    .offering-cover::after {
        border-radius: 0 0 35px 35px;
    }

    .ohv-year-intro {
        grid-template-columns: 1fr;
    }

    .ohv-festival-slider .ohv-timeline-scroll {
        padding-inline: calc((100% - 260px)/2);
    }

    .ohv-festival-list > li {
        width: 260px;
    }

}

@media (prefers-reduced-motion:reduce) {
    .cursor-star {
        display: none;
    }

}

.ohv-invitation-cover {
    min-height: 660px;
    border-radius: 0 0 72px 72px;
}

.ohv-invitation-cover .offering-cover-content {
    padding-block: 156px 104px;
}

.ohv-invitation-cover .service-hero-copy {
    max-width: 650px;
}

.ohv-invitation-cover .service-title {
    font-size: clamp(4.2rem,7.4vw,7rem);
    line-height: .98;
    letter-spacing: -.025em;
    max-width: 620px;
}

.ohv-invitation-cover .service-hero-copy > .eyebrow {
    color: var(--color-ivory);
    letter-spacing: .24em;
}

.ohv-invitation-cover .service-hero-copy > p:not(.eyebrow) {
    max-width: 410px;
    font-size: 17px;
    line-height: 1.85;
}

.ohv-invitation-cover .offering-cover-photo {
    object-position: 68% center;
}

.ohv-invitation-cover .offering-cover-shade {
    background: linear-gradient(180deg,rgba(7,35,67,.5),transparent 25%),linear-gradient(90deg,rgba(7,35,67,.88),rgba(7,35,67,.62) 38%,rgba(7,35,67,.1) 78%);
}

.ohv-invitation-cover::after {
    inset: 16px;
    border-radius: 0 0 56px 56px;
    border-color: rgba(242,238,227,.35);
}

.ohv-year-layout {
    display: grid;
    grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr);
    align-items: center;
    gap: clamp(36px,5vw,80px);
}

.ohv-year-layout > * {
    min-width: 0;
}

.ohv-year-intro {
    display: block;
}

.ohv-year-intro .section-title {
    max-width: 450px;
    font-size: clamp(2.8rem,4.4vw,4.2rem);
}

.ohv-year-story {
    max-width: 470px;
    margin-top: 28px;
}

.ohv-year-story .ohv-moon-divider {
    width: 210px;
    opacity: .8;
}

.ohv-year-inclusions {
    padding-top: 30px;
    margin-top: 56px;
}

.ohv-year-inclusions .ohv-highlights {
    column-gap: 60px;
}

.ohv-timeline-controls {
    gap: 20px;
}

.ohv-timeline-controls .testimonial-arrow {
    width: 44px;
    height: 44px;
    font-size: 1.2rem;
    border: 0;
    border-radius: 0;
    color: inherit;
    background: none;
    font-family: var(--font-sans);
    font-weight: 300;
}

.ohv-timeline-controls .testimonial-arrow:hover:not(:disabled) {
    background: none;
    color: var(--color-copper);
}

[data-timeline-count] {
    font-size: 14px;
}

.podcast-listening-feature {
    padding-block: clamp(56px,7vw,96px);
}

.podcast-listening-feature .podcast-compact-layout {
    grid-template-columns: minmax(180px,.55fr) minmax(0,1.45fr);
    gap: clamp(36px,6vw,90px);
}

.podcast-listening-art {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 26px;
    padding-block: 24px;
}

.podcast-listening-feature .podcast-media-link {
    width: clamp(108px,12vw,160px);
    height: auto;
    aspect-ratio: 1;
}

.podcast-listening-caption {
    max-width: 180px;
    text-align: center;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .22em;
    line-height: 1.8;
    opacity: .8;
}

.podcast-listening-feature .podcast-compact-copy {
    border-left: 1px solid rgba(242,238,227,.3);
    padding-left: clamp(30px,5vw,70px);
}

.podcast-listening-feature .podcast-compact-title {
    max-width: 620px;
    font-size: clamp(2.8rem,4.8vw,4.6rem);
    line-height: 1.08;
}

.podcast-listening-feature .prose-copy {
    max-width: 600px;
}

@media (max-width:1023px) {
    .ohv-year-layout {
        grid-template-columns: 1fr;
        gap: 44px;
    }

    .ohv-year-intro {
        max-width: 680px;
    }

    .ohv-year-intro .section-title,.ohv-year-story {
        max-width: none;
    }

}

@media (max-width:639px) {
    .ohv-invitation-cover {
        min-height: 600px;
        border-radius: 0 0 40px 40px;
    }

    .ohv-invitation-cover .offering-cover-content {
        padding-block: 144px 78px;
    }

    .ohv-invitation-cover .service-title {
        font-size: clamp(3.7rem,14vw,5rem);
    }

    .ohv-invitation-cover .offering-cover-shade {
        background: linear-gradient(90deg,rgba(7,35,67,.88),rgba(7,35,67,.55));
    }

    .ohv-invitation-cover::after {
        inset: 10px;
        border-radius: 0 0 30px 30px;
    }

    .podcast-listening-feature .podcast-compact-layout {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .podcast-listening-art {
        flex-direction: row;
        justify-content: flex-start;
        padding: 0;
        gap: 24px;
    }

    .podcast-listening-feature .podcast-media-link {
        width: 76px;
        margin: 0;
    }

    .podcast-listening-caption {
        text-align: left;
        max-width: 150px;
    }

    .podcast-listening-feature .podcast-compact-copy {
        border-left: 0;
        border-top: 1px solid rgba(242,238,227,.3);
        padding: 28px 0 0;
    }

}

@media (prefers-reduced-motion:reduce) {
    .ohv-festival-card {
        transition: none;
    }

}

.portrait-star-pulse {
    transform-box: fill-box;
    transform-origin: center;
    animation: portrait-star-breathe 4.2s ease-in-out infinite;
}

@keyframes portrait-star-breathe {
    0%,100% {
        transform: scale(.6);
        opacity: .7;
    }

    50% {
        transform: scale(1.4);
        opacity: 1;
    }

}

.podcast-media-link {
    position: relative;
}

.podcast-media-link .podcast-control-stars {
    position: absolute;
    inset: 0;
    overflow: visible;
    pointer-events: none;
}

.ohv-slider-viewport {
    position: relative;
}

.ohv-slider-viewport::before,.ohv-slider-viewport::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: clamp(24px,5vw,64px);
    pointer-events: none;
    z-index: 2;
}

.ohv-slider-viewport::before {
    left: 0;
    background: linear-gradient(90deg,var(--color-cream),rgba(242,238,227,0));
}

.ohv-slider-viewport::after {
    right: 0;
    background: linear-gradient(270deg,var(--color-cream),rgba(242,238,227,0));
}

.ohv-festival-slider .ohv-timeline-scroll {
    scroll-snap-type: x proximity;
}

.ohv-festival-card {
    opacity: .68;
    transform: scale(.975);
    transition: opacity .65s ease,transform .65s cubic-bezier(.22,1,.36,1),border-color .65s,box-shadow .65s,background .65s;
}

:is([data-festival-slide],[data-festival-clone])[data-active="true"] .ohv-festival-card {
    opacity: 1;
    transform: scale(1);
}

.other-offering-card {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--color-line);
    border-radius: 18px;
    background: var(--color-paper);
}

.other-offering-photo {
    display: block;
    width: 100%;
    aspect-ratio: 1.55;
    object-fit: cover;
}

.other-offering-copy {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: flex-start;
    padding: 28px;
}

@media (prefers-reduced-motion:reduce) {
    .portrait-star-pulse {
        animation: none;
        opacity: 1;
        transform: none;
    }

    .ohv-festival-card {
        transition: none;
        transform: none;
    }

}

.offering-footer-divider {
    padding-bottom: 2rem;
}

.offering-footer-divider img {
    display: block;
    width: 100%;
    height: auto;
    max-width: 1240px;
    margin-inline: auto;
}

.offering-footer-divider .container-wide {
    width: min(760px,calc(100% - 5rem));
}

.library-book-link {
    border-radius: 24px;
    transition: transform .45s cubic-bezier(.22,1,.36,1);
}

@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
    .library-book-link:hover {
        transform: translateY(-4px);
    }

}

.offering-detail-page .service-title {
    font-size: clamp(3.1rem,6.5vw,6rem);
    max-width: 720px;
}

.offering-channelled-messages .service-title {
    font-size: clamp(3.1rem,5.7vw,5.5rem);
}

.offering-session-meta {
    padding-block: 28px;
    text-align: center;
    color: var(--color-copper);
    font-size: 12px;
    letter-spacing: .09em;
    text-wrap: balance;
    border-bottom: 1px solid var(--color-line);
}

.offering-editorial-copy {
    max-width: 810px;
    margin-inline: auto;
    text-align: center;
}

.offering-editorial-copy .prose-copy {
    max-width: 680px;
    margin-inline: auto;
}

.offering-editorial-copy .ohv-moon-divider {
    width: 200px;
}

.offering-editorial-split {
    display: grid;
    grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr);
    gap: clamp(36px,7vw,100px);
    align-items: center;
}

.offering-editorial-reading {
    align-items: start;
}

.offering-editorial-image {
    position: relative;
    width: 100%;
    max-width: 420px;
    margin-inline: auto;
    color: var(--color-copper);
}

.offering-editorial-image > .pointed-arch {
    width: 100%;
    height: auto;
    display: block;
}

.offering-editorial-photo:nth-of-type(even) {
    background: var(--color-ivory);
}

.offering-editorial-copper {
    background: radial-gradient(ellipse at 20% 0%,rgba(245,209,154,.2),transparent 65%),linear-gradient(120deg,#8f5529,#a66225 60%,#885024);
}

.offering-reading-list {
    counter-reset: offering-step;
}

.offering-reading-list > p {
    padding: 22px 0 22px 30px;
    border-top: 1px solid var(--color-line);
    position: relative;
    margin: 0;
}

.offering-reading-list > p::before {
    content: '✧';
    position: absolute;
    left: 0;
    top: 22px;
    color: var(--color-copper);
}

.offering-numbered > p {
    padding-left: 46px;
}

.offering-numbered > p::before {
    counter-increment: offering-step;
    content: counter(offering-step,decimal-leading-zero);
    font-family: var(--font-sans);
    font-size: 12px;
    top: 27px;
}

.offering-quote {
    max-width: 850px;
    margin-inline: auto;
    text-align: center;
}

.offering-quote > img {
    margin: 0 auto 30px;
}

.offering-quote blockquote {
    font-family: var(--font-display);
    font-size: clamp(1.6rem,2.7vw,2.4rem);
    line-height: 1.5;
}

.offering-equine-craniosacral .offering-quote blockquote {
    font-size: clamp(1.15rem,1.65vw,1.5rem);
}

.offering-quote figcaption {
    margin-top: 30px;
    font-family: var(--font-sans);
    font-size: 12px;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--color-copper);
}

.offering-investment {
    background: var(--color-ivory);
    scroll-margin-top: 32px;
}

.offering-price-options {
    display: grid;
    gap: 20px;
}

.offering-price-options .ohv-payment-option {
    padding: 32px;
    background: rgba(255,255,255,.45);
    border: 1px solid var(--color-line);
    border-radius: 22px;
}

.offering-price {
    font-family: var(--font-display);
    font-size: 3.7rem;
    line-height: 1.2;
    margin: 20px 0;
    color: var(--color-copper);
}

.offering-faqs .offering-editorial-split {
    align-items: start;
}

.offering-closing {
    background: linear-gradient(180deg,white,var(--color-ivory));
}

.offering-closing-copy {
    font-family: var(--font-display);
    font-size: clamp(1.8rem,3vw,2.6rem);
    line-height: 1.45;
}

@media (max-width:767px) {
    .offering-editorial-split {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .offering-editorial-image {
        max-width: 340px;
    }

    .offering-detail-page .ohv-invitation-cover {
        min-height: 600px;
    }

    .offering-detail-page .service-title {
        font-size: clamp(3rem,10vw,4.8rem);
    }

    .offering-session-meta {
        padding-block: 22px;
        line-height: 1.8;
    }

    .offering-price-options .ohv-payment-option {
        padding: 26px;
    }

}

.offering-your-sacred-truth .offering-block-0 {
    background: #fff;
}

.offering-your-sacred-truth .offering-block-1, .offering-your-sacred-truth .offering-block-6 {
    background: var(--color-navy);
    color: var(--color-ivory);
}

.offering-your-sacred-truth .offering-block-1 {
    background-image: radial-gradient(ellipse at 95% 10%,rgba(69,99,140,.5),transparent 65%);
}

.offering-your-sacred-truth .offering-block-2 {
    background: var(--color-ivory);
}

.offering-your-sacred-truth .offering-block-4, .offering-your-sacred-truth .offering-block-7, .offering-your-sacred-truth .offering-faqs {
    background: #fff;
}

.offering-your-sacred-truth .offering-block-5 {
    background: #e3ebef;
}

.offering-your-sacred-truth .offering-closing {
    color: var(--color-ivory);
    background: radial-gradient(ellipse at 90% 0%,rgba(244,211,162,.15),transparent 65%),#915625;
}

.offering-your-sacred-truth .offering-block-6 .offering-quote figcaption {
    color: #dbb78e;
}

.sacred-cards-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 32px;
    margin-bottom: 48px;
}

.sacred-cards-heading .section-title {
    max-width: 650px;
}

.sacred-cards-heading .prose-copy {
    max-width: 300px;
}

.sacred-icon-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 0 44px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.sacred-icon-card {
    display: flex;
    flex-direction: column;
    gap: 26px;
    padding: 32px 0;
    border-top: 1px solid rgba(166,98,37,.35);
}

.offering-block-1 .sacred-icon-card {
    border-color: rgba(242,238,227,.28);
}

.offering-line-icon {
    flex-shrink: 0;
    width: 46px;
    height: 46px;
    color: var(--color-copper);
}

.offering-block-1 .offering-line-icon {
    color: #dbb78e;
}

.offering-block-5 .sacred-icon-grid {
    grid-template-columns: repeat(4,minmax(0,1fr));
}

.sacred-journey {
    max-width: 940px;
    margin-inline: auto;
}

.sacred-journey-track {
    display: flex;
    gap: 28px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: thin;
    scrollbar-color: var(--color-line) transparent;
    border-radius: 26px;
    position: relative;
}

.sacred-journey-track:focus-visible {
    outline: 2px solid var(--color-copper);
    outline-offset: 6px;
}

.sacred-journey-card {
    flex: 0 0 100%;
    box-sizing: border-box;
    min-width: 0;
    scroll-snap-align: start;
    padding: clamp(28px,5vw,56px);
    background: var(--color-ivory);
    border: 1px solid var(--color-line);
    border-radius: 26px;
}

.sacred-journey-card .prose-copy {
    max-width: 720px;
    font-size: 18px;
    line-height: 1.85;
}

.sacred-journey-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 30px;
    color: var(--color-copper);
}

.sacred-journey-card-top > span {
    font-family: var(--font-display);
    font-size: 3rem;
    line-height: 1;
    opacity: .6;
}

.sacred-journey-controls {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    margin-top: 24px;
}

.sacred-journey-controls[hidden] {
    display: none;
}

.sacred-journey-controls [data-sacred-count] {
    font-size: 14px;
    min-width: 54px;
    text-align: center;
}

.sacred-journey-controls button:disabled {
    opacity: .3;
    cursor: default;
}

@media (max-width:900px) {
    .sacred-icon-grid,.offering-block-5 .sacred-icon-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

    .sacred-cards-heading {
        display: block;
    }

    .sacred-cards-heading .prose-copy {
        max-width: none;
        margin-top: 24px;
    }

}

@media (max-width:767px) {
    .sacred-icon-grid {
        column-gap: 24px;
    }

    .sacred-journey-card .prose-copy {
        font-size: 16px;
    }

}

@media (max-width:480px) {
    .sacred-icon-grid,.offering-block-5 .sacred-icon-grid {
        grid-template-columns: 1fr;
    }

    .sacred-icon-card {
        flex-direction: row;
        gap: 22px;
        padding-block: 25px;
    }

    .offering-line-icon {
        width: 38px;
        height: 38px;
    }

}

.offering-your-sacred-truth .offering-block-1.watercolour {
    background-image: linear-gradient(rgba(7,35,67,.6),rgba(7,35,67,.83)),url('../images/watercolour.webp');
    background-size: cover;
    background-position: center;
}

.offering-your-sacred-truth .offering-block-5 {
    background: var(--color-ivory);
}

.offering-your-sacred-truth .offering-block-5 > .container-wide {
    display: grid;
    grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr);
    gap: clamp(32px,6vw,88px);
}

.offering-block-5 .sacred-cards-heading {
    display: block;
    margin: 0;
}

.offering-block-5 .sacred-cards-heading .prose-copy {
    max-width: 360px;
    margin-top: 24px;
}

.sacred-takeaways {
    padding: 0;
    margin: 0;
    list-style: none;
}

.sacred-takeaways > li {
    display: grid;
    grid-template-columns: 35px 1fr;
    gap: 20px;
    padding: 26px 0;
    border-top: 1px solid var(--color-line);
}

.sacred-takeaways > li > span {
    color: var(--color-copper);
    font-size: 12px;
    padding-top: 5px;
}

.offering-your-sacred-truth .offering-block-6 {
    padding: 0;
    background: var(--color-navy);
}

.offering-your-sacred-truth .offering-block-6 > .container-wide {
    max-width: none;
    width: 100%;
    padding: 0;
}

.sacred-testimonial-scene {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: var(--color-ivory);
    text-align: center;
    padding: 110px max(24px,10vw);
}

.sacred-testimonial-photo,.sacred-testimonial-shade {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: -2;
    object-fit: cover;
}

.sacred-testimonial-shade {
    z-index: -1;
    background: rgba(31,19,9,.75);
}

.sacred-testimonial-content {
    max-width: 1000px;
    margin: auto;
}

.sacred-testimonial-content blockquote {
    margin-block: 40px;
}

.sacred-testimonial-ornament {
    position: absolute;
    width: 130px;
    pointer-events: none;
}

.sacred-testimonial-right {
    right: 4%;
    top: 35px;
}

.sacred-testimonial-left {
    left: 4%;
    bottom: 35px;
}

.sacred-process-layout {
    display: grid;
    grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr);
    align-items: center;
    gap: clamp(30px,5vw,80px);
}

.sacred-process-layout > * {
    min-width: 0;
}

.sacred-process-layout .sacred-cards-heading {
    display: block;
    margin: 0;
}

.sacred-process-layout .sacred-journey {
    width: 100%;
}

.sacred-journey-viewport {
    position: relative;
}

.sacred-journey-viewport::before,.sacred-journey-viewport::after {
    content: '';
    position: absolute;
    z-index: 2;
    top: 0;
    bottom: 0;
    width: 22px;
    pointer-events: none;
}

.sacred-journey-viewport::before {
    left: 0;
    background: linear-gradient(90deg,#fff,transparent);
}

.sacred-journey-viewport::after {
    right: 0;
    background: linear-gradient(270deg,#fff,transparent);
}

.sacred-process-layout .sacred-journey-track {
    scroll-snap-type: x proximity;
    border-radius: 0;
    padding-block: 14px;
}

.sacred-process-layout .sacred-journey-card {
    padding: 32px;
    border-radius: 24px;
    background: linear-gradient(180deg,var(--color-paper) 65%,#eadecd);
    opacity: .7;
    transform: scale(.975);
    transition: opacity .6s,transform .6s,border-color .6s;
}

.sacred-journey-card[data-active="true"] {
    opacity: 1;
    transform: none;
    border-color: var(--color-copper);
}

.sacred-process-layout .sacred-journey-card-top {
    justify-content: center;
    margin-bottom: 25px;
    position: relative;
}

.sacred-process-layout .sacred-journey-card-top > span {
    position: absolute;
    right: 0;
    font-size: 1.4rem;
}

.sacred-process-layout .offering-line-icon {
    width: 64px;
    height: 64px;
}

.sacred-process-layout .card-title {
    text-align: center;
    margin-bottom: 22px;
    font-size: 1.9rem;
}

.sacred-process-layout .sacred-journey-card .prose-copy {
    font-size: 15px;
    line-height: 1.85;
}

@media (max-width:767px) {
    .sacred-process-layout,.offering-your-sacred-truth .offering-block-5 > .container-wide {
        grid-template-columns: 1fr;
    }

    .sacred-testimonial-ornament {
        width: 70px;
        opacity: .7;
    }

    .sacred-testimonial-scene {
        padding-block: 90px;
    }

}

@media (prefers-reduced-motion:reduce) {
    .sacred-process-layout .sacred-journey-card {
        transition: none;
        transform: none;
    }

}

.offering-your-sacred-truth .ohv-invitation-cover .service-hero-copy > .sacred-hero-meta {
    max-width: 580px;
    font-size: clamp(1.2rem,2vw,1.55rem);
    line-height: 1.5;
    font-weight: 400;
    color: var(--color-ivory);
    text-wrap: balance;
}

.sacred-process-grid-heading {
    text-align: center;
    max-width: 780px;
    margin: 0 auto 52px;
}

.sacred-process-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 24px;
}

.sacred-process-box {
    padding: clamp(28px,4vw,44px);
    border: 1px solid var(--color-line);
    border-radius: 22px;
    background: var(--color-ivory);
}

.sacred-process-number {
    display: block;
    margin-bottom: 25px;
    color: var(--color-copper);
    font-size: 13px;
    letter-spacing: .12em;
}

.sacred-process-box .card-title {
    margin-bottom: 22px;
}

.sacred-process-box .prose-copy {
    font-size: 15px;
    line-height: 1.85;
}

.sacred-deck-layout {
    max-width: 1040px;
    margin-inline: auto;
    text-align: center;
}

.sacred-deck-layout > div:first-child {
    max-width: 700px;
    margin: 0 auto 38px;
}

.sacred-deck-layout .section-title {
    font-size: clamp(1.75rem,2.8vw,2.6rem);
    color: #dfbd95;
}

.sacred-deck {
    width: 100%;
    margin-inline: auto;
    touch-action: pan-y pinch-zoom;
}

.sacred-deck:focus-visible {
    outline: 1px solid var(--color-ivory);
    outline-offset: 14px;
}

.sacred-deck-cards {
    display: grid;
    gap: 32px;
}

.sacred-reflection {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 30px 12px;
    min-width: 0;
}

.sacred-reflection-copy {
    max-width: 960px;
    color: var(--color-ivory);
    font-family: var(--font-display);
    font-size: clamp(2.2rem,4.7vw,4.3rem);
    line-height: 1.16;
    text-wrap: balance;
}

.sacred-deck.is-enhanced .sacred-deck-cards {
    gap: 0;
}

.sacred-deck.is-enhanced .sacred-reflection {
    grid-area: 1/1;
    min-height: 240px;
}

.sacred-deck.is-enhanced .sacred-reflection[aria-hidden="true"] {
    visibility: hidden;
    pointer-events: none;
}

.sacred-deck-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 26px;
    margin: 36px auto 0;
    padding-top: 24px;
    max-width: 220px;
    border-top: 1px solid rgba(242,238,227,.28);
    color: var(--color-ivory);
}

.sacred-deck-controls[hidden] {
    display: none;
}

.sacred-deck-controls [data-deck-count] {
    min-width: 56px;
    text-align: center;
    font-size: 13px;
    font-variant-numeric: tabular-nums;
    letter-spacing: .06em;
}

@media (max-width:767px) {
    .sacred-process-grid {
        grid-template-columns: 1fr;
    }

    .sacred-deck-layout > div:first-child {
        margin-bottom: 22px;
    }

    .sacred-deck.is-enhanced .sacred-reflection {
        min-height: 240px;
        padding-inline: 0;
    }

    .sacred-deck-controls {
        margin-top: 24px;
    }

}

.sacred-reflection-divider {
    display: block;
    margin: 28px auto 0;
    opacity: .85;
}

.ohv-invitation-cover .service-hero-copy > .hero-session-label {
    display: block;
    max-width: 560px;
    width: fit-content;
    padding: 0 0 0 16px;
    border: 0;
    border-left: 1px solid rgba(242,238,227,.5);
    border-radius: 0;
    background: none;
    box-shadow: none;
    color: var(--color-ivory);
    font-family: var(--font-sans);
    font-size: clamp(.8rem,1vw,.9rem);
    line-height: 1.75;
    font-weight: 300;
    letter-spacing: .045em;
    text-wrap: balance;
}

.offering-section-action {
    margin-top: 40px;
    text-align: center;
}

.ohv-membership-action {
    margin-top: 0;
    padding: 0 24px 72px;
}

.sacred-deck-layout {
    position: relative;
}

.sacred-deck-cards {
    position: relative;
}

.sacred-reflection {
    position: relative;
    padding: 40px 65px;
}

.sacred-reflection-number {
    position: absolute;
    z-index: 0;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-54%);
    font-family: var(--font-display);
    font-size: clamp(10rem,26vw,21rem);
    line-height: 1;
    color: rgba(242,238,227,.055);
    pointer-events: none;
}

.sacred-reflection-copy {
    position: relative;
    z-index: 1;
}

.sacred-deck-controls {
    border-top: 0;
    padding-top: 0;
    gap: 25px;
}

.sacred-deck-controls .testimonial-arrow {
    width: 54px;
    height: 54px;
    border: 1px solid rgba(242,238,227,.45);
    border-radius: 50%;
    transition: background .25s,border-color .25s;
}

.sacred-deck-controls .testimonial-arrow:hover {
    background: rgba(242,238,227,.12);
    border-color: var(--color-ivory);
}

.sacred-reflection-invitation {
    margin-top: 40px;
    padding-top: 30px;
    border-top: 1px solid rgba(242,238,227,.2);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 28px;
}

.sacred-reflection-invitation > p {
    max-width: 390px;
    font-size: 14px;
    font-weight: 300;
    line-height: 1.8;
    text-align: left;
}

@media (max-width:767px) {
    .sacred-reflection {
        padding: 35px 12px;
    }

    .sacred-reflection-invitation {
        flex-direction: column;
        gap: 22px;
    }

    .sacred-reflection-invitation > p {
        text-align: center;
    }

    .ohv-invitation-cover .service-hero-copy > .hero-session-label {
        padding-left: 12px;
    }

}

@media (prefers-reduced-motion:reduce) {
    .sacred-deck-controls .testimonial-arrow {
        transition: none;
    }

}

.inner-page {
    background: var(--color-paper);
}

.inner-hero .service-title {
    font-size: clamp(3.2rem,6.8vw,6.4rem);
}

.inner-about .inner-hero .service-title {
    max-width: 760px;
}

.inner-library .inner-hero {
    min-height: 100svh;
}

.inner-contact .inner-hero {
    min-height: 500px;
}

.inner-reading {
    max-width: 820px;
    margin-inline: auto;
}

.inner-reading > .section-title {
    max-width: 760px;
}

.inner-intro .prose-copy {
    text-align: center;
}

.inner-editorial-split {
    display: grid;
    grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr);
    align-items: center;
    gap: clamp(38px,6vw,96px);
}

.inner-editorial-split > * {
    min-width: 0;
}

.inner-editorial-split.inner-reverse {
    grid-template-columns: minmax(0,1.15fr) minmax(0,.85fr);
}

.inner-reverse > :first-child {
    grid-column: 2;
    grid-row: 1;
}

.inner-reverse > :last-child {
    grid-column: 1;
    grid-row: 1;
}

.inner-portrait {
    position: relative;
    max-width: 440px;
    width: 100%;
    margin: 0 auto;
}

.inner-portrait-outline {
    padding: 10px;
    border: 1px solid var(--color-copper);
    border-radius: 240px 240px 0 0;
}

.inner-portrait-photo {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 4/5;
    object-fit: cover;
    border-radius: 230px 230px 0 0;
}

.inner-portrait-star {
    position: absolute;
    top: 58%;
    right: -12px;
}

.inner-chapter:nth-of-type(odd),.inner-book-section:nth-of-type(even) {
    background: var(--color-ivory);
}

.inner-chapter-copper,.inner-podcast-listen,.cranio-context {
    background: radial-gradient(ellipse at 10% 0%,rgba(250,218,168,.15),transparent 65%),linear-gradient(120deg,#8b5026,#a66225 65%,#885024);
}

.inner-chapter-text .inner-reading {
    display: grid;
    grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr);
    gap: 52px;
    max-width: 1100px;
}

.inner-chapter-text .prose-copy {
    margin-top: 0;
}

.inner-details {
    margin-top: 22px;
    border-top: 1px solid var(--color-line);
}

.inner-details summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    padding: 18px 0;
    font-family: var(--font-sans);
    font-size: 14px;
    cursor: pointer;
    list-style: none;
}

.inner-details summary::-webkit-details-marker {
    display: none;
}

.inner-details summary > span {
    font-size: 22px;
    font-weight: 300;
}

.inner-details[open] summary > span {
    transform: rotate(45deg);
}

.inner-details:focus-within {
    outline-offset: 8px;
}

.inner-details .prose-copy {
    padding-bottom: 20px;
}

.inner-details summary:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 4px;
}

.text-ivory .inner-details,.testimonial-full-story {
    border-color: rgba(242,238,227,.3);
}

.inner-jump-links {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px 26px;
    padding-block: 28px;
    margin-top: 32px;
    border-block: 1px solid var(--color-line);
    font-size: 13px;
}

.inner-jump-links a {
    padding: 8px 4px;
    color: var(--color-copper);
}

.inner-jump-links a:hover {
    color: var(--color-navy);
}

.inner-herd .inner-portrait-photo {
    aspect-ratio: 4/4.6;
}

.inner-herd .section-title {
    font-size: clamp(2.4rem,3.8vw,3.8rem);
}

.inner-offering-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 28px;
    margin-top: 60px;
}

.inner-offering-card {
    overflow: hidden;
    border: 1px solid var(--color-line);
    border-radius: 22px;
    display: flex;
    flex-direction: column;
    background: #fff;
}

.inner-offering-photo {
    width: 100%;
    height: 280px;
    object-fit: cover;
}

.inner-offering-card > div {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: flex-start;
    padding: 32px;
}

.inner-offering-meta {
    margin: 22px 0 30px;
    color: var(--color-copper);
    font-size: 12px;
}

.inner-offering-card .button {
    margin-top: auto;
}

.inner-press-panel {
    padding: 36px;
    border: 1px solid rgba(242,238,227,.4);
    border-radius: 22px;
}

.inner-book-display {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 500px;
    padding: 45px 30px;
    border-radius: 240px 240px 16px 16px;
    background: radial-gradient(ellipse at 50% 60%,#dfccb2,transparent 70%),#eee6d7;
}

.inner-book-cover {
    max-width: 290px;
    max-height: 420px;
    width: auto;
    height: auto;
    object-fit: contain;
    filter: drop-shadow(12px 20px 18px rgba(7,35,67,.2));
    transition: transform .4s;
}

.inner-book-display:hover .inner-book-cover {
    transform: translateY(-7px);
}

.inner-book-subtitle {
    color: var(--color-copper);
    font-size: 14px;
    margin-top: 20px;
}

.inner-platforms {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px;
    margin-top: 36px;
}

.inner-listen-symbol {
    display: block;
    max-width: 240px;
    margin-inline: auto;
}

.inner-quote-copy {
    font-family: var(--font-display);
    font-size: clamp(1.8rem,3vw,2.7rem);
    line-height: 1.5;
}

.inner-charity-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 30px;
    align-items: start;
}

.inner-charity-card {
    border: 1px solid var(--color-line);
    border-radius: 20px;
    overflow: hidden;
    background: white;
}

.inner-charity-photo {
    width: 100%;
    height: 280px;
    object-fit: cover;
}

.inner-charity-content {
    padding: 32px;
}

.inner-card-number {
    color: var(--color-copper);
    font-size: 12px;
    display: block;
    margin-bottom: 22px;
    letter-spacing: .15em;
}

.inner-contact-grid {
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(0,2fr);
    gap: clamp(40px,6vw,90px);
}

.inner-contact-address {
    margin-top: 34px;
    font-size: 14px;
}

.inner-contact-address > p {
    color: var(--color-copper);
    font-size: 12px;
    margin-bottom: 8px;
}

.inner-contact-address > a {
    overflow-wrap: anywhere;
}

.inner-contact-form {
    display: flex;
    flex-direction: column;
    gap: 12px;
    position: relative;
}

.inner-contact-form label {
    font-size: 13px;
}

.inner-contact-form input:not([type=hidden]),.inner-contact-form textarea {
    width: 100%;
    padding: 14px 16px;
    background: #fff;
    border: 1px solid var(--color-line);
    border-radius: 8px;
    color: var(--color-navy);
    font: inherit;
    margin-bottom: 14px;
}

.inner-contact-form input:focus-visible,.inner-contact-form textarea:focus-visible {
    outline: 2px solid var(--color-copper);
    outline-offset: 2px;
}

.inner-contact-form textarea {
    resize: vertical;
}

.inner-contact-form .button {
    align-self: flex-start;
}

.inner-honeypot {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
}

.inner-form-status {
    padding: 16px;
    margin-bottom: 24px;
    border: 1px solid var(--color-copper);
    border-radius: 8px;
}

.inner-substack {
    padding-block: 42px;
    text-align: center;
    background: var(--color-ivory);
}

.cranio-page > .section-space {
    padding-block: 64px;
}

.cranio-page .service-hero {
    min-height: 550px;
}

.cranio-page .service-title {
    font-size: clamp(3rem,6vw,5.7rem);
}

.cranio-page .inner-portrait {
    max-width: 340px;
}

.cranio-page .section-title {
    font-size: clamp(2.2rem,3.8vw,3.6rem);
}

.cranio-care-note {
    padding-top: 24px;
    border-top: 1px solid var(--color-line);
}

.cranio-page .testimonials {
    padding-block: 64px;
}

.testimonial-full-story {
    max-width: 800px;
    margin: 28px auto 0;
    text-align: left;
}

.testimonial-full-story .prose-copy {
    font: 300 16px/1.85 var(--font-sans);
}

@media (max-width:900px) {
    .inner-editorial-split,.inner-editorial-split.inner-reverse,.inner-chapter-text .inner-reading,.inner-contact-grid {
        grid-template-columns: 1fr;
    }

    .inner-reverse > :first-child,.inner-reverse > :last-child {
        grid-column: auto;
        grid-row: auto;
    }

    .inner-chapter-text .inner-reading {
        gap: 28px;
    }

    .inner-offering-card > div,.inner-charity-content {
        padding: 26px;
    }

}

@media (max-width:640px) {
    .inner-offering-grid,.inner-charity-grid {
        grid-template-columns: 1fr;
    }

    .inner-book-display {
        min-height: 400px;
        padding: 30px;
    }

    .inner-book-cover {
        max-width: 240px;
        max-height: 340px;
    }

    .inner-platforms {
        flex-direction: column;
        align-items: center;
    }

    .inner-hero .service-title {
        font-size: clamp(2.9rem,11vw,4.6rem);
    }

    .inner-press-panel {
        padding: 26px;
    }

    .inner-contact .inner-hero {
        min-height: 470px;
    }

}

@media (prefers-reduced-motion:reduce) {
    .inner-book-cover {
        transition: none;
    }

    .inner-book-display:hover .inner-book-cover {
        transform: none;
    }

}

.offering-your-sacred-truth .offering-block-5 .offering-section-action {
    grid-column: 2;
    text-align: left;
    margin-top: 0;
}

.service-reading-action {
    margin-top: 30px;
}

.inner-charity-grid {
    align-items: stretch;
}

.inner-charity-card {
    display: flex;
    flex-direction: column;
}

.inner-charity-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.inner-charity-content > .mt-8 {
    margin-top: auto;
    padding-top: 28px;
}

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

.sacred-reflection-invitation > div {
    flex-shrink: 0;
    max-width: 100%;
}

@media (max-width:767px) {
    .offering-your-sacred-truth .offering-block-5 .offering-section-action {
        grid-column: 1;
    }

}

.offering-your-sacred-truth .offering-block-5 > .container-wide {
    row-gap: 28px;
}

.navigation-dialog .primary-menu {
    font-size: clamp(1.45rem,2.3vw,1.8rem);
    line-height: 1.35;
    margin: 30px 0;
}

.navigation-dialog .primary-menu > ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.navigation-dialog .primary-menu > ul > li {
    padding-block: 5px;
}

.navigation-dialog .primary-menu .sub-menu {
    list-style: none;
    font-family: var(--font-sans);
    font-size: .85rem;
    font-weight: 300;
    line-height: 1.55;
    padding: 0 0 0 18px;
    margin: 12px 0 10px 8px;
    border-left: 1px solid var(--color-line);
}

.navigation-dialog .primary-menu .sub-menu a {
    display: block;
    min-height: 32px;
    padding-block: 5px;
}

.navigation-dialog .primary-menu .sub-menu > li + li {
    margin-top: 3px;
}

.navigation-dialog .primary-menu a[aria-current="page"] {
    color: var(--color-copper);
}

@media (max-width:640px) {
    .navigation-dialog .primary-menu {
        margin-block: 24px;
    }

}

.offering-channelled-messages .offering-block-2 {
    background: #fff;
}

.prose-copy a.button,.prose-copy a.button:hover {
    text-decoration: none;
}

.ohv-faqs details[open] > .prose-copy {
    padding-bottom: 30px;
    padding-right: 20px;
}

html {
    scroll-padding-top: 120px;
}

.site-header {
    position: fixed;
    top: var(--header-admin-offset,0px);
    left: 0;
    transition: background .3s,box-shadow .3s;
}

.site-header.header-overlay {
    background: linear-gradient(180deg,rgba(7,35,67,.55),rgba(7,35,67,.12));
}

.site-header.is-scrolled {
    box-shadow: 0 3px 24px rgba(7,35,67,.12);
}

.site-header.header-overlay.is-scrolled {
    background: rgba(7,35,67,.97);
    backdrop-filter: blur(12px);
}

.site-header > .container-wide {
    transition: padding .3s;
}

.site-header.is-scrolled > .container-wide {
    padding-block: 12px;
}

.site-header.is-scrolled .header-logo {
    width: clamp(140px,18vw,220px);
}

body.has-solid-header {
    padding-top: 110px;
}

body.admin-bar .site-header {
    top: var(--header-admin-offset,32px);
}

.inner-library .offering-cover-content,.inner-podcast .offering-cover-content {
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(0,1fr);
    align-items: center;
    gap: clamp(30px,5vw,80px);
}

.library-hero-books {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 18px;
    max-width: 450px;
    margin-inline: auto;
}

.library-hero-books a {
    display: block;
    overflow: hidden;
    border: 1px solid rgba(242,238,227,.3);
    border-radius: 14px;
    box-shadow: 0 12px 25px rgba(0,0,0,.12);
}

.library-hero-books img {
    width: 100%;
    height: auto;
    aspect-ratio: 1;
    object-fit: cover;
}

.inner-library .inner-book-display {
    min-height: 0;
    padding: 0;
    border: 1px solid var(--color-line);
    border-radius: 22px;
    background: none;
    overflow: hidden;
}

.inner-library .inner-book-cover {
    width: 100%;
    height: auto;
    max-width: none;
    max-height: none;
    aspect-ratio: 1;
    object-fit: cover;
    filter: none;
}

.inner-library .inner-book-display:hover .inner-book-cover {
    transform: scale(1.025);
}

.inner-library .inner-book-section .section-title {
    font-size: clamp(2.5rem,4vw,3.9rem);
}

.inner-podcast .inner-hero {
    background: linear-gradient(rgba(7,35,67,.6),rgba(7,35,67,.8)),url('../images/watercolour.webp') center/cover;
}

.inner-podcast .inner-hero > .offering-cover-photo {
    display: none;
}

.inner-podcast .inner-hero > .offering-cover-shade {
    background: linear-gradient(90deg,rgba(7,35,67,.3),transparent);
}

.inner-podcast .inner-hero .service-title {
    font-size: clamp(3.2rem,6vw,5.6rem);
}

.podcast-hero-art {
    width: min(100%,430px);
    aspect-ratio: 1;
    border: 1px solid rgba(242,238,227,.6);
    border-radius: 50%;
    padding: 12px;
    position: relative;
    margin-inline: auto;
}

.podcast-hero-art > img:first-child {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 40% center;
    border-radius: 50%;
}

.podcast-hero-star {
    position: absolute;
    right: 3%;
    bottom: 15%;
}

.inner-podcast .inner-podcast-listen {
    padding-block: 64px;
}

.inner-podcast .inner-podcast-listen .prose-copy {
    font-family: var(--font-display);
    font-size: clamp(1.6rem,2.5vw,2rem);
    line-height: 1.5;
}

.inner-podcast .inner-podcast-listen .inner-listen-symbol {
    max-width: 160px;
}

.inner-podcast .inner-editorial-split {
    grid-template-columns: minmax(0,1.3fr) minmax(0,.7fr);
    align-items: start;
}

.inner-podcast .inner-portrait {
    max-width: 330px;
}

.inner-charity-icon {
    display: block;
    width: 96px;
    height: 96px;
    object-fit: cover;
    border: 1px solid var(--color-line);
    border-radius: 18px;
    margin-bottom: 24px;
}

.journal-archive-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 30px;
}

.journal-post-date {
    display: block;
    margin-top: 16px;
    font-size: 12px;
    color: var(--color-copper);
}

.journal-archive-invitation {
    grid-column: 1/-1;
    padding: 42px;
    border: 1px solid var(--color-line);
    border-radius: 20px;
    text-align: center;
}

@media (max-width:900px) {
    .inner-library .offering-cover-content,.inner-podcast .offering-cover-content,.inner-podcast .inner-editorial-split {
        grid-template-columns: 1fr;
    }

    .inner-library .inner-hero {
        min-height: 100svh;
    }

    .library-hero-books {
        grid-template-columns: repeat(4,minmax(0,1fr));
        gap: 10px;
        max-width: 600px;
    }

    .podcast-hero-art {
        max-width: 320px;
    }

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

}

@media (max-width:767px) {
    body.has-solid-header {
        padding-top: 90px;
    }

    .site-header.is-scrolled .header-logo {
        width: 150px;
    }

    body.admin-bar .site-header {
        top: var(--header-admin-offset,46px);
    }

    .inner-charity-icon {
        width: 82px;
        height: 82px;
    }

    .journal-archive-grid {
        grid-template-columns: 1fr;
    }

    .journal-archive-invitation {
        padding: 28px;
    }

    .ohv-faqs details[open] > .prose-copy {
        padding-right: 0;
    }

}

@media (prefers-reduced-motion:reduce) {
    .site-header,.site-header > .container-wide {
        transition: none;
    }

    .inner-library .inner-book-display:hover .inner-book-cover {
        transform: none;
    }

}

.inner-chapter-journey {
    background: var(--color-ivory);
}

.about-journey-layout {
    display: grid;
    grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr);
    gap: clamp(40px,7vw,100px);
    align-items: start;
}

.about-journey-intro {
    position: sticky;
    top: 125px;
}

.about-journey-photo {
    display: block;
    width: 100%;
    max-height: 440px;
    object-fit: cover;
    object-position: center 40%;
    border-radius: 180px 180px 16px 16px;
    margin-top: 35px;
}

.about-journey-chapters {
    padding-left: 32px;
    border-left: 1px solid var(--color-line);
}

.about-journey-chapter {
    position: relative;
    padding-bottom: 52px;
}

.about-journey-chapter:last-child {
    padding-bottom: 0;
}

.about-journey-marker {
    position: absolute;
    left: -48px;
    top: 0;
    width: 32px;
    height: 32px;
    background: var(--color-ivory);
    color: var(--color-copper);
    font-size: 11px;
    display: grid;
    place-items: center;
    border: 1px solid var(--color-line);
    border-radius: 50%;
}

.about-journey-chapter .prose-copy {
    margin-top: 26px;
}

.about-journey-pause {
    color: var(--color-copper);
    font-family: var(--font-display);
    font-size: clamp(2.6rem,4vw,3.7rem);
    line-height: 1.2;
    margin: 30px 0;
}

.library-contents {
    padding-block: 50px;
    border: 0;
}

.library-contents-heading {
    text-align: center;
    margin-bottom: 30px;
}

.library-contents-heading > p {
    font-size: 13px;
    margin-top: 12px;
}

.library-contents ol {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 14px 28px;
    padding: 0;
    list-style: none;
}

.library-contents a {
    display: grid;
    grid-template-columns: 28px minmax(0,1fr) 24px;
    align-items: center;
    gap: 18px;
    padding: 22px 24px;
    border-radius: 12px;
    background: var(--color-ivory);
    color: var(--color-navy);
    font-family: var(--font-display);
    font-size: 1.45rem;
    line-height: 1.2;
}

.library-contents-number {
    font-family: var(--font-sans);
    font-size: 11px;
    color: var(--color-copper);
}

.library-contents-arrow {
    color: var(--color-copper);
}

.library-contents a:hover {
    background: #e9dfcd;
}

.inner-library .inner-book-display {
    border: 0;
}

.podcast-story-band {
    background: linear-gradient(180deg,#fff 0%,#fff 22%,var(--color-ivory) 85%);
    color: var(--color-navy);
}

.inner-podcast .podcast-story-band .inner-podcast-listen {
    background: none;
}

.inner-podcast .podcast-about .inner-editorial-split {
    grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr);
    align-items: center;
}

.podcast-about-portrait {
    position: relative;
    width: 100%;
    max-width: 390px;
    margin-inline: auto;
    color: var(--color-copper);
}

.podcast-about-portrait > .pointed-arch {
    display: block;
    width: 100%;
    height: auto;
}

.podcast-hero-art > .podcast-hero-orbit {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: visible;
}

@media (max-width:900px) {
    .about-journey-layout,.inner-podcast .podcast-about .inner-editorial-split {
        grid-template-columns: 1fr;
    }

    .about-journey-intro {
        position: static;
    }

    .about-journey-photo {
        max-width: 440px;
        max-height: 380px;
        margin-inline: auto;
    }

    .about-journey-chapters {
        margin-left: 14px;
    }

}

@media (max-width:640px) {
    .library-contents ol {
        grid-template-columns: 1fr;
    }

    .library-contents a {
        font-size: 1.3rem;
        padding: 20px;
    }

}

.inner-charity-icon {
    object-position: center 25%;
}

.inner-about .about-section-1 {
    background: #fff;
}

.inner-about .about-section-1 .inner-reading {
    display: block;
    max-width: 820px;
    text-align: center;
}

.inner-about .about-section-1 .prose-copy {
    margin-top: 32px;
}

.about-healing-portrait {
    color: var(--color-copper);
}

.about-healing-portrait > .pointed-arch {
    display: block;
    width: 100%;
    height: auto;
}

.inner-about .about-section-4 {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background: var(--color-navy);
    color: var(--color-ivory);
}

.about-divine-background,.about-divine-shade {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

.about-divine-background {
    object-fit: cover;
    object-position: center 55%;
}

.about-divine-shade {
    background: linear-gradient(90deg,rgba(16,33,53,.91),rgba(16,33,53,.77) 52%,rgba(16,33,53,.27));
}

.about-divine-copy {
    max-width: 690px;
}

.inner-about .about-section-6 {
    background: radial-gradient(ellipse at 10% 0%,rgba(250,218,168,.15),transparent 65%),linear-gradient(120deg,#8b5026,#a66225 65%,#885024);
}

.about-music-layout {
    display: grid;
    grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr);
    gap: clamp(40px,7vw,100px);
    align-items: center;
}

.about-music-heading {
    text-align: center;
}

.about-music-rings {
    position: relative;
    width: 210px;
    height: 210px;
    margin: 0 auto 32px;
    display: grid;
    place-items: center;
}

.about-music-rings span {
    position: absolute;
    inset: 0;
    border: 1px solid rgba(242,238,227,.38);
    border-radius: 50%;
}

.about-music-rings span:nth-child(2) {
    inset: 25px;
}

.about-music-rings span:nth-child(3) {
    inset: 50px;
}

.about-music-rings img {
    width: 34px;
    height: 34px;
}

.inner-about .about-section-8 {
    background: var(--color-ivory);
    padding-block: 55px;
}

.inner-about .about-section-8 .section-title {
    font-size: clamp(1.8rem,3vw,2.7rem);
}

.offering-your-sacred-truth .offering-block-0 {
    background: linear-gradient(180deg,#fff,var(--color-ivory));
}

.offering-your-sacred-truth .offering-block-2 {
    background: var(--color-ivory);
}

.cranio-introduction {
    display: grid;
    grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr);
    gap: clamp(36px,6vw,90px);
    align-items: center;
}

.cranio-intro-photo {
    padding: 10px;
    border: 1px solid var(--color-copper);
    border-radius: 220px 220px 0 0;
    max-width: 390px;
    width: 100%;
    margin-inline: auto;
}

.cranio-intro-photo img {
    display: block;
    width: 100%;
    aspect-ratio: 4/5;
    object-fit: cover;
    border-radius: 210px 210px 0 0;
}

.cranio-principles {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 24px;
    margin-top: 60px;
}

.cranio-principles article {
    padding: clamp(26px,3vw,42px);
    background: var(--color-ivory);
    border-radius: 18px;
}

.cranio-chapter-number {
    color: var(--color-copper);
    font-size: 12px;
    display: block;
    margin-bottom: 25px;
}

.cranio-principles .prose-copy {
    font-size: 15px;
}

.cranio-detail {
    margin-top: 32px;
}

.cranio-detail summary {
    font-size: 16px;
    padding-block: 24px;
}

.cranio-context-layout {
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(0,1.1fr);
    gap: clamp(36px,6vw,90px);
    align-items: start;
}

.cranio-context-layout .inner-details summary {
    color: var(--color-ivory);
}

.journal-pagination {
    grid-column: 1/-1;
    display: flex;
    justify-content: center;
    gap: 18px;
    margin-top: 30px;
}

.journal-pagination .page-numbers {
    padding: 10px 14px;
}

.journal-pagination .current {
    color: var(--color-copper);
}

.journal-empty {
    grid-column: 1/-1;
    padding-block: 40px;
}

@media (max-width:900px) {
    .about-music-layout,.cranio-introduction,.cranio-context-layout {
        grid-template-columns: 1fr;
    }

    .about-divine-shade {
        background: rgba(16,33,53,.8);
    }

}

@media (max-width:640px) {
    .cranio-principles {
        grid-template-columns: 1fr;
        margin-top: 36px;
    }

    .about-music-rings {
        width: 160px;
        height: 160px;
    }

}

.inner-about .inner-chapter {
    padding-block: clamp(60px,6.5vw,96px);
}

.inner-about .about-section-0,.inner-about .about-section-5,.inner-about .about-section-7 {
    background: #fff;
}

.inner-about .about-section-2,.inner-about .about-section-3 {
    background: var(--color-ivory);
}

.inner-about .about-section-1 {
    padding-top: 20px;
    padding-bottom: 64px;
}

.inner-about .inner-hero > .offering-cover-photo {
    object-position: 70% center;
}

.inner-about .inner-hero .offering-cover-shade {
    background: linear-gradient(90deg,rgba(7,35,67,.86),rgba(7,35,67,.58) 40%,rgba(7,35,67,.08) 80%),linear-gradient(0deg,rgba(7,35,67,.35),transparent 55%);
}

.inner-about .inner-hero .service-hero-copy {
    max-width: 570px;
}

.inner-about .inner-hero .service-title {
    font-size: clamp(3.2rem,5.5vw,5.7rem);
}

.inner-about .about-section-2 .inner-editorial-split {
    align-items: start;
}

.inner-about .about-section-2 .inner-portrait {
    max-width: 360px;
}

.inner-about .about-journey-layout {
    display: block;
    max-width: 930px;
    margin-inline: auto;
}

.inner-about .about-journey-intro {
    position: static;
    text-align: center;
    margin-bottom: 60px;
}

.inner-about .about-journey-chapters {
    padding-left: 0;
    border-left: 0;
}

.inner-about .about-journey-chapter {
    display: grid;
    grid-template-columns: 220px minmax(0,1fr);
    gap: 24px 40px;
    padding: 36px 0 48px;
    border-top: 1px solid var(--color-line);
}

.inner-about .about-journey-marker {
    position: static;
    grid-column: 1;
    width: auto;
    height: auto;
    display: block;
    border: 0;
    border-radius: 0;
    background: none;
    font-size: 12px;
}

.inner-about .about-journey-heading > .card-title {
    max-width: 220px;
    line-height: 1.2;
    margin-top: 18px;
}

.inner-about .about-journey-chapter > .prose-copy {
    grid-column: 2;
    grid-row: 1;
    margin-top: 0;
}

.inner-about .about-section-8 {
    padding-block: 50px;
}

.about-story-gallery {
    background: linear-gradient(180deg,#fff 0%,var(--color-ivory) 90%);
    padding: 0 0 70px;
}

.about-gallery-grid {
    display: grid;
    grid-template-columns: minmax(0,.8fr) minmax(0,1.4fr) minmax(0,.8fr);
    gap: clamp(16px,2.8vw,42px);
    align-items: center;
}

.about-gallery-grid figure {
    margin: 0;
    min-width: 0;
}

.about-gallery-grid figure:first-child {
    padding-top: 55px;
}

.about-gallery-grid figure:last-child {
    padding-bottom: 55px;
}

.about-gallery-grid img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 3/4;
    object-fit: cover;
    border-radius: 180px 180px 0 0;
}

.about-gallery-grid figure:nth-child(2) img {
    aspect-ratio: 5/4;
    border-radius: 8px;
}

.about-gallery-grid figcaption {
    padding-top: 16px;
    color: var(--color-copper);
    font-size: 11px;
    letter-spacing: .08em;
    text-align: center;
}

.offering-channelled-messages .offering-block-0 {
    padding-bottom: clamp(24px,3vw,40px);
}

.offering-channelled-messages .offering-block-1 {
    padding-top: clamp(24px,3vw,40px);
}

.cranio-story {
    max-width: 1100px;
    margin-inline: auto;
}

.cranio-story > .section-title {
    max-width: 700px;
    margin-inline: auto;
}

.cranio-story-navigation {
    margin: 38px 0;
}

.cranio-story-tabs {
    display: flex;
    gap: 8px 24px;
    flex-wrap: wrap;
    justify-content: center;
}

.cranio-story-tabs button {
    color: rgba(242,238,227,.7);
    background: none;
    padding: 12px 0;
    border-bottom: 1px solid transparent;
    font-size: 12px;
    line-height: 1.5;
}

.cranio-story-tabs button span {
    margin-right: 8px;
    font-size: 10px;
}

.cranio-story-tabs button[aria-pressed="true"] {
    border-color: var(--color-ivory);
    color: var(--color-ivory);
}

.cranio-story-tabs button:hover {
    color: var(--color-ivory);
}

.cranio-story-stage {
    display: grid;
    gap: 50px;
}

.cranio-story-slide {
    display: grid;
    grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr);
    gap: clamp(30px,5vw,70px);
    align-items: center;
}

.cranio-story-slide figure {
    margin: 0;
    padding: 10px;
    border: 1px solid var(--color-copper);
    border-radius: 50%;
    aspect-ratio: 1;
    align-self: center;
}

.cranio-story-slide figure img {
    display: block;
    width: 100%;
    height: 100%;
    aspect-ratio: 1;
    object-fit: cover;
    border-radius: 50%;
}

.cranio-story-number {
    display: block;
    color: rgba(242,238,227,.7);
    font-size: 12px;
    margin-bottom: 24px;
}

.cranio-story-copy > .card-title {
    font-size: clamp(2rem,3vw,3rem);
    line-height: 1.15;
}

.cranio-story.is-enhanced .cranio-story-stage {
    gap: 0;
}

.cranio-story.is-enhanced .cranio-story-slide {
    grid-area: 1/1;
}

.cranio-story.is-enhanced .cranio-story-slide[data-active="false"] {
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
}

.cranio-story-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 28px;
    padding-top: 38px;
    margin-top: 38px;
    border-top: 1px solid rgba(242,238,227,.3);
}

.cranio-story-bottom > [data-cranio-arrows] {
    display: flex;
    align-items: center;
    gap: 20px;
}

.cranio-story-bottom [data-cranio-count] {
    min-width: 55px;
    font-size: 12px;
    text-align: center;
}

.cranio-story-bottom .testimonial-arrow {
    color: var(--color-ivory);
    background: none;
    border: 0;
}

@media (max-width:767px) {
    .inner-about .inner-hero .offering-cover-content {
        padding-block: 220px 65px;
    }

    .inner-about .inner-hero .offering-cover-shade {
        background: linear-gradient(0deg,rgba(7,35,67,.92),rgba(7,35,67,.45) 55%,rgba(7,35,67,.12));
    }

    .inner-about .about-journey-chapter {
        grid-template-columns: 1fr;
        gap: 18px;
        padding-block: 30px 38px;
    }

    .inner-about .about-journey-chapter > .prose-copy {
        grid-column: 1;
        grid-row: auto;
    }

    .inner-about .about-journey-heading > .card-title {
        max-width: none;
    }

    .inner-about .about-journey-chapters {
        margin-left: 0;
    }

    .inner-about .about-journey-intro {
        margin-bottom: 36px;
    }

    .about-gallery-grid {
        grid-template-columns: 1fr 1fr;
        gap: 24px 16px;
    }

    .about-gallery-grid figure:first-child,.about-gallery-grid figure:last-child {
        padding: 0;
    }

    .about-gallery-grid figure:nth-child(2) {
        grid-column: 1 / -1;
        grid-row: 1;
    }

    .about-gallery-grid figcaption {
        font-size: 10px;
    }

    .cranio-story-slide {
        grid-template-columns: 1fr;
        align-content: start;
    }

    .cranio-story-slide figure {
        width: 100%;
        max-width: 400px;
        margin-inline: auto;
    }

    .cranio-story-slide figure img {
        aspect-ratio: 1;
        border-radius: 50%;
    }

    .cranio-story-tabs {
        justify-content: flex-start;
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 8px;
    }

    .cranio-story-tabs button {
        flex-shrink: 0;
    }

    .cranio-story-copy {
        padding-top: 0;
    }

    .cranio-story-number {
        margin-bottom: 14px;
    }

    .cranio-story-bottom {
        align-items: flex-start;
        margin-top: 28px;
        padding-top: 28px;
    }

}

@media (min-width:768px) {
    .inner-about .about-section-2 .inner-portrait {
        position: sticky;
        top: 130px;
    }

}

.ohv-team-carousel {
    min-width: 0;
}

.ohv-team-track {
    display: grid;
    gap: 32px;
}

.ohv-team-panel {
    min-width: 0;
    padding: clamp(28px,4vw,48px);
    border: 1px solid rgba(242,238,227,.28);
    border-radius: 120px 120px 16px 16px;
    background: rgba(7,35,67,.2);
}

.ohv-team-number {
    display: block;
    margin: 8px 0 36px;
    color: var(--color-bronze);
    font-family: var(--font-display);
    font-size: clamp(3rem,5vw,4.5rem);
    line-height: 1;
    text-align: center;
}

.ohv-team-panel > h3 {
    text-align: center;
}

.ohv-team-carousel.is-enhanced .ohv-team-track {
    display: flex;
    gap: 0;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    overscroll-behavior-x: contain;
}

.ohv-team-carousel.is-enhanced .ohv-team-track::-webkit-scrollbar {
    display: none;
}

.ohv-team-carousel.is-enhanced .ohv-team-panel {
    flex: 0 0 100%;
    scroll-snap-align: start;
    scroll-snap-stop: always;
}

.ohv-team-controls {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 18px;
    margin-top: 24px;
}

.ohv-team-controls .testimonial-arrow {
    background: none;
    border: 0;
    color: var(--color-ivory);
}

.ohv-team-controls .testimonial-arrow:disabled {
    opacity: .3;
    cursor: default;
}

.ohv-team-controls > span {
    min-width: 55px;
    font-size: 12px;
    text-align: center;
}

.ohv-team-track:focus-visible {
    outline-offset: 5px;
}

.footer-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 52px;
    padding-top: 24px;
    border-top: 1px solid var(--color-line);
    font-size: 12px;
    line-height: 1.65;
}

.footer-legal-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 24px;
}

.footer-legal-links a,.footer-legal-links button {
    font: inherit;
    color: inherit;
    background: none;
    border: 0;
    border-radius: 0;
    padding: 0;
    text-decoration: none;
}

.footer-legal-links a:hover,.footer-legal-links button:hover {
    color: var(--color-copper);
}

.footer-consent-shortcode p {
    margin: 0;
}

.journal-single {
    background: #fff;
}

.journal-article-header {
    padding-block: 42px 0;
    background: linear-gradient(180deg,var(--color-ivory),#faf8f2 70%,#fff);
}

.journal-back-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 12px;
    color: var(--color-copper);
    padding: 6px 0;
}

.journal-title-block {
    max-width: 900px;
    margin: 48px auto 52px;
    text-align: center;
}

.journal-article-title {
    max-width: 18ch;
    margin: 24px auto 28px;
    font-size: clamp(3.2rem,6.5vw,6.2rem);
    line-height: 1.06;
    text-wrap: balance;
}

.journal-article-meta {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px 0;
    font-size: 11px;
    letter-spacing: .04em;
}

.journal-article-meta > * + *::before {
    content: '·';
    display: inline-block;
    margin-inline: 13px;
    color: var(--color-copper);
}

.journal-article-intro {
    max-width: 650px;
    margin: 28px auto 0;
    font-size: 17px;
    line-height: 1.8;
    font-weight: 300;
}

.journal-article-feature {
    margin: 0;
}

.journal-feature-photo {
    display: block;
    width: 100%;
    max-height: 650px;
    aspect-ratio: 16/9;
    object-fit: cover;
    border-radius: 14px;
}

.journal-article-feature figcaption {
    max-width: 700px;
    margin: 16px auto 0;
    font-size: 11px;
    text-align: center;
    color: var(--color-copper);
}

.journal-article-divider {
    width: 190px;
    height: auto;
    margin: 0 auto;
    padding-bottom: 12px;
}

.journal-reading-section {
    padding-block: clamp(45px,6vw,80px) 0;
}

.journal-article-copy {
    max-width: 67ch;
    font-size: 18px;
    line-height: 1.95;
    font-weight: 300;
    overflow-wrap: anywhere;
}

.journal-article-copy > p:first-child {
    font-family: var(--font-display);
    font-size: clamp(1.55rem,2.2vw,1.95rem);
    line-height: 1.6;
    font-weight: 400;
}

.journal-article-copy h2,.journal-article-copy h3 {
    line-height: 1.2;
    margin-top: 2em;
    margin-bottom: .6em;
    color: var(--color-navy);
}

.journal-article-copy h2 {
    font-size: clamp(2rem,3.5vw,3rem);
}

.journal-article-copy h3 {
    font-size: clamp(1.7rem,2.5vw,2.25rem);
}

.journal-article-copy blockquote {
    margin-block: 48px;
    padding: 12px 0 12px 30px;
    border-left: 1px solid var(--color-copper);
    color: var(--color-copper);
    font-family: var(--font-display);
    font-size: clamp(1.8rem,3vw,2.6rem);
    line-height: 1.5;
    font-weight: 400;
}

.journal-article-copy blockquote cite {
    display: block;
    font-family: var(--font-sans);
    font-size: 12px;
    margin-top: 20px;
}

.journal-article-copy figure {
    margin-block: 36px;
}

.journal-article-copy img {
    height: auto;
    border-radius: 8px;
}

.journal-article-copy figcaption {
    font-family: var(--font-sans);
    font-size: 12px;
    line-height: 1.6;
    color: var(--color-copper);
    margin-top: 12px;
    text-align: center;
}

.journal-article-copy hr {
    border: 0;
    width: 90px;
    border-top: 1px solid var(--color-copper);
    margin: 42px auto;
}

.journal-article-end {
    max-width: 700px;
    margin: 50px auto 0;
    padding-bottom: 65px;
    text-align: center;
}

.journal-article-end img {
    margin: 0 auto 20px;
}

.journal-article-end p {
    color: var(--color-copper);
    font-family: var(--font-display);
    font-size: 1.5rem;
}

.journal-subscribe-section {
    background: var(--color-ivory);
    padding-block: 45px;
}

.journal-subscribe-layout {
    max-width: 1000px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 28px;
}

.journal-story-navigation {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 35px;
    padding-block: 55px;
}

.journal-story-link {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
}

.journal-story-next {
    text-align: right;
    grid-column: 2;
}

.journal-story-link:hover .card-title {
    color: var(--color-copper);
}

@media (max-width:640px) {
    .footer-bottom {
        align-items: flex-start;
        flex-direction: column;
        margin-top: 38px;
    }

    .footer-legal-links {
        gap: 12px 20px;
    }

    .journal-article-header {
        padding-top: 24px;
    }

    .journal-title-block {
        margin-block: 30px 38px;
    }

    .journal-article-title {
        font-size: clamp(2.8rem,11vw,4rem);
    }

    .journal-feature-photo {
        aspect-ratio: 4/3;
    }

    .journal-article-copy {
        font-size: 16px;
        line-height: 1.9;
    }

    .journal-article-copy blockquote {
        padding-left: 22px;
        margin-block: 32px;
    }

    .journal-story-navigation {
        gap: 28px;
        padding-block: 40px;
    }

    .journal-story-link .card-title {
        font-size: 1.4rem;
    }

}

.journal-article {
    background: linear-gradient(180deg,var(--color-ivory),#fff 620px);
}

.journal-article-top {
    padding-top: 36px;
}

.journal-article-layout {
    display: grid;
    grid-template-columns: minmax(0,1fr);
    padding-top: 42px;
}

.journal-article-layout.has-feature-image {
    grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr);
    column-gap: clamp(38px,6vw,90px);
}

.journal-article-layout > .journal-article-header {
    padding: 0;
    background: none;
    min-width: 0;
}

.journal-article-layout .journal-title-block {
    margin: 0 0 38px;
    text-align: left;
}

.journal-article-layout .journal-article-title {
    margin: 24px 0;
    font-size: clamp(3rem,5vw,5rem);
    max-width: 18ch;
    overflow-wrap: anywhere;
}

.journal-article-layout .journal-article-meta {
    justify-content: flex-start;
}

.journal-article-categories {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 20px;
}

.journal-article-categories a:hover,.journal-article-tags a:hover {
    text-decoration: underline;
    text-underline-offset: 4px;
}

.journal-article-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 18px;
    margin-top: 20px;
    font-size: 12px;
    color: var(--color-copper);
}

.journal-article-layout .journal-article-intro {
    margin: 26px 0 0;
}

.journal-article-media {
    min-width: 0;
    align-self: stretch;
}

.journal-article-layout .journal-article-feature {
    position: sticky;
    top: 130px;
    margin: 0;
}

.journal-article-layout .journal-feature-photo {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: calc(100svh - 220px);
    aspect-ratio: auto;
    object-fit: contain;
    margin-inline: auto;
    border-radius: 12px;
}

.journal-article-layout .journal-reading-section {
    min-width: 0;
    padding: 0;
}

.journal-article-layout .journal-article-copy {
    margin: 0;
    max-width: 100%;
}

.journal-article-layout .journal-article-end {
    width: 100%;
    margin: 45px 0 0;
}

.journal-article-layout.has-feature-image > .journal-article-header {
    grid-column: 2;
    grid-row: 1;
}

.journal-article-layout.has-feature-image > .journal-article-media {
    grid-column: 1;
    grid-row: 1 / span 3;
}

.journal-article-layout.has-feature-image > .journal-reading-section {
    grid-column: 2;
    grid-row: 2;
}

.journal-article-layout.has-feature-image > .journal-article-end {
    grid-column: 2;
    grid-row: 3;
}

.journal-article-layout:not(.has-feature-image) {
    max-width: 800px;
}

@media (min-width:901px) and (max-height:650px) {
    .journal-article-layout .journal-article-feature {
        top: 115px;
    }

    .journal-article-layout .journal-feature-photo {
        max-height: calc(100svh - 175px);
    }

}

@media (max-width:900px) {
    .journal-article-top {
        padding-top: 24px;
    }

    .journal-article-layout,.journal-article-layout.has-feature-image {
        grid-template-columns: minmax(0,1fr);
        padding-top: 28px;
        max-width: 800px;
    }

    .journal-article-layout.has-feature-image > .journal-article-header {
        grid-column: 1;
        grid-row: 1;
    }

    .journal-article-layout.has-feature-image > .journal-article-media {
        grid-column: 1;
        grid-row: 2;
        margin-bottom: 36px;
    }

    .journal-article-layout.has-feature-image > .journal-reading-section {
        grid-column: 1;
        grid-row: 3;
    }

    .journal-article-layout.has-feature-image > .journal-article-end {
        grid-column: 1;
        grid-row: 4;
    }

    .journal-article-layout .journal-article-feature {
        position: static;
    }

    .journal-article-layout .journal-feature-photo {
        max-height: 70svh;
    }

    .journal-article-layout .journal-article-title {
        font-size: clamp(2.8rem,8vw,4rem);
    }

}

.ohv-meet-team {
    background: #fff;
}

.ohv-meet-team .ohv-team-carousel {
    max-width: 1000px;
    margin: 48px auto 0;
}

.ohv-meet-team .ohv-team-panel {
    display: grid;
    grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr);
    align-items: center;
    gap: clamp(32px,6vw,80px);
    padding: 0;
    border: 0;
    border-radius: 0;
    background: none;
}

.ohv-team-portrait {
    margin: 0;
    padding: 8px;
    border: 1px solid var(--color-copper);
    border-radius: 220px 220px 0 0;
}

.ohv-team-portrait img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 4/5;
    object-fit: cover;
    border-radius: 200px 200px 0 0;
}

.ohv-team-bio {
    padding-block: 24px;
}

.ohv-meet-team .ohv-team-number {
    color: var(--color-copper);
    font-family: var(--font-sans);
    font-size: 12px;
    text-align: left;
    margin: 0 0 24px;
}

.ohv-meet-team .ohv-team-bio h3 {
    text-align: left;
}

.ohv-meet-team .ohv-team-controls {
    color: var(--color-navy);
    margin-top: 32px;
}

.ohv-meet-team .ohv-team-controls .testimonial-arrow {
    color: var(--color-navy);
}

@media (max-width:640px) {
    .ohv-meet-team .ohv-team-panel {
        grid-template-columns: 1fr;
        gap: 24px;
        align-content: start;
    }

    .ohv-team-portrait {
        max-width: 290px;
        margin-inline: auto;
        width: 100%;
    }

    .ohv-team-bio {
        padding-block: 0;
    }

    .ohv-meet-team .ohv-team-carousel {
        margin-top: 32px;
    }

}

.site-header:not(.is-scrolled) {
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
}

.journal-photo-frame {
    width: fit-content;
    max-width: 100%;
    margin-inline: auto;
    padding: 12px;
    border: 1px solid var(--color-line);
    border-radius: 20px;
    background: rgba(255,255,255,.8);
    box-shadow: 0 14px 40px rgba(7,35,67,.06);
}

.journal-article-layout .journal-photo-frame .journal-feature-photo {
    border-radius: 10px;
}

@media (min-width:901px) {
    .journal-article-layout.has-feature-image > .journal-article-media {
        padding-bottom: 80px;
    }

    .journal-article-layout .journal-feature-photo {
        max-height: calc(100svh - 250px);
    }

}

@media (min-width:901px) and (max-height:650px) {
    .journal-article-layout .journal-feature-photo {
        max-height: calc(100svh - 205px);
    }

}

@media (max-width:900px) {
    .journal-photo-frame {
        padding: 9px;
        border-radius: 16px;
    }

}

.drawer-booking {
    margin-bottom: 30px;
}

.ohv-price .ohv-payment-note {
    display: block;
    font-family: var(--font-sans);
    font-size: 14px;
    line-height: 1.7;
    margin-top: 18px;
    color: var(--color-navy);
    font-weight: 300;
}

.ohv-year-summary {
    display: grid;
    gap: 22px;
    font-size: 15px;
    line-height: 1.8;
}

.ohv-year-summary li {
    padding-left: 30px;
}

.ohv-year-summary li::before {
    top: 1px;
}

.ohv-monthly-commitment {
    margin-top: 18px;
    font-size: 14px;
    line-height: 1.7;
    font-weight: 300;
}

.home-mobile-slider {
    min-width: 0;
}

.home-mobile-slider-controls {
    display: none;
}

@media (max-width:767px) {
    .home-mobile-track {
        display: flex;
        align-items: stretch;
        gap: 20px;
        overflow-x: auto;
        padding: 4px 2px 12px;
        scroll-snap-type: x mandatory;
        scroll-padding-left: 2px;
        scrollbar-width: none;
        overscroll-behavior-x: contain;
    }

    .home-mobile-track::-webkit-scrollbar {
        display: none;
    }

    .home-mobile-track > article {
        flex: 0 0 86%;
        min-width: 0;
        scroll-snap-align: start;
        scroll-snap-stop: always;
    }

    .home-mobile-track > article:only-child {
        flex-basis: 100%;
    }

    .home-mobile-track > .journal-empty {
        width: 100%;
        flex-shrink: 0;
    }

    .home-mobile-slider-controls {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 20px;
        margin-top: 20px;
    }

    .home-mobile-slider-controls .testimonial-arrow {
        color: inherit;
        background: none;
        border: 1px solid currentColor;
        border-radius: 50%;
    }

    .home-mobile-slider-controls .testimonial-arrow:disabled {
        opacity: .3;
        cursor: default;
    }

    .home-mobile-slider-controls > span {
        min-width: 55px;
        text-align: center;
        font-size: 12px;
    }

}

.team-bio-open {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    min-height: 44px;
    margin-top: 20px;
    padding: 4px 0;
    border: 0;
    background: transparent;
    color: var(--color-navy);
    font-family: var(--font-sans);
    font-size: 14px;
    cursor: pointer;
}

.team-bio-open[hidden] {
    display: none;
}

.team-bio-open > span {
    text-decoration: underline;
    text-decoration-color: var(--color-copper);
    text-decoration-thickness: 1px;
    text-underline-offset: 6px;
}

.team-bio-open .button-star {
    width: 16px;
    height: 16px;
    animation: none;
    transition: transform .25s ease;
}

.team-bio-open:hover {
    color: var(--color-copper);
}

.team-bio-open:hover .button-star {
    transform: scale(1.12);
}

.team-bio-open:focus-visible {
    outline: 2px solid var(--color-copper);
    outline-offset: 6px;
    border-radius: 2px;
}

@media (prefers-reduced-motion:reduce) {
    .team-bio-open .button-star {
        transition: none;
        transform: none;
    }

}

.team-bio-is-open {
    overflow: hidden;
}

.team-bio-dialog {
    width: min(760px,calc(100% - 32px));
    max-width: none;
    max-height: min(84svh,850px);
    margin: auto;
    padding: 0;
    border: 1px solid var(--color-line);
    border-radius: 20px;
    background: var(--color-paper);
    color: var(--color-navy);
    overflow-y: auto;
    overscroll-behavior: contain;
    box-shadow: 0 30px 100px rgba(7,35,67,.25);
}

.team-bio-dialog::backdrop {
    background: rgba(7,35,67,.65);
    backdrop-filter: blur(4px);
}

.team-bio-dialog[open] {
    animation: team-bio-in .25s ease both;
}

.team-bio-dialog-header {
    position: sticky;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 24px 34px;
    background: var(--color-paper);
    border-bottom: 1px solid var(--color-line);
    z-index: 1;
}

.team-bio-dialog-header .card-title {
    line-height: 1.2;
}

.team-bio-close {
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border: 1px solid var(--color-line);
    border-radius: 50%;
    font-family: var(--font-sans);
    font-size: 26px;
    line-height: 1;
    color: var(--color-copper);
    background: none;
}

.team-bio-close:hover {
    background: var(--color-ivory);
}

.team-bio-dialog-copy {
    padding: 30px 34px 40px;
    font-size: 16px;
    line-height: 1.95;
    overflow-wrap: anywhere;
}

.team-bio-dialog-copy p {
    max-width: 65ch;
    margin-inline: auto;
}

.team-bio-fallback {
    border: 0;
}

.team-bio-fallback summary {
    width: fit-content;
    list-style: none;
}

.team-bio-fallback summary::-webkit-details-marker {
    display: none;
}

.team-bio-fallback .prose-copy {
    padding-top: 20px;
    padding-bottom: 20px;
}

@keyframes team-bio-in {
    from {
        opacity: 0;
        transform: translateY(12px);
    }

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

}

@media (max-width:640px) {
    .team-bio-dialog {
        max-height: 88svh;
        border-radius: 16px;
    }

    .team-bio-dialog-header {
        padding: 20px;
        gap: 16px;
    }

    .team-bio-dialog-copy {
        padding: 24px 22px 30px;
        font-size: 15px;
        line-height: 1.9;
    }

}

@media (prefers-reduced-motion:reduce) {
    .team-bio-dialog[open] {
        animation: none;
    }

    .team-bio-dialog::backdrop {
        backdrop-filter: none;
    }

}

.hero::after {
    bottom: -1px;
    height: clamp(170px,23vw,300px);
    z-index: -1;
    background: linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.12) 24%,rgba(255,255,255,.45) 52%,rgba(255,255,255,.85) 78%,#fff 100%);
}

.hero-content {
    padding-bottom: clamp(240px,23vw,340px);
}

.offering-cover,.ohv-invitation-cover {
    border-radius: 0;
}

.offering-cover::after {
    display: none;
}

.ohv-invitation-cover .service-hero-copy > .hero-session-label {
    border: 0;
    padding: 0;
    font-style: italic;
    letter-spacing: .015em;
}

.offering-equine-craniosacral .service-title {
    max-width: 900px;
    text-wrap: balance;
}

.offering-equine-craniosacral .service-hero-copy {
    max-width: 900px;
}

.prose-copy p,.journal-reading-section .entry-content > p {
    text-align: justify;
    text-justify: inter-word;
    hyphens: none;
}

.text-center .prose-copy p,.inner-reading.text-center .prose-copy p,.offering-editorial-copy .prose-copy p {
    text-align: inherit;
}

.ohv-team-bio .prose-copy {
    text-align: justify;
    hyphens: none;
}

.inner-about .about-section-1 .inner-reading {
    max-width: 1080px;
}

.about-story-photo {
    position: relative;
    isolation: isolate;
    min-height: clamp(380px,48vw,660px);
    display: grid;
    align-items: center;
    color: var(--color-ivory);
}

.about-story-photo > img {
    position: absolute;
    inset: 0;
    z-index: -2;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 55%;
}

.about-story-photo-shade {
    position: absolute;
    inset: 0;
    z-index: -1;
    background: rgba(38,25,15,.56);
}

.about-story-photo blockquote {
    max-width: 900px;
    margin: auto;
    padding-block: 90px;
    font-family: var(--font-display);
    font-size: clamp(2rem,4vw,3.6rem);
    line-height: 1.35;
    text-align: center;
    text-wrap: balance;
}

.inner-about .about-journey-heading > .card-title {
    color: var(--color-copper);
    margin-top: 0;
}

.about-music-portrait {
    margin: 0 0 32px;
    width: min(300px,100%);
    aspect-ratio: 1;
    padding: 8px;
    border: 1px solid var(--color-ivory);
    border-radius: 50%;
}

.about-music-portrait img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
}

.inner-about .about-section-8 .prose-copy {
    margin-top: 28px;
}

.inner-offerings > .section-space:first-of-type {
    padding-block: clamp(70px,7vw,110px);
}

.inner-offerings .inner-offering-grid {
    margin-top: 0;
    padding-top: 70px;
}

.inner-offerings .inner-reading {
    padding-bottom: 0;
}

.sacred-process-box > .card-title {
    color: var(--color-copper);
}

.sacred-takeaways > li {
    display: block;
    padding-left: 0;
}

.sacred-takeaways > li::before {
    display: none;
}

.sacred-reflection-copy {
    font-family: var(--font-sans);
    font-weight: 700;
    font-size: clamp(1.5rem,2.6vw,2.35rem);
    line-height: 1.5;
    max-width: 850px;
}

.deck-pause {
    color: inherit;
    font-size: 12px;
    text-decoration: underline;
    text-underline-offset: 4px;
    padding: 10px;
    background: none;
    border: 0;
}

.offering-channelled-messages .offering-numbered {
    counter-reset: offering-step;
}

.offering-channelled-messages .offering-numbered > p {
    position: relative;
    padding-left: 68px;
}

.offering-channelled-messages .offering-numbered > p::before {
    width: 52px;
    font-family: var(--font-display);
    font-size: 38px;
    font-weight: 700;
    line-height: 1;
}

.offering-closing {
    position: relative;
    isolation: isolate;
    overflow: hidden;
}

.offering-your-sacred-truth .offering-closing {
    color: var(--color-ivory);
    background: linear-gradient(rgba(39,25,15,.77),rgba(39,25,15,.77)),url('../images/testimonial.webp') center/cover;
}

.offering-closing .offering-closing-copy {
    font-size: clamp(1.35rem,2.1vw,1.9rem);
    line-height: 1.65;
    font-family: var(--font-display);
}

.offering-channelled-messages .offering-closing,.offering-equine-craniosacral .offering-investment {
    background: var(--color-navy);
    color: var(--color-ivory);
    position: relative;
    isolation: isolate;
    overflow: hidden;
}

.offering-channelled-messages .offering-closing::before,.offering-equine-craniosacral .offering-investment::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    background: url('../images/seed-cream.webp') center/700px auto no-repeat;
    opacity: 0.065;
    mask-image: radial-gradient(ellipse,black 15%,transparent 75%);
    pointer-events: none;
}

.offering-channelled-messages .offering-closing-copy {
    font-size: clamp(1.4rem,2.4vw,2rem);
}

.offering-equine-craniosacral .offering-investment .ohv-payment-option {
    background: rgba(255,255,255,.07);
    border-color: rgba(242,238,227,.3);
}

.cranio-editorial-story {
    display: grid;
    gap: clamp(64px,8vw,110px);
}

.cranio-editorial-row {
    display: grid;
    grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr);
    align-items: center;
    gap: clamp(36px,6vw,80px);
}

.cranio-editorial-row.is-reversed {
    grid-template-columns: minmax(0,1.15fr) minmax(0,.85fr);
}

.cranio-editorial-row.is-reversed > figure {
    order: 2;
}

.cranio-editorial-row figure {
    margin: 0;
}

.cranio-editorial-row figure img {
    width: 100%;
    aspect-ratio: 4/5;
    object-fit: cover;
    border-radius: 220px 220px 8px 8px;
}

.cranio-editorial-row .section-title {
    font-size: clamp(2.4rem,3.8vw,3.7rem);
    text-wrap: balance;
}

.offering-equine-craniosacral .offering-block-1 {
    background: var(--color-ivory);
    color: var(--color-navy);
}

.testimonial-quote {
    font-size: clamp(1.4rem,2.5vw,2.2rem);
    line-height: 1.65;
}

.quote-story-open,.quote-story-open:hover {
    color: var(--color-ivory);
}

.quote-story-fallback {
    max-width: 760px;
    margin-inline: auto;
}

.quote-story-fallback summary {
    margin-inline: auto;
}

.journal-card > a:first-child {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 330px;
    padding: 14px;
    background: var(--color-ivory);
}

.journal-card > a:first-child > img {
    width: 100%;
    height: 100%;
    max-width: 100%;
    object-fit: contain;
    aspect-ratio: auto;
    border-radius: 10px;
}

.journal-card:hover > a > img {
    transform: scale(1.015);
}

.inner-library .offering-cover-content,.inner-podcast .offering-cover-content {
    display: block;
}

.inner-library .inner-book-section {
    background: #fff;
}

.inner-library .inner-book-section:nth-of-type(odd) {
    background: var(--color-ivory);
}

.inner-library .inner-book-section .prose-copy {
    text-align: left;
}

.inner-podcast .inner-hero > .offering-cover-photo {
    display: block;
}

.inner-podcast .inner-hero > .offering-cover-shade {
    background: linear-gradient(90deg,rgba(7,35,67,.88),rgba(7,35,67,.52) 55%,rgba(7,35,67,.08));
}

.inner-podcast .podcast-about .inner-editorial-split {
    grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr);
}

.inner-charity-icon {
    width: 160px;
    height: 160px;
    border-radius: 8px;
    margin-bottom: 28px;
}

.team-bio-open {
    width: fit-content;
    flex-wrap: nowrap;
    white-space: nowrap;
}

.team-bio-open > span {
    white-space: nowrap;
}

.ohv-meet-team .ohv-team-controls {
    justify-content: center;
    width: calc((100% - clamp(32px,6vw,80px)) * .4);
    margin-top: 24px;
}

.ohv-year-section .ohv-year-layout {
    display: block;
}

.ohv-year-section .ohv-year-intro {
    max-width: 1040px;
    margin: auto;
}

.ohv-year-section .ohv-year-intro .section-title {
    max-width: none;
    text-align: center;
}

.ohv-year-section .ohv-year-inclusions {
    border: 0;
    margin-top: 36px;
    padding-top: 0;
}

.ohv-year-section .ohv-year-summary {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 28px 56px;
}

.ohv-year-section .ohv-timeline {
    max-width: 1040px;
    margin: 64px auto 0;
}

.ohv-festival-card {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    min-height: 390px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    color: var(--color-ivory);
    border-radius: 160px 160px 12px 12px;
}

.ohv-festival-card::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(180deg,rgba(12,19,29,.1),rgba(12,19,29,.2) 35%,rgba(12,19,29,.9));
}

.ohv-festival-card .festival-card-photo {
    position: absolute;
    inset: 0;
    z-index: -2;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ohv-festival-card > .eyebrow {
    color: var(--color-ivory);
    margin-bottom: 16px;
}

.ohv-festival-card h4 {
    min-height: 0;
    line-height: 1.2;
}

.ohv-membership-layout {
    grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr);
}

.ohv-membership .ohv-payment-option {
    border: 0;
    border-top: 1px solid var(--color-copper);
    border-radius: 0;
    padding: 28px 0;
}

.drawer-horse-logo {
    display: block;
    width: 82px;
    height: 112px;
    object-fit: contain;
}

.instagram-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.footer-instagram {
    margin-top: 20px;
    font-size: 13px;
}

.site-footer a:not(.button) {
    transition: color .25s,transform .25s,text-decoration-color .25s;
    text-decoration: underline;
    text-decoration-color: transparent;
    text-underline-offset: 5px;
    text-decoration-thickness: 1px;
}

.site-footer a:not(.button):hover {
    color: var(--color-copper);
    text-decoration-color: currentColor;
}

.footer-menu a,.instagram-link {
    display: inline-flex;
}

.footer-menu a:hover,.instagram-link:hover {
    transform: translateX(3px);
}

.signup-input-row {
    display: flex;
    gap: 12px;
}

.signup-input-row > input {
    min-width: 0;
    flex: 1;
    border: 1px solid rgba(242,238,227,.55);
    border-radius: 999px;
    padding: 14px 20px;
    background: rgba(255,255,255,.08);
    color: var(--color-ivory);
}

.signup-input-row > input::placeholder {
    color: rgba(242,238,227,.75);
}

.signup-consent {
    display: flex;
    align-items: start;
    gap: 12px;
    margin-top: 20px;
    text-align: left;
    font-size: 12px;
    line-height: 1.8;
}

.signup-consent input {
    margin-top: 5px;
    accent-color: var(--color-copper);
}

.signup-consent a {
    text-decoration: underline;
    text-underline-offset: 3px;
}

.signup-status {
    padding: 16px;
    margin-bottom: 20px;
    border: 1px solid rgba(242,238,227,.4);
    border-radius: 10px;
    font-size: 14px;
}

.signup-honeypot {
    position: absolute;
    left: -10000px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

@media (max-width:900px) {
    .cranio-editorial-row,.cranio-editorial-row.is-reversed,.inner-podcast .podcast-about .inner-editorial-split,.ohv-membership-layout {
        grid-template-columns: 1fr;
    }

    .cranio-editorial-row.is-reversed > figure {
        order: 0;
    }

    .cranio-editorial-row figure {
        max-width: 420px;
        width: 100%;
        margin: auto;
    }

}

@media (max-width:640px) {
    .ohv-meet-team .ohv-team-controls {
        width: 100%;
    }

    .ohv-year-section .ohv-year-summary {
        grid-template-columns: 1fr;
    }

    .signup-input-row {
        flex-direction: column;
    }

    .signup-input-row .button {
        align-self: center;
    }

    .journal-card > a:first-child {
        height: 310px;
    }

    .inner-charity-icon {
        width: 140px;
        height: 140px;
    }

}

@media (prefers-reduced-motion:reduce) {
    .site-footer a,.instagram-link {
        transition: none;
        transform: none;
    }

}

.inner-offerings .offerings-overview {
    padding-top: 0;
}

.inner-offerings .offerings-intro-copy {
    padding-block: clamp(64px,7vw,100px);
}

.inner-offerings .offerings-overview .inner-offering-grid {
    padding-top: 0;
}

.home-offering-description,.other-offering-copy > p:not(.eyebrow),.inner-offering-card p:not(.inner-offering-meta),.service-hero-copy > p:not(.hero-session-label),.ohv-intro-description {
    text-align: justify;
    text-justify: inter-word;
    hyphens: none;
}

.ohv-intro-description {
    text-align: center;
}

.ohv-year-section .ohv-year-summary li {
    text-align: left;
}

.team-bio-dialog-copy p {
    text-align: justify;
}

.offering-cover {
    --hero-next-color: var(--color-ivory);
}

.inner-about .offering-cover,.inner-library .offering-cover,.inner-podcast .offering-cover,.offering-your-sacred-truth .offering-cover,.offering-equine-craniosacral .offering-cover {
    --hero-next-color: #fff;
}

.offering-cover::after {
    content: '';
    display: block;
    position: absolute;
    inset: auto 0 -1px;
    height: clamp(130px,16vw,210px);
    z-index: 1;
    border: 0;
    border-radius: 0;
    background: linear-gradient(180deg,transparent 0%,var(--hero-next-color) 30%,var(--hero-next-color) 68%,var(--hero-next-color) 100%);
    @supports (color: color-mix(in lab, red, red)) {
        background: linear-gradient(180deg,transparent 0%,color-mix(in srgb,var(--hero-next-color) 20%,transparent) 30%,color-mix(in srgb,var(--hero-next-color) 65%,transparent) 68%,var(--hero-next-color) 100%);
    }

    pointer-events: none;
}

.ohv-invitation-cover .offering-cover-content {
    padding-bottom: clamp(175px,18vw,240px);
}

.inner-offerings .inner-hero .offering-cover-photo {
    object-position: center top;
}

.inner-about .about-section-1 .section-title {
    margin-inline: auto;
    text-align: center;
    max-width: none;
}

.inner-about .about-section-2 {
    background: linear-gradient(180deg,#fff,var(--color-ivory));
}

.inner-about .about-section-7 {
    background: var(--color-ivory);
}

.inner-about .about-section-8 {
    background: #fff;
}

.about-story-photo blockquote {
    max-width: 820px;
    font-size: clamp(1.6rem,2.8vw,2.65rem);
    line-height: 1.5;
}

.testimonial-quote {
    font-size: clamp(1.3rem,2.2vw,2rem);
}

.about-music-portrait {
    width: min(400px,100%);
    aspect-ratio: auto;
    padding: 0;
    border: 0;
    border-radius: 0;
    margin: 0 auto 32px;
}

.about-music-portrait .inner-portrait-outline {
    border-color: var(--color-ivory);
}

.about-music-portrait img {
    height: auto;
    aspect-ratio: 4/5;
    border-radius: 230px 230px 0 0;
}

.sacred-takeaways > li {
    display: flex;
    align-items: flex-start;
    gap: 20px;
}

.sacred-takeaways > li > .button-star {
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    margin-top: 6px;
    animation: none;
}

.channelled-steps {
    list-style: none;
    margin: 0;
    padding: 0;
}

.channelled-steps > li {
    display: grid;
    grid-template-columns: 58px minmax(0,1fr);
    gap: 20px;
    padding: 26px 0;
    border-top: 1px solid var(--color-line);
}

.channelled-step-number {
    color: var(--color-copper);
    font-family: var(--font-display);
    font-size: clamp(2.8rem,4vw,3.5rem);
    font-weight: 700;
    line-height: 1;
}

.channelled-step-note {
    margin-top: 20px;
    font-size: 14px;
    font-style: italic;
}

.ohv-year-section .ohv-timeline {
    border-top: 1px solid var(--color-copper);
    padding-top: 44px;
}

.ohv-festival-card {
    border-radius: 18px;
}

.ohv-membership.offering-investment {
    background: var(--color-ivory);
}

.ohv-membership .offering-editorial-split {
    grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr);
}

.ohv-membership .ohv-payment-options {
    grid-template-columns: 1fr;
    gap: 22px;
}

.ohv-membership .ohv-payment-option {
    padding: 32px;
    background: rgba(255,255,255,.45);
    border: 1px solid var(--color-line);
    border-radius: 22px;
}

.ohv-membership .ohv-price {
    font-family: var(--font-display);
    font-size: clamp(3rem,5vw,4rem);
    line-height: 1.2;
}

.offering-equine-craniosacral .offering-block-0 {
    background: #fff;
}

.offering-equine-craniosacral .offering-block-1 {
    background: var(--color-ivory);
}

.cranio-editorial-row .pointed-arch-frame {
    width: 100%;
    max-width: 420px;
    color: var(--color-copper);
    margin-inline: auto;
}

.cranio-editorial-row .pointed-arch {
    display: block;
    width: 100%;
    height: auto;
}

.offering-equine-craniosacral .offering-investment {
    background: var(--color-ivory);
    color: var(--color-navy);
}

.offering-equine-craniosacral .offering-investment::before {
    display: none;
}

.offering-equine-craniosacral .offering-investment .ohv-payment-option {
    background: rgba(255,255,255,.45);
    border-color: var(--color-line);
}

.offering-equine-craniosacral .offering-closing {
    background: var(--color-navy);
    color: var(--color-ivory);
}

.offering-equine-craniosacral .offering-closing::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    background: url('../images/seed-cream.webp') center/700px auto no-repeat;
    opacity: 0.075;
    mask-image: radial-gradient(ellipse,black 15%,transparent 75%);
    pointer-events: none;
}

.inner-about .about-section-3 {
    background: radial-gradient(ellipse at 15% 10%,rgba(250,218,168,.14),transparent 65%),linear-gradient(120deg,#8b5026,#a66225 65%,#885024);
    color: var(--color-ivory);
}

.journey-story {
    max-width: 1060px;
    margin: auto;
}

.journey-story > .section-title {
    max-width: none;
}

.journey-story-tabs {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px 36px;
    margin: 44px 0;
}

.journey-story-tabs [role=tab] {
    padding: 12px 0;
    color: rgba(242,238,227,.75);
    border: 0;
    border-bottom: 1px solid transparent;
    font-size: 14px;
    background: none;
}

.journey-story-tabs [aria-selected=true] {
    color: var(--color-ivory);
    border-bottom-color: var(--color-ivory);
}

.journey-story-panels {
    display: grid;
    gap: 38px;
}

.journey-story-panel {
    padding-top: 28px;
}

.journey-story-panel .prose-copy {
    margin-top: 28px;
}

.journey-story-heading {
    color: var(--color-ivory);
}

.journey-story.is-enhanced .journey-story-panels {
    gap: 0;
}

.journey-story.is-enhanced .journey-story-panel {
    grid-area: 1/1;
    padding-top: 0;
}

.journey-story.is-enhanced .journey-story-panel[data-active=false] {
    visibility: hidden;
    pointer-events: none;
}

.journey-story-controls {
    display: flex;
    justify-content: center;
    gap: 32px;
    margin-top: 36px;
    color: var(--color-ivory);
}

.journey-story-controls .testimonial-arrow {
    color: inherit;
}

@media (max-width:900px) {
    .ohv-membership .offering-editorial-split {
        grid-template-columns: 1fr;
    }

}

@media (max-width:640px) {
    .channelled-steps > li {
        grid-template-columns: 42px minmax(0,1fr);
        gap: 16px;
    }

    .journey-story-tabs {
        gap: 10px 22px;
        margin-block: 28px;
    }

    .journey-story-tabs [role=tab] {
        font-size: 13px;
    }

    .ohv-membership .ohv-payment-option {
        padding: 26px;
    }

}

.inner-page .inner-hero .offering-cover-content {
    padding-bottom: clamp(175px,18vw,240px);
}

.journey-story-panel {
    max-width: 820px;
    width: 100%;
    margin-inline: auto;
}

.journey-story-panel .prose-copy {
    max-width: 75ch;
}

.inner-reading > .section-title {
    max-width: none;
}

.inner-reading.text-center > .section-title {
    margin-inline: auto;
    text-align: center;
}

.inner-about .about-section-1 .prose-copy p,.inner-about .about-section-3 .journey-story-panel .prose-copy p,.inner-offerings .offerings-intro-copy p,.inner-herd .inner-intro .prose-copy p,.inner-herd .inner-intro.prose-copy p {
    text-align: center;
}

.inner-herd .inner-intro .inner-reading p {
    text-align: center;
}

.about-story-photo {
    width: min(1080px,calc(100% - 3rem));
    min-height: 300px;
    margin-inline: auto;
    border-radius: 12px;
    overflow: hidden;
}

.about-story-photo blockquote {
    max-width: 680px;
    padding-block: 54px;
    font-size: clamp(1.35rem,2.2vw,2rem);
    line-height: 1.55;
}

.inner-about .about-section-2 {
    background: linear-gradient(180deg,var(--color-ivory),#fff);
}

.inner-about .about-section-3 {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: var(--color-navy);
    background: #fff;
}

.inner-about .about-section-3::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: -260px;
    width: min(760px,110%);
    height: 650px;
    transform: translateX(-50%);
    z-index: -1;
    background: var(--color-copper);
    mask: url('../images/seed-cream.webp') center bottom/contain no-repeat;
    opacity: 0.0325;
    pointer-events: none;
}

.inner-about .journey-story-panel {
    text-align: center;
}

.inner-about .journey-story-panel .prose-copy {
    margin-inline: auto;
}

.inner-about .journey-story-heading {
    color: var(--color-copper);
}

.inner-about .journey-story-tabs [role=tab] {
    color: var(--color-navy);
}

.inner-about .journey-story-tabs [aria-selected=true] {
    color: var(--color-copper);
    border-color: var(--color-copper);
}

.about-music-copy > .section-title {
    text-align: left;
}

.about-music-portrait {
    margin-bottom: 0;
}

.inner-about .about-section-7,.work-invitation {
    background-color: var(--color-navy);
    background-image: linear-gradient(rgba(7,35,67,.5),rgba(7,35,67,.82)),url('../images/watercolour.webp');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    color: var(--color-ivory);
}

.offering-cover::after {
    display: none;
}

.ohv-invitation-cover .offering-cover-content,.inner-page .inner-hero .offering-cover-content {
    padding-bottom: clamp(72px,8vw,110px);
}

.inner-offerings .inner-hero .offering-cover-photo {
    object-position: center 22%;
}

.inner-charities .inner-hero .offering-cover-photo {
    object-position: center 28%;
}

@media (max-width:640px) {
    .about-story-photo {
        width: calc(100% - 2rem);
        min-height: 250px;
    }

    .about-story-photo blockquote {
        padding-block: 40px;
    }

    .inner-offerings .inner-hero .offering-cover-photo {
        object-position: 65% center;
    }

    .inner-charities .inner-hero .offering-cover-photo {
        object-position: 48% center;
    }

}

@media (hover:none),(prefers-reduced-motion:reduce) {
    .inner-about .about-section-7,.work-invitation {
        background-attachment: scroll;
    }

}

.ohv-timeline-scroll.is-loop-resetting {
    scroll-behavior: auto !important;
    scroll-snap-type: none !important;
}

.about-story-photo {
    width: 100%;
    max-width: none;
    border-radius: 0;
}

.offering-your-sacred-truth .offering-block-0 {
    padding-top: clamp(2.5rem, 4vw, 4rem);
}

.offering-investment > .offering-editorial-split {
    grid-template-columns: minmax(0, 1fr);
    gap: 2.5rem;
    text-align: center;
}

.offering-investment > .offering-editorial-split > div:first-child > p {
    margin-inline: auto;
    max-width: 780px;
    text-align: center;
}

.offering-investment .offering-price-options, .ohv-membership.offering-investment .ohv-payment-options {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
    max-width: 1000px;
    margin-inline: auto;
    gap: 24px;
    justify-content: center;
}

.offering-investment .offering-price-options > :only-child {
    width: 100%;
    max-width: 488px;
    justify-self: center;
}

.offering-investment .prose-copy p {
    text-align: center;
}

@media (min-width: 768px) {
    .offering-investment .offering-price-options, .ohv-membership.offering-investment .ohv-payment-options.has-monthly {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .offering-investment .offering-price-options:has(> :only-child) {
        grid-template-columns: minmax(0, 488px);
    }

}

.inner-about .about-section-2 .inner-portrait {
    position: relative;
    top: auto;
}

.offering-your-sacred-truth .offering-block-0 {
    padding-top: clamp(1.5rem, 2.5vw, 2.5rem);
    padding-top: clamp(4rem, 7vw, 6rem);
    padding-bottom: clamp(1.5rem, 2.5vw, 2.5rem);
}

.offering-channelled-messages .offering-block-0 {
    background: linear-gradient(180deg, #fff 0%, var(--color-ivory) 100%);
}

.offering-channelled-messages .offering-block-1 {
    background: var(--color-ivory);
}

.channelled-steps > li {
    grid-template-columns: 26px minmax(0, 1fr);
}

.channelled-step-star {
    display: flex;
    justify-content: center;
    padding-top: 5px;
}

.channelled-step-star .button-star {
    width: 22px;
    height: 22px;
}

.inner-about .about-section-1 {
    padding-bottom: clamp(6rem, 10vw, 10rem);
}

.inner-about .about-section-3 {
    padding-top: clamp(2rem, 4vw, 4rem);
}

h1, h2, h3, h4, h5, h6 {
    text-transform: capitalize;
}

body {
    -webkit-hyphens: none;
    hyphens: none;
}

#main-content p, #main-content li, .team-bio-dialog p {
    -webkit-hyphens: none;
    hyphens: none;
    word-break: normal;
    overflow-wrap: normal;
}

.inner-about .about-section-8 {
    padding-block: clamp(4.5rem, 8.3vw, 7.5rem);
}

.offering-your-sacred-truth .offering-price-options > .ohv-payment-option {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.offering-your-sacred-truth .ohv-payment-option > .mt-7 {
    margin-top: auto;
    padding-top: 28px;
}

.offering-equine-craniosacral .service-hero-copy > p.font-light {
    max-width: 680px;
    text-wrap: pretty;
}

.journey-tab-hint {
    display: none;
}

.ohv-meet-team .ohv-team-carousel {
    position: relative;
}

@media (min-width: 768px) {
    .newsletter-final-line {
        white-space: nowrap;
    }

    .ohv-meet-team .ohv-team-portrait {
        align-self: end;
    }

    .ohv-meet-team .ohv-team-bio {
        padding-bottom: 80px;
    }

    .ohv-meet-team .ohv-team-controls {
        position: absolute;
        right: 0;
        bottom: 0;
        width: auto;
        margin: 0;
        justify-content: flex-end;
    }

}

@media (max-width: 767px) {
    .ohv-meet-team .ohv-team-panel {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .journey-story.is-enhanced .journey-tab-hint {
        display: block;
        margin-top: 28px;
        text-align: center;
        font-size: 13px;
        color: var(--color-copper);
    }

    .inner-about .journey-story-tabs {
        display: grid;
        grid-template-columns: 1fr;
        gap: 10px;
        margin: 16px 0 28px;
    }

    .inner-about .journey-story-tabs [role=tab] {
        min-height: 48px;
        padding: 12px 18px;
        border: 1px solid var(--color-line);
        border-radius: 8px;
        background: var(--color-paper);
        text-transform: capitalize;
    }

    .inner-about .journey-story-tabs [aria-selected=true] {
        color: var(--color-ivory);
        background: var(--color-copper);
        border-color: var(--color-copper);
        font-weight: 700;
    }

    .ohv-meet-team .ohv-team-controls {
        width: 100%;
        justify-content: flex-end;
    }

}

@font-face {
    font-family: "Cormorant Garamond";
    src: url("../fonts/cormorant-regular.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Cormorant Garamond";
    src: url("../fonts/cormorant-medium.ttf") format("truetype");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Lato";
    src: url("../fonts/lato-light.ttf") format("truetype");
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Lato";
    src: url("../fonts/lato-regular.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@layer base {
    html {
        scroll-behavior: smooth;
        scroll-padding-top: 2rem;
    }

    body {
        font-family: var(--font-sans);
        color: var(--color-navy);
        font-size: 16px;
        line-height: 1.8;
    }

    [hidden] {
        display: none !important;
    }

    h1,h2,h3,h4 {
        font-family: var(--font-display);
        --tw-font-weight: var(--font-weight-normal);
        font-weight: var(--font-weight-normal);
        line-height: 1.05;
        text-wrap: balance;
    }

    button,a,input,textarea {
        -webkit-tap-highlight-color: transparent;
    }

    :is(a,button,input,textarea,select):focus-visible {
        outline: 2px solid var(--color-bronze);
        outline-offset: 5px;
    }

    button {
        cursor: pointer;
    }

    img {
        max-width: 100%;
    }

    p {
        text-wrap: pretty;
    }

}

@layer components {
    .container-wide {
        width: min(1240px, calc(100% - 3rem));
        margin-inline: auto;
    }

    .section-space {
        padding-block: clamp(4.5rem, 8.3vw, 7.5rem);
    }

    .section-title {
        font-size: clamp(2.6rem, 5.2vw, 4.7rem);
        font-variant-caps: small-caps;
    }

    .hero-title {
        font-size: clamp(3.4rem, 7.5vw, 7rem);
        font-variant-caps: small-caps;
    }

    .about-title {
        font-size: clamp(2.4rem, 3.8vw, 3.5rem);
        font-variant-caps: small-caps;
    }

    .card-title {
        font-size: clamp(1.7rem, 2.1vw, 2rem);
        font-variant-caps: small-caps;
    }

    .book-title {
        font-size: 1.7rem;
        font-variant-caps: small-caps;
        min-height: 3.8rem;
    }

    .newsletter-title {
        font-size: clamp(2.3rem,3.4vw,3rem);
        font-variant-caps: small-caps;
    }

    .eyebrow {
        font-family: var(--font-sans);
        font-size: .65rem;
        line-height: 1.65;
        font-weight: 400;
        letter-spacing: .19em;
        text-transform: uppercase;
    }

    .prose-copy p + p {
        margin-top: 1.2em;
    }

    .prose-copy a {
        text-decoration: underline;
        text-underline-offset: .2em;
    }

    .button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 1rem;
        min-height: 48px;
        max-width: 100%;
        padding: .7rem 1.5rem;
        border-radius: 999px;
        font-family: var(--font-display);
        font-variant-caps: small-caps;
        font-size: 1.15rem;
        line-height: 1.15;
        text-align: center;
        text-decoration: none;
        transition: transform .2s ease, filter .2s ease;
    }

    .button:hover {
        transform: translateY(-2px);
        filter: brightness(1.08);
    }

    .button-navy {
        background: linear-gradient(180deg,#45638c 0%,#072343 100%);
        color: var(--color-ivory);
    }

    .button-copper {
        background: linear-gradient(180deg,#dc9659 0%,#a66225 100%);
        color: var(--color-ivory);
    }

    .button-ivory {
        background: var(--color-ivory);
        color: var(--color-navy);
    }

    .button-star {
        width: 20px;
        height: 20px;
        object-fit: contain;
        flex: 0 0 20px;
    }

    .hero {
        min-height: 900px;
        display: flex;
        align-items: center;
    }

    .hero-content {
        width: min(1240px, calc(100% - 3rem));
    }

    .hero-shade {
        background: linear-gradient(90deg,rgba(7,35,67,.92),rgba(7,35,67,.64) 47%,rgba(7,35,67,.06)), linear-gradient(0deg,rgba(7,35,67,.1),rgba(7,35,67,.06));
    }

    .hero:after {
        content: "";
        position: absolute;
        bottom: -1px;
        left: 0;
        right: 0;
        height: 135px;
        background: linear-gradient(transparent,var(--color-paper));
        pointer-events: none;
    }

    .site-header {
        z-index: 30;
        width: 100%;
    }

    .header-overlay {
        position: absolute;
        top: 0;
        left: 0;
        color: var(--color-ivory);
    }

    .header-solid {
        background: var(--color-cream);
        color: var(--color-navy);
    }

    .header-logo {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        width: clamp(170px,23vw,300px);
    }

    .login-short {
        display: none;
    }

    .member-login {
        min-height: 46px;
        padding: .6rem 1.3rem;
    }

    .menu-toggle {
        width: 44px;
        height: 44px;
        display: grid;
        align-content: center;
        gap: 6px;
    }

    .menu-toggle span {
        display: block;
        width: 27px;
        height: 1px;
        background: currentColor;
    }

    .menu-close {
        font-size: 3rem;
        width: 48px;
        height: 48px;
        line-height: 1;
    }

    .navigation-dialog {
        border: 0;
        width: 100%;
        max-width: none;
        min-height: 100dvh;
        max-height: 100dvh;
        padding: 0;
        background: var(--color-cream);
        color: var(--color-navy);
        margin: 0;
    }

    .navigation-dialog::backdrop {
        background: rgba(7,35,67,.5);
    }

    .primary-menu {
        margin-block: 3rem;
        font-family: var(--font-display);
        font-size: clamp(2rem,5vw,4rem);
        line-height: 1.3;
    }

    .primary-menu > a,.primary-menu > ul > li {
        display: block;
        padding-block: .2em;
    }

    .primary-menu a:hover {
        color: var(--color-copper);
    }

    .primary-menu .sub-menu {
        font-family: var(--font-sans);
        font-size: 1rem;
        margin: .75rem 0 1rem 1.5rem;
    }

    body.menu-is-open {
        overflow: hidden;
    }

    body.admin-bar .header-overlay {
        top: 32px;
    }

    .skip-link {
        position: absolute;
        z-index: 100;
        top: .5rem;
        left: .5rem;
        transform: translateY(-200%);
        background: var(--color-ivory);
        color: var(--color-navy);
        padding: .75rem 1rem;
    }

    .skip-link:focus {
        transform: none;
    }

    .pointed-arch-frame {
        color: var(--color-copper);
    }

    .pointed-arch {
        width: 100%;
        height: auto;
        display: block;
    }

    .herd-banner {
        min-height: 760px;
        display: flex;
        align-items: center;
    }

    .herd-shade {
        background: linear-gradient(90deg,rgba(7,35,67,.96),rgba(7,35,67,.8) 40%,rgba(7,35,67,.15));
    }

    .offering-card {
        min-height: 330px;
    }

    .watercolour {
        background-image: linear-gradient(rgba(7,35,67,.45),rgba(7,35,67,.78)),url("../images/watercolour.webp");
        background-size: cover;
        background-position: center;
    }

    .podcast-section {
        background: linear-gradient(180deg,#d29155,#a66225);
    }

    .charity-frame {
        border-radius: 260px 260px 0 0;
    }

    .charity-image {
        border-radius: 240px 240px 0 0;
        aspect-ratio: .9;
    }

    .journal-card {
        display: flex;
        height: 100%;
        flex-direction: column;
        overflow: hidden;
        border-radius: var(--radius-3xl);
        border-style: var(--tw-border-style);
        border-width: 1px;
        border-color: color-mix(in srgb, #a66225 70%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
            border-color: color-mix(in oklab, var(--color-copper) 70%, transparent);
        }

        background-color: var(--color-white);
    }

    .journal-card > img, .journal-card > a > img {
        width: 100%;
        aspect-ratio: 1.75;
        object-fit: cover;
    }

    .journal-copy {
        display: flex;
        flex: 1;
        flex-direction: column;
        align-items: flex-start;
        padding: calc(var(--spacing) * 6);
    }

    .journal-title {
        font-size: 1.8rem;
        font-variant-caps: small-caps;
    }

    .testimonial-quote {
        font-family: var(--font-display);
        font-size: clamp(1.6rem,2.5vw,2.3rem);
        line-height: 1.12;
        font-variant-caps: small-caps;
    }

    .testimonial-stage {
        min-height: 180px;
    }

    .testimonial-arrow {
        width: 44px;
        height: 44px;
        font-size: 1.2rem;
    }

    .newsletter-form input:not([type=submit]):not([type=checkbox]) {
        width: 100%;
        border: 1px solid rgba(242,238,227,.6);
        border-radius: 999px;
        padding: .9rem 1.3rem;
        background: transparent;
        color: inherit;
    }

    .newsletter-form input::placeholder {
        color: rgba(242,238,227,.75);
    }

    .newsletter-form input[type=submit],.newsletter-form button[type=submit] {
        border-radius: 999px;
        background: var(--color-ivory);
        color: var(--color-navy);
        padding: .6rem 1.25rem;
        margin-top: .75rem;
    }

    .entry-content {
        max-width: 76ch;
        margin-inline: auto;
    }

    .entry-content > * + * {
        margin-top: 1.5rem;
    }

    .entry-content h2 {
        font-size: 2.6rem;
    }

    .entry-content h3 {
        font-size: 2rem;
    }

    .entry-content a {
        text-decoration: underline;
        text-underline-offset: .2em;
    }

    .entry-content ul {
        list-style: disc;
        padding-left: 1.5rem;
    }

    .entry-content ol {
        list-style: decimal;
        padding-left: 1.5rem;
    }

    .entry-content blockquote {
        border-left: 1px solid var(--color-copper);
        padding-left: 1.5rem;
        font-size: 1.25rem;
    }

    .footer-menu li {
        margin-bottom: .4rem;
    }

}

@media (min-width: 1024px) {
    .container-wide {
        width: min(1240px, calc(100% - 12.5rem));
    }

}

@media (max-width: 767px) {
    .hero {
        min-height: 740px;
    }

    .hero > img {
        object-position: 60% center;
    }

    .hero-title {
        font-size: clamp(3.2rem,10.5vw,5rem);
    }

    .hero-content {
        padding-top: 12rem;
        padding-bottom: 12rem;
    }

    .member-login {
        font-size: .8rem;
        padding: .5rem .75rem;
        gap: .4rem;
    }

    .member-login .button-star {
        display: none;
    }

    .member-login .login-long {
        display: none;
    }

    .member-login .login-short {
        display: inline;
    }

    .header-logo {
        width: 160px;
    }

    .site-header .container-wide {
        gap: .5rem;
        width: calc(100% - 2rem);
    }

    .herd-banner {
        min-height: 640px;
    }

    .header-overlay .menu-toggle {
        z-index: 1;
    }

    body.admin-bar .header-overlay {
        top: 46px;
    }

}

@media (max-width: 380px) {
    .header-logo {
        width: 140px;
    }

    .member-login {
        font-size: .75rem;
        padding-inline: .5rem;
    }

    .container-wide {
        width: calc(100% - 2rem);
    }

}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    *,*::before,*::after {
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
    }

}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@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;
}

@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-space-y-reverse: 0;
            --tw-border-style: solid;
            --tw-leading: initial;
            --tw-font-weight: 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-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;
        }

    }

}
