@import"https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600;9..144,700;9..144,900&family=Lora:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&family=Caveat:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";.header[data-astro-cid-3ef6ksr2]{position:sticky;top:0;z-index:100;background-color:var(--color-background);border-bottom:1px solid var(--color-border)}.header-border[data-astro-cid-3ef6ksr2]{height:8px;color:var(--color-accent);opacity:.3;overflow:hidden}.header-border[data-astro-cid-3ef6ksr2] svg[data-astro-cid-3ef6ksr2]{width:100%;height:100%}.header-nav[data-astro-cid-3ef6ksr2]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:1rem 0;gap:.5rem}.logo[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:.25rem}.logo-text[data-astro-cid-3ef6ksr2]{font-family:var(--font-display);font-size:1.75rem;font-weight:700;color:var(--color-accent);letter-spacing:-.02em;transition:color var(--duration-fast)}.logo[data-astro-cid-3ef6ksr2]:hover .logo-text[data-astro-cid-3ef6ksr2]{color:var(--color-accent-hover)}.logo-flourish-left[data-astro-cid-3ef6ksr2],.logo-flourish-right[data-astro-cid-3ef6ksr2]{font-family:var(--font-handwritten);font-size:2rem;color:var(--color-accent-light);opacity:.7;transition:opacity var(--duration-fast)}.logo[data-astro-cid-3ef6ksr2]:hover .logo-flourish-left[data-astro-cid-3ef6ksr2],.logo[data-astro-cid-3ef6ksr2]:hover .logo-flourish-right[data-astro-cid-3ef6ksr2]{opacity:1}.tagline[data-astro-cid-3ef6ksr2]{display:none;font-family:var(--font-handwritten);font-size:1rem;color:var(--color-text-muted);margin:0}@media(min-width:1024px){.tagline[data-astro-cid-3ef6ksr2]{display:block}}.nav-desktop[data-astro-cid-3ef6ksr2]{display:none;list-style:none;margin:0;padding:0;gap:.25rem}@media(min-width:768px){.nav-desktop[data-astro-cid-3ef6ksr2]{display:flex}}.nav-tab[data-astro-cid-3ef6ksr2]{display:block;padding:.625rem 1rem;font-family:var(--font-body);font-size:.9rem;font-weight:500;color:var(--color-text-muted);text-decoration:none;position:relative;transition:color var(--duration-fast);border-radius:var(--border-radius) var(--border-radius) 0 0}.nav-tab[data-astro-cid-3ef6ksr2]:after{display:none}.nav-tab[data-astro-cid-3ef6ksr2]:hover{color:var(--color-text);background-color:var(--color-surface)}.nav-tab-active[data-astro-cid-3ef6ksr2]{color:var(--color-accent);background-color:var(--color-surface)}.nav-tab-underline[data-astro-cid-3ef6ksr2]{position:absolute;bottom:0;left:0;right:0;height:3px;background-color:var(--color-accent);transform:scaleX(0);transform-origin:left;transition:transform var(--duration-normal) var(--ease-out-expo);border-radius:3px 3px 0 0}.nav-tab[data-astro-cid-3ef6ksr2]:hover .nav-tab-underline[data-astro-cid-3ef6ksr2],.nav-tab-active[data-astro-cid-3ef6ksr2] .nav-tab-underline[data-astro-cid-3ef6ksr2]{transform:scaleX(1)}.nav-tab-active[data-astro-cid-3ef6ksr2] .nav-tab-underline[data-astro-cid-3ef6ksr2]{background-color:var(--color-accent)}.mobile-menu-btn[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;background:none;border:none;cursor:pointer;border-radius:var(--border-radius);transition:background-color var(--duration-fast)}.mobile-menu-btn[data-astro-cid-3ef6ksr2]:hover{background-color:var(--color-surface)}@media(min-width:768px){.mobile-menu-btn[data-astro-cid-3ef6ksr2]{display:none}}.hamburger[data-astro-cid-3ef6ksr2]{display:flex;flex-direction:column;gap:5px;width:24px}.hamburger-line[data-astro-cid-3ef6ksr2]{display:block;height:2px;background-color:var(--color-text);border-radius:2px;transition:all var(--duration-normal) var(--ease-out-expo)}.hamburger-line[data-astro-cid-3ef6ksr2]:nth-child(1){width:100%}.hamburger-line[data-astro-cid-3ef6ksr2]:nth-child(2){width:75%}.hamburger-line[data-astro-cid-3ef6ksr2]:nth-child(3){width:50%}.mobile-menu-btn[data-astro-cid-3ef6ksr2]:hover .hamburger-line[data-astro-cid-3ef6ksr2]{width:100%;background-color:var(--color-accent)}.mobile-menu-btn[data-astro-cid-3ef6ksr2][aria-expanded=true] .hamburger-line[data-astro-cid-3ef6ksr2]:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.mobile-menu-btn[data-astro-cid-3ef6ksr2][aria-expanded=true] .hamburger-line[data-astro-cid-3ef6ksr2]:nth-child(2){opacity:0;transform:translate(-10px)}.mobile-menu-btn[data-astro-cid-3ef6ksr2][aria-expanded=true] .hamburger-line[data-astro-cid-3ef6ksr2]:nth-child(3){width:100%;transform:rotate(-45deg) translate(5px,-5px)}.mobile-menu[data-astro-cid-3ef6ksr2]{display:none;position:absolute;top:100%;left:0;right:0;background-color:var(--color-background);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-lg)}.mobile-menu[data-astro-cid-3ef6ksr2].is-open{display:block;animation:slide-down .3s var(--ease-out-expo)}.mobile-menu-inner[data-astro-cid-3ef6ksr2]{padding:1rem}.mobile-nav-list[data-astro-cid-3ef6ksr2]{list-style:none;margin:0;padding:0}.mobile-nav-link[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;font-family:var(--font-body);font-size:1rem;font-weight:500;color:var(--color-text);text-decoration:none;border-radius:var(--border-radius-lg);transition:all var(--duration-fast);animation:fade-up .4s var(--ease-out-expo) forwards;animation-delay:var(--item-delay, 0ms);opacity:0}.mobile-nav-link[data-astro-cid-3ef6ksr2]:after{display:none}.mobile-nav-link[data-astro-cid-3ef6ksr2]:hover{background-color:var(--color-surface);transform:translate(4px)}.mobile-nav-link-active[data-astro-cid-3ef6ksr2]{background-color:var(--color-accent);color:var(--color-text-inverse)}.mobile-nav-link-active[data-astro-cid-3ef6ksr2]:hover{background-color:var(--color-accent-hover)}.mobile-nav-icon[data-astro-cid-3ef6ksr2]{font-size:1.25rem}.mobile-nav-text[data-astro-cid-3ef6ksr2]{font-family:var(--font-display)}@keyframes slide-down{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.footer[data-astro-cid-sz7xmlte]{margin-top:auto;position:relative}.footer-wave[data-astro-cid-sz7xmlte]{height:24px;color:var(--color-footer-bg);position:relative;top:1px}.footer-wave[data-astro-cid-sz7xmlte] svg[data-astro-cid-sz7xmlte]{width:100%;height:100%;display:block}.footer-content[data-astro-cid-sz7xmlte]{background-color:var(--color-footer-bg);padding:3rem 0 2rem}.footer-grid[data-astro-cid-sz7xmlte]{display:grid;grid-template-columns:1fr;gap:2.5rem}@media(min-width:640px){.footer-grid[data-astro-cid-sz7xmlte]{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.footer-grid[data-astro-cid-sz7xmlte]{grid-template-columns:1.5fr 1fr 1fr 1fr}}.footer-brand[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;gap:1rem}.footer-logo[data-astro-cid-sz7xmlte]{display:inline-flex;align-items:center;gap:.25rem}.footer-logo-text[data-astro-cid-sz7xmlte]{font-family:var(--font-display);font-size:1.5rem;font-weight:700;color:var(--color-text-inverse);letter-spacing:-.02em;transition:color var(--duration-fast)}.footer-logo[data-astro-cid-sz7xmlte]:hover .footer-logo-text[data-astro-cid-sz7xmlte]{color:var(--color-accent-light)}.footer-logo-flourish[data-astro-cid-sz7xmlte]{font-family:var(--font-handwritten);font-size:1.75rem;color:var(--color-accent-light);opacity:.6}.footer-tagline[data-astro-cid-sz7xmlte]{font-family:var(--font-handwritten);font-size:1.1rem;color:var(--color-ceramic);margin:0;line-height:1.4}.footer-badge[data-astro-cid-sz7xmlte]{display:inline-flex;align-items:center;gap:.5rem;margin-top:.5rem;padding:.5rem 1rem;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--border-radius-lg);width:-moz-fit-content;width:fit-content}.footer-badge-heart[data-astro-cid-sz7xmlte]{color:var(--color-accent);display:flex;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.footer-badge-text[data-astro-cid-sz7xmlte]{font-family:var(--font-body);font-size:.8rem;color:var(--color-ceramic);letter-spacing:.02em}.footer-section[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;gap:1rem}.footer-heading[data-astro-cid-sz7xmlte]{font-family:var(--font-handwritten);font-size:1.25rem;font-weight:600;color:var(--color-accent-light);margin:0;padding-bottom:.5rem;border-bottom:2px dashed rgba(255,255,255,.1)}.footer-links[data-astro-cid-sz7xmlte]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.footer-link[data-astro-cid-sz7xmlte]{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-body);font-size:.9rem;color:var(--color-ceramic);transition:all var(--duration-fast)}.footer-link[data-astro-cid-sz7xmlte]:after{display:none}.footer-link[data-astro-cid-sz7xmlte]:hover{color:var(--color-text-inverse);transform:translate(4px)}.footer-link-bullet[data-astro-cid-sz7xmlte]{width:6px;height:6px;background-color:var(--color-accent);border-radius:50%;opacity:0;transition:opacity var(--duration-fast)}.footer-link[data-astro-cid-sz7xmlte]:hover .footer-link-bullet[data-astro-cid-sz7xmlte]{opacity:1}.footer-link-external[data-astro-cid-sz7xmlte]{gap:.25rem}.footer-link-arrow[data-astro-cid-sz7xmlte]{opacity:.5;transition:all var(--duration-fast)}.footer-link[data-astro-cid-sz7xmlte]:hover .footer-link-arrow[data-astro-cid-sz7xmlte]{opacity:1;transform:translate(2px,-2px)}.footer-link-icon[data-astro-cid-sz7xmlte]{opacity:.6;transition:opacity var(--duration-fast)}.footer-link[data-astro-cid-sz7xmlte]:hover .footer-link-icon[data-astro-cid-sz7xmlte]{opacity:1}.footer-bottom[data-astro-cid-sz7xmlte]{margin-top:3rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;align-items:center;gap:.75rem;text-align:center}@media(min-width:640px){.footer-bottom[data-astro-cid-sz7xmlte]{flex-direction:row;justify-content:space-between;text-align:left}}.footer-copyright[data-astro-cid-sz7xmlte]{font-family:var(--font-body);font-size:.8rem;color:#fff6;margin:0}.footer-credit[data-astro-cid-sz7xmlte]{margin:0}.footer-credit-text[data-astro-cid-sz7xmlte]{font-family:var(--font-handwritten);font-size:.9rem;color:var(--color-ceramic);opacity:.6}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--font-mono);font-feature-settings:normal;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:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}html{font-family:var(--font-body);background-color:var(--color-background);color:var(--color-text);line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");opacity:.025}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:600;line-height:1.2;color:var(--color-text);letter-spacing:-.02em}h1{font-size:clamp(2.25rem,5vw + 1rem,3.75rem);font-weight:700}h2{font-size:clamp(1.5rem,3vw + .5rem,2.25rem);margin-top:2.5rem;margin-bottom:1rem}h3{font-size:clamp(1.25rem,2vw + .25rem,1.5rem);margin-top:2rem;margin-bottom:.75rem}h4{font-size:1.25rem;margin-top:1.5rem;margin-bottom:.5rem}a{color:var(--color-accent);text-decoration:none;position:relative}a:not(.no-underline):after{content:"";position:absolute;bottom:-2px;left:0;width:100%;height:2px;background-color:var(--color-accent-light);transform:scaleX(0);transform-origin:right;transition:transform var(--duration-normal) var(--ease-out-expo)}a:hover:after{transform:scaleX(1);transform-origin:left}a:hover{color:var(--color-accent-hover)}p{margin-bottom:1.25rem}ul,ol{margin-bottom:1.25rem;padding-left:1.5rem}li{margin-bottom:.5rem}code{font-family:var(--font-mono);font-size:.9em;background-color:var(--color-surface);padding:.125rem .5rem;border-radius:var(--border-radius);border:1px solid var(--color-border)}pre{background-color:var(--color-surface);padding:1.25rem;border-radius:var(--border-radius-lg);overflow-x:auto;margin-bottom:1.25rem;border:1px solid var(--color-border)}pre code{background:none;padding:0;border:none}blockquote{border-left:4px solid var(--color-accent);padding:1rem 1.5rem;margin:2rem 0;background-color:var(--color-surface);border-radius:0 var(--border-radius-lg) var(--border-radius-lg) 0;font-style:italic;font-size:1.1rem;color:var(--color-text);position:relative}blockquote:before{content:'"';font-family:var(--font-display);font-size:4rem;color:var(--color-accent);opacity:.3;position:absolute;top:-.5rem;left:.5rem;line-height:1}hr{border:none;height:2px;background:linear-gradient(90deg,transparent,var(--color-border-strong),transparent);margin:3rem 0}img{max-width:100%;height:auto;border-radius:var(--border-radius)}table{width:100%;border-collapse:collapse;margin-bottom:1.25rem;background-color:var(--color-surface);border-radius:var(--border-radius-lg);overflow:hidden}th,td{border:1px solid var(--color-border);padding:.875rem 1rem;text-align:left}th{background-color:var(--color-paper-aged);font-family:var(--font-display);font-weight:600;color:var(--color-text)}::-moz-selection{background-color:var(--color-accent);color:var(--color-text-inverse)}::selection{background-color:var(--color-accent);color:var(--color-text-inverse)}.container{width:100%}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}.container{max-width:1280px;margin:0 auto;padding:0 1.25rem}@media(min-width:768px){.container{padding:0 2rem}}.card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);padding:1.5rem;box-shadow:var(--shadow-sm);transition:transform var(--duration-normal) var(--ease-out-back),box-shadow var(--duration-normal) var(--ease-out-expo)}.card:hover{transform:translateY(-4px) rotate(.5deg);box-shadow:var(--shadow-lg)}.\!btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:.5rem!important;padding:.875rem 1.75rem!important;background-color:var(--color-accent)!important;color:var(--color-text-inverse)!important;font-family:var(--font-display)!important;font-weight:600!important;font-size:1rem!important;border-radius:var(--border-radius-lg)!important;text-decoration:none!important;border:none!important;cursor:pointer!important;box-shadow:var(--shadow-sm)!important;transition:background-color var(--duration-fast),transform var(--duration-fast) var(--ease-out-back),box-shadow var(--duration-fast)!important}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.75rem;background-color:var(--color-accent);color:var(--color-text-inverse);font-family:var(--font-display);font-weight:600;font-size:1rem;border-radius:var(--border-radius-lg);text-decoration:none;border:none;cursor:pointer;box-shadow:var(--shadow-sm);transition:background-color var(--duration-fast),transform var(--duration-fast) var(--ease-out-back),box-shadow var(--duration-fast)}.\!btn:after{display:none!important}.btn:after{display:none}.\!btn:hover{background-color:var(--color-accent-hover)!important;color:var(--color-text-inverse)!important;transform:translateY(-2px)!important;box-shadow:var(--shadow-md)!important}.btn:hover{background-color:var(--color-accent-hover);color:var(--color-text-inverse);transform:translateY(-2px);box-shadow:var(--shadow-md)}.\!btn:active{transform:translateY(0)!important;box-shadow:var(--shadow-sm)!important}.btn:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.tag{display:inline-block;padding:.25rem .875rem;background-color:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--border-radius);font-family:var(--font-body);font-size:.8rem;font-weight:500;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;transition:all var(--duration-fast)}.tag:hover{background-color:var(--color-accent);color:var(--color-text-inverse);border-color:var(--color-accent)}.stamp{display:inline-block;padding:.375rem .75rem;font-family:var(--font-display);font-weight:700;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-stamp);border:2px solid currentColor;border-radius:4px;transform:rotate(-3deg);opacity:.9}.handwritten{font-family:var(--font-handwritten);font-size:1.25em;color:var(--color-ink);line-height:1.4}.prose{max-width:68ch}.prose>*+*{margin-top:1.25rem}.polaroid{background-color:var(--color-surface-elevated);padding:.5rem .5rem 2rem;box-shadow:var(--shadow-md);border-radius:2px}.polaroid img{border-radius:0}.pushpin{position:relative}.pushpin:before{content:"";position:absolute;top:-10px;left:50%;transform:translate(-50%);width:20px;height:20px;background:radial-gradient(circle at 35% 35%,#e44d26,#c1440e 60%,#8b2500);border-radius:50%;box-shadow:0 3px 6px #00000040,inset 0 -2px 4px #0003,inset 0 2px 4px #fff3}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.mb-12{margin-bottom:3rem}.mb-4{margin-bottom:1rem}.block{display:block}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.min-h-screen{min-height:100vh}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.gap-8{gap:2rem}.border{border-width:1px}.bg-background{background-color:var(--color-background)}.py-12{padding-top:3rem;padding-bottom:3rem}.text-center{text-align:center}.text-4xl{font-size:var(--text-4xl)}.font-bold{font-weight:700}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.text-text{color:var(--color-text)}.text-text-muted{color:var(--color-text-muted)}.no-underline{text-decoration-line:none}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));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)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{--color-background: #FDF6E3;--color-surface: #FAF0DC;--color-surface-elevated: #FFF9ED;--color-paper-aged: #F5E6C8;--color-text: #3D2914;--color-text-muted: #7A6550;--color-text-inverse: #FDF6E3;--color-ink: #2C1810;--color-accent: #C1440E;--color-accent-hover: #A33A0C;--color-accent-light: #E8820C;--color-accent-light-hover: #D0740A;--color-stamp: #8B2500;--color-herbs: #3D5A1E;--color-herbs-light: #5B7A35;--color-spice: #8B4513;--color-ceramic: #D4C4A8;--color-border: #D9CBAF;--color-border-strong: #BFA67A;--color-border-accent: #C1440E;--color-footer-bg: #3D2914;--color-cork: #C4A574;--color-notebook-line: #ADD8E6;--font-display: "Fraunces", Georgia, serif;--font-body: "Lora", Georgia, serif;--font-handwritten: "Caveat", cursive;--font-mono: "JetBrains Mono", monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.75rem;--text-7xl: 4.5rem;--border-radius: 8px;--border-radius-lg: 12px;--border-radius-xl: 16px;--shadow-sm: 0 2px 4px rgba(61, 41, 20, .08);--shadow-md: 0 4px 12px rgba(61, 41, 20, .12);--shadow-lg: 0 8px 24px rgba(61, 41, 20, .16);--shadow-xl: 0 12px 32px rgba(61, 41, 20, .2);--shadow-card-hover: 0 16px 40px rgba(61, 41, 20, .18);--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-out-back: cubic-bezier(.34, 1.56, .64, 1);--ease-smooth: cubic-bezier(.65, 0, .35, 1);--duration-fast: .15s;--duration-normal: .3s;--duration-slow: .5s}.article-content h2{padding-top:1.5rem;margin-top:3rem;border-top:2px solid var(--color-border);position:relative}.article-content h2:before{content:"";position:absolute;top:-2px;left:0;width:60px;height:2px;background-color:var(--color-accent)}.article-content h2:first-child{border-top:none;padding-top:0;margin-top:0}.article-content h2:first-child:before{display:none}.recipe-ingredients{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);padding:1.5rem;margin:1.5rem 0}.recipe-ingredients h3,.recipe-ingredients h4{font-family:var(--font-handwritten);font-size:1.5rem;color:var(--color-accent);margin-top:0;margin-bottom:1rem;border-bottom:2px dashed var(--color-border);padding-bottom:.5rem}.recipe-ingredients ul{list-style:none;padding-left:0;margin-bottom:0}.recipe-ingredients li{padding:.5rem 0 .5rem 2rem;position:relative;border-bottom:1px dotted var(--color-border)}.recipe-ingredients li:last-child{border-bottom:none}.recipe-ingredients li:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:8px;height:8px;background-color:var(--color-accent);border-radius:50%}.recipe-steps ol{counter-reset:step;list-style:none;padding-left:0}.recipe-steps li{counter-increment:step;padding-left:4rem;position:relative;margin-bottom:1.5rem;min-height:3rem}.recipe-steps li:before{content:counter(step);position:absolute;left:0;top:0;width:2.5rem;height:2.5rem;background-color:var(--color-accent);color:var(--color-text-inverse);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.1rem;font-weight:700;box-shadow:var(--shadow-sm)}@keyframes fade-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-down{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes card-lift{0%{transform:translateY(0) rotate(0);box-shadow:var(--shadow-md)}to{transform:translateY(-8px) rotate(1deg);box-shadow:var(--shadow-card-hover)}}@keyframes underline-draw{0%{transform:scaleX(0);transform-origin:left}to{transform:scaleX(1);transform-origin:left}}@keyframes wiggle{0%,to{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.animate-fade-up{animation:fade-up .6s var(--ease-out-expo) forwards;opacity:0}.animate-fade-in{animation:fade-in .4s var(--ease-out-expo) forwards}.animate-slide-down{animation:slide-down .5s var(--ease-out-expo) forwards}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.delay-5{animation-delay:.5s}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.no-underline:after{display:none!important}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.text-accent{color:var(--color-accent)}.text-accent-light{color:var(--color-accent-light)}.text-herbs{color:var(--color-herbs)}.text-muted{color:var(--color-text-muted)}.text-inverse{color:var(--color-text-inverse)}.bg-surface{background-color:var(--color-surface)}.bg-surface-elevated{background-color:var(--color-surface-elevated)}.bg-accent{background-color:var(--color-accent)}.bg-footer{background-color:var(--color-footer-bg)}.font-display{font-family:var(--font-display)}.font-body{font-family:var(--font-body)}.font-handwritten{font-family:var(--font-handwritten)}.font-mono{font-family:var(--font-mono)}.rotate-neg-2{transform:rotate(-2deg)}.rotate-neg-1{transform:rotate(-1deg)}.rotate-1{transform:rotate(1deg)}.rotate-2{transform:rotate(2deg)}.rotate-3{transform:rotate(3deg)}.hover\:rotate-1:hover{transform:rotate(1deg)}.hover\:rotate-2:hover{transform:rotate(2deg)}@media(min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.recipe-card[data-astro-cid-di2nlc57]{--card-rotation: 0deg;position:relative}.recipe-card[data-astro-cid-di2nlc57]:nth-child(3n+1){--card-rotation: -.5deg}.recipe-card[data-astro-cid-di2nlc57]:nth-child(3n+2){--card-rotation: .5deg}.recipe-card[data-astro-cid-di2nlc57]:nth-child(3n+3){--card-rotation: -.3deg}.recipe-card-link[data-astro-cid-di2nlc57]{display:block;text-decoration:none;color:inherit;transform:rotate(var(--card-rotation));transition:transform var(--duration-normal) var(--ease-out-back),filter var(--duration-normal)}.recipe-card-link[data-astro-cid-di2nlc57]:after{display:none}.recipe-card-link[data-astro-cid-di2nlc57]:hover{transform:rotate(0) translateY(-8px) scale(1.02);filter:drop-shadow(0 20px 40px rgba(61,41,20,.15))}.recipe-card-paper[data-astro-cid-di2nlc57]{background-color:var(--color-surface);border-radius:var(--border-radius-lg) var(--border-radius-lg) 0 0;padding:1rem;position:relative;overflow:hidden}.recipe-card-paper[data-astro-cid-di2nlc57]:before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");opacity:.04;pointer-events:none}.recipe-card-torn-edge[data-astro-cid-di2nlc57]{height:16px;background-color:var(--color-surface);position:relative;clip-path:polygon(0% 0%,100% 0%,100% 30%,97% 60%,95% 30%,92% 80%,89% 40%,86% 90%,83% 50%,80% 70%,77% 30%,74% 100%,71% 40%,68% 80%,65% 20%,62% 60%,59% 100%,56% 30%,53% 70%,50% 40%,47% 90%,44% 50%,41% 80%,38% 20%,35% 70%,32% 100%,29% 30%,26% 60%,23% 90%,20% 40%,17% 80%,14% 20%,11% 70%,8% 50%,5% 100%,2% 30%,0% 70%)}.recipe-card-image-wrapper[data-astro-cid-di2nlc57]{position:relative;margin-bottom:1rem}.recipe-card-image-frame[data-astro-cid-di2nlc57]{background-color:var(--color-surface-elevated);padding:6px;border-radius:2px;box-shadow:var(--shadow-sm);overflow:hidden}.recipe-card-image[data-astro-cid-di2nlc57]{width:100%;aspect-ratio:16 / 10;-o-object-fit:cover;object-fit:cover;border-radius:0;display:block;transition:transform var(--duration-slow) var(--ease-out-expo)}.recipe-card-link[data-astro-cid-di2nlc57]:hover .recipe-card-image[data-astro-cid-di2nlc57]{transform:scale(1.05)}.recipe-card-tape[data-astro-cid-di2nlc57]{position:absolute;top:-6px;left:50%;transform:translate(-50%) rotate(-2deg);width:60px;height:24px;background:linear-gradient(135deg,#e8820c66,#e8820c4d,#e8820c66);border-radius:2px;opacity:.9}.recipe-card-content[data-astro-cid-di2nlc57]{position:relative;z-index:1}.recipe-card-meta[data-astro-cid-di2nlc57]{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.recipe-card-category[data-astro-cid-di2nlc57]{display:inline-block;padding:.25rem .625rem;font-family:var(--font-display);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-stamp);border:2px solid currentColor;border-radius:3px;transform:rotate(-2deg);transition:all var(--duration-fast)}.recipe-card-category[data-astro-cid-di2nlc57]:after{display:none}.recipe-card-category[data-astro-cid-di2nlc57]:hover{color:var(--color-text-inverse);background-color:var(--color-accent);border-color:var(--color-accent);transform:rotate(0)}.recipe-card-date[data-astro-cid-di2nlc57]{font-family:var(--font-handwritten);font-size:.9rem;color:var(--color-text-muted)}.recipe-card-title[data-astro-cid-di2nlc57]{font-family:var(--font-display);font-size:1.125rem;font-weight:600;line-height:1.3;color:var(--color-text);margin:0 0 .5rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color var(--duration-fast)}.recipe-card-link[data-astro-cid-di2nlc57]:hover .recipe-card-title[data-astro-cid-di2nlc57]{color:var(--color-accent)}.recipe-card-description[data-astro-cid-di2nlc57]{font-family:var(--font-body);font-size:.875rem;line-height:1.5;color:var(--color-text-muted);margin:0 0 .75rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.recipe-card-readmore[data-astro-cid-di2nlc57]{display:inline-flex;align-items:center;gap:.375rem;font-family:var(--font-handwritten);font-size:1rem;color:var(--color-accent);opacity:0;transform:translate(-8px);transition:all var(--duration-normal) var(--ease-out-expo)}.recipe-card-link[data-astro-cid-di2nlc57]:hover .recipe-card-readmore[data-astro-cid-di2nlc57]{opacity:1;transform:translate(0)}.recipe-card-arrow[data-astro-cid-di2nlc57]{transition:transform var(--duration-fast)}.recipe-card-link[data-astro-cid-di2nlc57]:hover .recipe-card-arrow[data-astro-cid-di2nlc57]{transform:translate(4px)}.recipe-card-featured[data-astro-cid-di2nlc57] .recipe-card-paper[data-astro-cid-di2nlc57]{padding:1.25rem}.recipe-card-featured[data-astro-cid-di2nlc57] .recipe-card-title[data-astro-cid-di2nlc57]{font-size:1.375rem;-webkit-line-clamp:3}.recipe-card-featured[data-astro-cid-di2nlc57] .recipe-card-description[data-astro-cid-di2nlc57]{font-size:.9375rem;-webkit-line-clamp:3}.recipe-card-paper[data-astro-cid-di2nlc57]:not(:has(.recipe-card-image-wrapper)){padding-top:1.5rem}@media(min-width:768px){.recipe-card-paper[data-astro-cid-di2nlc57]{padding:1.25rem}.recipe-card-title[data-astro-cid-di2nlc57]{font-size:1.25rem}}
