body{background-color:#fbfaee;background-image:url(https://www.transparenttextures.com/patterns/cream-paper.png);overflow-x:hidden}.material-symbols-outlined{font-variation-settings:"FILL" 0, "wght" 300, "GRAD" 0, "opsz" 24}.pulse-badge{position:relative}.pulse-badge:after{content:"";border:2px solid #bbcca7;border-radius:9999px;animation:2s cubic-bezier(.4,0,.6,1) infinite pulse;position:absolute;inset:-4px}@keyframes pulse{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.3)}}.storybook-button{border-bottom:5px solid #00000026;transition:all .2s cubic-bezier(.175,.885,.32,1.275)}.storybook-button:hover{border-bottom-width:3px;transform:translateY(2px)}.storybook-button:active{border-bottom-width:0;transform:translateY(5px)}.hand-drawn-border{border:3px solid #56423d;border-radius:255px 15px 225px/15px 225px 15px 255px}.masonry{column-count:1;column-gap:2rem}@media (width>=768px){.masonry{column-count:2}}.gallery-item{break-inside:avoid;margin-bottom:2rem;position:relative}.sketchbook-frame{background:#fff;border-radius:4px;padding:1rem;transform:rotate(-1deg);box-shadow:5px 5px 15px #0000000d}.gallery-item:nth-child(2n) .sketchbook-frame{transform:rotate(1.5deg)}.scribble-accent{pointer-events:none;opacity:.25;filter:sepia()saturate(300%)hue-rotate(-10deg)}.torn-edge{-webkit-mask-image:url(https://www.transparenttextures.com/patterns/brushed-alum.png);mask-image:url(https://www.transparenttextures.com/patterns/brushed-alum.png)}.watercolor-blob{background:radial-gradient(circle, var(--tw-gradient-from) 0%, transparent 70%);filter:blur(40px);opacity:.3}.text-mix{font-family:Playfair Display,serif}.text-mix span{font-style:italic;font-weight:400}.asymmetric-grid{grid-template-columns:repeat(12,1fr);display:grid}@keyframes floatSlow{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-10px)rotate(1deg)}}@keyframes floatSlowReverse{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(10px)rotate(-1deg)}}.animate-float{animation:4s ease-in-out infinite floatSlow}.animate-float-delayed{animation:5s ease-in-out 1s infinite floatSlowReverse}.text-gradient-primary{background:linear-gradient(135deg,#9a4026 0%,#b9583b 50%,#735800 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}@keyframes shake{0%,to{transform:translate(0)}15%,45%,75%{transform:translate(-6px)}30%,60%,90%{transform:translate(6px)}}.animate-shake{animation:.5s cubic-bezier(.36,.07,.19,.97) both shake}
