:root{--color-primary: #C8C3F3;--color-primary-dark: #6B60B8;--color-primary-light: #E8E5FB;--color-accent: #3D3566;--color-text: #2C2C2C;--color-text-muted: #6B6B6B;--color-bg: #FEFEFE;--color-bg-warm: #FBF9F7;--color-border: #E5E5E5;--font-script: "Berkshire Swash", cursive;--font-heading: "Playfair Display", Georgia, serif;--font-body: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 2rem;--space-xl: 4rem;--max-width: 72rem;--content-width: 48rem}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:var(--font-body);color:var(--color-text);background:var(--color-bg);line-height:1.6}img{max-width:100%;height:auto;display:block}a{color:var(--color-primary-dark)}a:hover{color:var(--color-primary)}h1,h2,h3,h4{font-family:var(--font-heading);color:var(--color-accent);line-height:1.2}.script-text{font-family:var(--font-script)}.container{width:100%;max-width:var(--max-width);margin-inline:auto;padding-inline:var(--space-md)}.content-width{max-width:var(--content-width);margin-inline:auto}.page-content{padding-top:var(--space-xl)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.site-header{background:var(--color-bg-warm);border-bottom:2px solid var(--color-primary);padding:var(--space-md) 0}.site-header .container{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-md)}.site-header nav{display:flex;gap:var(--space-md);flex-wrap:wrap}.site-header nav a{text-decoration:none;font-weight:500;padding:var(--space-xs) var(--space-sm)}.logo-link{display:flex;align-items:center;gap:var(--space-sm);text-decoration:none;color:var(--color-accent)}.logo-link img{width:50px;height:auto}.logo-link .site-name{font-family:var(--font-heading);font-size:1.5rem}.site-footer{background:var(--color-primary);color:var(--color-text);padding:var(--space-lg) 0;margin-top:var(--space-xl);text-align:center}.site-footer a{color:var(--color-accent)}.site-footer p{margin:var(--space-xs) 0}.post-card{border:1px solid var(--color-border);border-radius:8px;overflow:hidden;transition:box-shadow .2s}.post-card:hover{box-shadow:0 4px 12px #c9c3f759}.post-card a{text-decoration:none;color:inherit;display:block}.post-card img{width:100%;aspect-ratio:16 / 10;object-fit:cover}.post-card-body{padding:var(--space-md)}.post-card-body h3{margin:0 0 var(--space-sm);font-size:1.1rem}.post-card-body time{color:var(--color-text-muted);font-size:.875rem}.post-card-body p{margin:var(--space-sm) 0 0;font-size:.9rem;color:var(--color-text-muted)}.post-grid{display:grid;grid-template-columns:1fr;gap:var(--space-lg)}@media(min-width:640px){.post-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:960px){.post-grid{grid-template-columns:repeat(3,1fr)}}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-sm)}@media(min-width:640px){.gallery-grid{grid-template-columns:repeat(3,1fr)}}@media(min-width:960px){.gallery-grid{grid-template-columns:repeat(4,1fr)}}.gallery-item{aspect-ratio:1;overflow:hidden;border-radius:4px}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.gallery-item:hover img{transform:scale(1.05)}.blog-post{max-width:var(--content-width);margin-inline:auto}.blog-post .hero-image{border-radius:8px;margin-bottom:var(--space-lg)}.blog-post h1{font-size:clamp(1.75rem,4vw,2.5rem);margin-bottom:var(--space-sm)}.blog-post .post-meta{color:var(--color-text-muted);margin-bottom:var(--space-lg)}.blog-post .post-content h2{margin-top:var(--space-lg)}.hero{text-align:center;padding:var(--space-xl) var(--space-md);background:var(--color-primary)}.hero h1{font-family:var(--font-heading);font-size:clamp(2rem,5vw,3.5rem);color:var(--color-accent);margin-bottom:var(--space-sm)}.hero .tagline{font-size:1.25rem;color:var(--color-text);max-width:40ch;margin-inline:auto}.store-info{background:var(--color-bg-warm);border:1px solid var(--color-border);border-radius:8px;padding:var(--space-lg);max-width:32rem;margin-inline:auto}.store-info dt{font-weight:600;color:var(--color-accent);margin-top:var(--space-md)}.store-info dt:first-child{margin-top:0}.store-info dd{margin-left:0}
