@layer components{.logo{block-size:var(--logo-block-size,2rem);inline-size:auto;display:block}.logo-stop-start{stop-color:var(--logo-color-start,light-dark(var(--color-rose-63),var(--color-rose-86)))}.logo-stop-end{stop-color:var(--logo-color-end,light-dark(var(--color-rose-41),var(--color-rose-63)))}}
@layer components{.logo-link{display:inline-flex}}
@layer components{:root{--section-content-max-width:80rem;--section-content-padding-inline:clamp(var(--space-15), 5vw, var(--space-25))}.section-content{inline-size:100%;max-inline-size:var(--section-content-max-width);padding-inline:var(--section-content-padding-inline);flex-direction:column;margin-inline:auto;display:flex}}
@layer components{.starfield{pointer-events:none;block-size:100%;inline-size:100%;max-inline-size:none;position:absolute;inset:0}.starfield-star{fill:var(--color-star)}.starfield-star--accent{fill:var(--color-star-accent)}}
@layer components{.page-footer{background:var(--color-violet-8);color-scheme:dark;color:var(--color-foreground);font-size:var(--font-size-small);inline-size:100%;padding-block:clamp(var(--space-3), 4.44vw, var(--space-4));position:relative;overflow:hidden}:root[data-color-scheme=light] .page-footer{background:linear-gradient(to bottom, var(--color-violet-20), var(--color-violet-8))}.page-footer-content{gap:var(--space-25);position:relative}.page-footer-grid{gap:var(--space-2);flex-direction:column;display:flex}.page-footer-brand{gap:var(--space-0875);flex-direction:column;max-inline-size:24rem;display:flex}.page-footer-nav{gap:var(--space-0875);flex-direction:column;display:flex}.page-footer-link{color:var(--color-link);font-weight:500;transition:color .15s ease-in-out}.page-footer-link:hover{color:var(--color-link-hover)}.page-footer-legal{color:var(--color-foreground-muted);font-size:var(--font-size-xsmall);gap:var(--space-05);flex-direction:column;display:flex}.page-footer-credit-link{text-decoration:underline;-webkit-text-decoration-color:var(--color-border);text-decoration-color:var(--color-border);text-underline-offset:.2em;transition:color .15s ease-in-out}.page-footer-credit-link:hover{color:var(--color-link-hover)}@media (min-width:60rem){.page-footer-grid{flex-direction:row;justify-content:space-between;align-items:center}.page-footer-nav{gap:var(--space-2);flex-direction:row}.page-footer-legal{flex-direction:row;justify-content:space-between}}}
@layer components{.nav-link{color:var(--color-link);font-weight:500;transition:color .15s ease-in-out}.nav-link:hover{color:var(--color-link-hover)}.nav-link.active{color:var(--color-accent)}}
@layer components{.button{border-radius:var(--radius-round);cursor:pointer;font-size:var(--font-size-regular);align-items:center;gap:var(--space-05);min-block-size:3.25rem;padding:var(--space-1) var(--space-2);text-align:center;border:1px solid #0000;justify-content:center;font-weight:600;line-height:1.2;transition:background-color .15s,border-color .15s,box-shadow .15s,filter .15s;display:inline-flex}.button--full-width{inline-size:100%}.button--primary{background:var(--gradient-button-primary);box-shadow:var(--shadow-button-primary);color:var(--color-button-primary-foreground)}.button--primary:hover{filter:brightness(1.06)}.button--secondary{background-color:var(--color-button-secondary-background);border-color:var(--color-border);color:var(--color-link)}.button--secondary:hover{border-color:var(--color-accent)}}
@layer components{.icon-button{border:1px solid var(--color-border);border-radius:var(--radius-round);color:var(--color-accent);cursor:pointer;background-color:#0000;flex:none;justify-content:center;align-items:center;block-size:2.75rem;inline-size:2.75rem;padding:0;transition:background-color .15s,border-color .15s;display:inline-flex}.icon-button:hover{background-color:hsl(from var(--color-rose-76) h s l / .12);border-color:var(--color-accent)}}
@layer components{.tarot-card-scene{inline-size:var(--tarot-card-size,15rem);max-inline-size:100%;perspective:var(--tarot-card-perspective,60rem);rotate:var(--tarot-card-angle,0deg);container-type:inline-size}.tarot-card-flipper{transform-style:preserve-3d;transition:rotate .6s;display:grid}.tarot-card-face-down .tarot-card-flipper{rotate:y 180deg}.tarot-card-face{--tarot-card-edge-width:1.5px;--tarot-card-radius:4cqi;backface-visibility:hidden;border-radius:calc(var(--tarot-card-radius) + var(--tarot-card-edge-width));box-shadow:var(--tarot-card-shadow,var(--shadow-card));grid-area:1/1}.tarot-card-face-back{--tarot-card-jacket-pattern:hsl(from var(--color-rose-76) h s l / .8);aspect-ratio:7/12;background:var(--gradient-card-back) padding-box, var(--tarot-card-edge,var(--gradient-accent)) border-box;border:var(--tarot-card-edge-width) solid transparent;position:relative;rotate:y 180deg}.tarot-card-face-back:before{background:var(--tarot-card-jacket-pattern);border-radius:inherit;content:"";position:absolute;inset:0;mask-image:url(/backgrounds/background-card-jacket.svg);mask-size:111cqi 111cqi;mask-repeat:repeat}.tarot-card{background:var(--tarot-card-edge,var(--color-parchment-85));padding:var(--tarot-card-edge-width);margin:0}.tarot-card-artwork{border-radius:var(--tarot-card-radius);block-size:auto;inline-size:100%;display:block}.tarot-card-reversed .tarot-card-artwork{rotate:180deg}}
@layer components{.sparkle{color:var(--color-star-accent);flex:none}}
@layer components{.color-scheme-toggle-to-dark{display:none}.color-scheme-toggle-to-light,:root[data-color-scheme=light] .color-scheme-toggle-to-dark{display:block}:root[data-color-scheme=light] .color-scheme-toggle-to-light{display:none}.color-scheme-toggle-label{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}}
@layer components{@media (min-width:50rem){.page-menu-button,.page-menu{display:none}}.page-menu{background:var(--gradient-hero-glow), var(--gradient-page);block-size:100dvh;color:inherit;max-block-size:none;inline-size:100%;max-inline-size:none;padding:0 var(--section-content-padding-inline) var(--space-25);border:0;flex-direction:column;margin:0;position:fixed;inset:0;overflow-y:auto}.page-menu:popover-open{opacity:1;display:flex;translate:0}.page-menu{opacity:0;transition:display .22s allow-discrete, opacity .22s ease-out, overlay .22s allow-discrete, translate .22s ease-out;translate:0 -.5rem}@starting-style{.page-menu:popover-open{opacity:0;translate:0 -.5rem}}:root:has(.page-menu:popover-open){overflow:hidden}.page-menu-sky{position:fixed}.page-menu-header{padding-block:var(--space-0875);justify-content:space-between;align-items:center;display:flex;position:relative}.page-menu-header:after{background:var(--gradient-rule);content:"";block-size:1px;position:absolute;inset-block-end:0;inset-inline:0}.page-menu-logo .logo{block-size:1.75rem}.page-menu-controls{gap:var(--space-075);display:flex}.page-menu-nav{padding-block-start:var(--space-25);position:relative}.page-menu-item{border-block-end:1px solid var(--color-border);align-items:flex-start;gap:var(--space-1);padding-block:var(--space-15);display:flex}.page-menu-marker{margin-block-start:.875rem}.page-menu-link{gap:var(--space-025);flex-direction:column;display:flex}.page-menu-label{font-family:var(--font-family-title);font-size:2rem;font-weight:400;line-height:1.2}.page-menu-description{color:var(--color-foreground);font-family:var(--font-family-default);font-size:var(--font-size-regular);font-weight:400}.page-menu-footer{margin-block-start:auto;padding-block-start:var(--space-4);position:relative}}
@layer components{:root{scroll-padding-block-start:6rem}.page-header{backdrop-filter:blur(12px);background:color-mix(in srgb, var(--color-background) 82%, transparent);font-size:var(--font-size-small);inline-size:100%;padding-block:var(--space-0875);z-index:10;position:sticky;inset-block-start:0}.page-header:after{background:var(--gradient-rule);content:"";block-size:1px;position:absolute;inset-block-end:0;inset-inline:0}.page-header-grid{align-items:center;gap:var(--space-2);justify-content:space-between;display:flex}.page-header-logo .logo{block-size:1.75rem}.page-header-nav{display:none}.page-header-controls{align-items:center;gap:var(--space-075);display:flex}@media (min-width:50rem){.page-header{padding-block:var(--space-125)}.page-header-logo .logo{block-size:2.125rem}.page-header-nav{align-items:center;gap:var(--space-225);margin-inline-start:auto;display:flex}}}
@layer components{.page-main{flex-direction:column;flex:1;inline-size:100%;display:flex}}
@layer components{.page{inline-size:100%;flex-direction:column;min-height:100dvh;display:flex}}
@layer components{:root{--section-padding-block:clamp(var(--space-3), 6.67vw, var(--space-6))}.section{inline-size:100%;padding-block:var(--section-padding-block);flex-direction:column;align-items:center;display:flex}}
