@import url("https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,600;9..144,700&family=Source+Sans+3:wght@400;500;600&display=swap");.bloom{--bloom-ivory:#f7f3ec;--bloom-ivory-deep:#efe8dc;--bloom-sage:#4a6b5a;--bloom-sage-deep:#355445;--bloom-burgundy:#7a2e3a;--bloom-burgundy-hover:#632530;--bloom-ink:#1f1a17;--bloom-muted:#5c534c;--bloom-line:rgba(31,26,23,0.12);--bloom-serif:"Fraunces","Palatino Linotype",Palatino,serif;--bloom-sans:"Source Sans 3","Segoe UI",sans-serif;--bloom-max:1120px;--bloom-radius:2px;color:var(--bloom-ink);background:var(--bloom-ivory);font-family:var(--bloom-sans);font-size:1.05rem;line-height:1.55;min-height:100vh}.bloom *,.bloom :after,.bloom :before{box-sizing:border-box}.bloom a{color:inherit;text-decoration:none}.bloom img{display:block;max-width:100%}.bloom-nav{position:fixed;inset:0 0 auto;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem clamp(1rem,4vw,2.5rem);transition:background .35s ease,box-shadow .35s ease,color .35s ease;color:var(--bloom-ivory)}.bloom-nav-solid{background:rgba(247,243,236,.94);color:var(--bloom-ink);box-shadow:0 1px 0 var(--bloom-line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.bloom-logo{display:inline-flex;align-items:center;gap:.55rem;font-family:var(--bloom-serif);font-size:1.35rem;font-weight:600;letter-spacing:-.02em}.bloom-logo-mark{width:2.35rem;height:2.35rem;object-fit:contain;flex-shrink:0;border-radius:4px}.bloom-logo em,.bloom-logo-text em{font-style:italic;font-weight:500;color:var(--bloom-burgundy)}.bloom-nav-solid .bloom-logo em,.bloom-nav-solid .bloom-logo-text em{color:var(--bloom-burgundy)}.bloom-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.35rem 1.1rem;font-size:.95rem;font-weight:500}.bloom-links a:hover{opacity:.75}.bloom-nav-cta{display:inline-flex;align-items:center;padding:.45rem .95rem;background:var(--bloom-burgundy);color:var(--bloom-ivory)!important;border-radius:var(--bloom-radius);transition:background .2s ease,transform .2s ease}.bloom-nav-cta:hover{background:var(--bloom-burgundy-hover);opacity:1!important;transform:translateY(-1px)}.bloom-hero{position:relative;min-height:100vh;min-height:100dvh;display:grid;align-items:end;color:var(--bloom-ivory);overflow:hidden}.bloom-hero-media{position:absolute;inset:0}.bloom-hero-media img{width:100%;height:100%;object-fit:cover;transform:scale(1.04);animation:bloom-ken 18s ease-out forwards}.bloom-hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(31,26,23,.35),rgba(31,26,23,.15) 40%,rgba(31,26,23,.72))}.bloom-hero-copy{position:relative;z-index:1;width:min(100%,var(--bloom-max));margin:0 auto;padding:6.5rem clamp(1rem,4vw,2.5rem) 4rem;animation:bloom-rise .9s ease-out both}.bloom-hero-brand{font-family:var(--bloom-serif);font-size:clamp(2.4rem,6vw,4.2rem);font-weight:600;letter-spacing:-.03em;line-height:1.05;margin:0 0 1rem}.bloom-hero-brand em{font-style:italic;font-weight:500}.bloom-hero h1{font-family:var(--bloom-serif);font-size:clamp(1.35rem,2.8vw,1.85rem);font-weight:500;line-height:1.3;max-width:18ch;margin:0 0 .75rem}.bloom-hero-sub{max-width:36ch;margin:0 0 1.5rem;font-size:1.08rem;color:rgba(247,243,236,.9)}.bloom-btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.35rem;background:var(--bloom-burgundy);color:var(--bloom-ivory);font-weight:600;font-size:.98rem;border:0;border-radius:var(--bloom-radius);cursor:pointer;transition:background .2s ease,transform .2s ease}.bloom-btn:hover{background:var(--bloom-burgundy-hover);transform:translateY(-1px)}.bloom-btn-ghost{background:transparent;color:var(--bloom-ink);border:1px solid var(--bloom-line)}.bloom-btn-ghost:hover{background:var(--bloom-ivory-deep)}.bloom-section{width:min(100%,var(--bloom-max));margin:0 auto;padding:clamp(3.5rem,8vw,5.5rem) clamp(1rem,4vw,2.5rem)}.bloom-section-head{margin:0 0 2rem;max-width:36rem}.bloom-section-head h2{font-family:var(--bloom-serif);font-size:clamp(1.85rem,3.5vw,2.45rem);font-weight:600;letter-spacing:-.02em;margin:0 0 .5rem}.bloom-section-head p{margin:0;color:var(--bloom-muted)}.bloom-eyebrow{display:block;margin-bottom:.4rem;font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--bloom-sage)}.bloom-collections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1.25rem 1rem;gap:1.25rem 1rem}@media (min-width:800px){.bloom-collections{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.75rem 1.25rem}}.bloom-collection{display:block;color:inherit}.bloom-collection-media{overflow:hidden;aspect-ratio:4/5;background:var(--bloom-ivory-deep);margin-bottom:.85rem}.bloom-collection-media img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.bloom-collection:hover .bloom-collection-media img{transform:scale(1.04)}.bloom-collection h3{font-family:var(--bloom-serif);font-size:1.25rem;font-weight:600;margin:0 0 .25rem}.bloom-collection p{margin:0 0 .35rem;color:var(--bloom-muted);font-size:.95rem}.bloom-price{font-size:.9rem;font-weight:600;color:var(--bloom-sage-deep)}.bloom-occasions-wrap{background:var(--bloom-ivory-deep)}.bloom-occasions{display:grid;grid-gap:1.5rem;gap:1.5rem}@media (min-width:700px){.bloom-occasions{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.75rem}}.bloom-occasion h3{font-family:var(--bloom-serif);font-size:1.2rem;margin:0 0 .4rem;padding-bottom:.4rem;border-bottom:1px solid var(--bloom-line)}.bloom-occasion p{margin:0;color:var(--bloom-muted);font-size:.95rem}.bloom-story{display:grid;grid-gap:1.5rem;gap:1.5rem;align-items:center}@media (min-width:800px){.bloom-story{grid-template-columns:1fr 1.1fr;gap:3rem}}.bloom-story-copy h2{font-family:var(--bloom-serif);font-size:clamp(1.85rem,3.5vw,2.45rem);margin:0 0 .85rem}.bloom-story-copy p{margin:0;color:var(--bloom-muted);font-size:1.08rem;max-width:38ch}.bloom-story-panel{position:relative;min-height:280px;overflow:hidden;background:var(--bloom-ivory-deep)}.bloom-story-panel img{width:100%;height:100%;min-height:280px;object-fit:cover}.bloom-story-panel:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(74,107,90,.45),rgba(122,46,58,.35));pointer-events:none}.bloom-delivery-grid{display:grid;grid-gap:1.5rem;gap:1.5rem}@media (min-width:700px){.bloom-delivery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.bloom-delivery-item h3{font-family:var(--bloom-serif);font-size:1.15rem;margin:0 0 .4rem}.bloom-delivery-item p{margin:0;color:var(--bloom-muted);font-size:.95rem}.bloom-note{margin:.75rem 0 0;font-size:.85rem;color:var(--bloom-muted);font-style:italic}.bloom-subscribe{background:var(--bloom-sage-deep);color:var(--bloom-ivory)}.bloom-subscribe .bloom-section{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1.5rem}.bloom-subscribe h2{font-family:var(--bloom-serif);font-size:clamp(1.7rem,3vw,2.2rem);margin:0 0 .5rem}.bloom-subscribe p{margin:0;max-width:38ch;color:rgba(247,243,236,.88)}.bloom-subscribe .bloom-btn{background:var(--bloom-ivory);color:var(--bloom-sage-deep)}.bloom-subscribe .bloom-btn:hover{background:#fff}.bloom-guides{display:grid;grid-gap:1.25rem;gap:1.25rem}@media (min-width:700px){.bloom-guides{grid-template-columns:repeat(3,minmax(0,1fr))}}.bloom-guide-card{padding-top:1rem;border-top:1px solid var(--bloom-line);transition:opacity .2s ease}.bloom-guide-card:hover{opacity:.8}.bloom-guide-card h3{font-family:var(--bloom-serif);font-size:1.15rem;margin:0 0 .4rem}.bloom-guide-card p{margin:0;color:var(--bloom-muted);font-size:.95rem}.bloom-contact-grid{display:grid;grid-gap:1.75rem;gap:1.75rem}@media (min-width:700px){.bloom-contact-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}}.bloom-contact-grid h3{font-family:var(--bloom-serif);font-size:1.15rem;margin:0 0 .5rem}.bloom-contact-grid p{margin:0 0 .5rem;color:var(--bloom-muted);line-height:1.7}.bloom-contact-grid a{color:var(--bloom-burgundy);text-decoration:underline;text-underline-offset:2px}.bloom-contact-grid a:hover{color:var(--bloom-burgundy-hover)}.bloom-footer{border-top:1px solid var(--bloom-line);padding:3.5rem clamp(1rem,4vw,2.5rem) 2rem;color:var(--bloom-muted);font-size:.95rem;background:var(--bloom-ivory-deep)}.bloom-footer-grid{width:min(100%,var(--bloom-max));margin:0 auto 2.5rem;display:grid;grid-gap:2rem;gap:2rem}@media (min-width:800px){.bloom-footer-grid{grid-template-columns:2fr 1fr 1fr 1.5fr;gap:2.5rem}}.bloom-footer-brand h3{font-family:var(--bloom-serif);font-size:1.5rem;font-weight:600;color:var(--bloom-ink);margin:0 0 .75rem;display:inline-flex;align-items:center;gap:.5rem}.bloom-footer-brand .bloom-logo-mark{width:2.1rem;height:2.1rem}.bloom-footer-brand em{font-style:italic;font-weight:500;color:var(--bloom-burgundy)}.bloom-footer-brand p{margin:0;line-height:1.7;max-width:32ch}.bloom-footer-col h4{font-family:var(--bloom-serif);font-size:.95rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--bloom-ink);margin:0 0 1rem}.bloom-footer-col ul{list-style:none;margin:0;padding:0}.bloom-footer-col li{margin:0 0 .4rem}.bloom-footer-col a{color:var(--bloom-muted);transition:color .2s ease}.bloom-footer-col a:hover{color:var(--bloom-burgundy)}.bloom-footer-col p{margin:0 0 .75rem;line-height:1.7}.bloom-footer-bottom{width:min(100%,var(--bloom-max));margin:0 auto;padding-top:1.75rem;border-top:1px solid var(--bloom-line);text-align:center;font-size:.9rem}.bloom-footer-bottom p{margin:0}.bloom-shell{width:min(100%,720px);margin:0 auto;padding:6rem clamp(1rem,4vw,2rem) 3rem}.bloom-prose h1{font-family:var(--bloom-serif);font-size:clamp(1.9rem,3.5vw,2.5rem);line-height:1.15;margin:0 0 1rem}.bloom-prose h2{font-family:var(--bloom-serif);font-size:1.35rem;margin:2rem 0 .6rem}.bloom-prose li,.bloom-prose p{color:var(--bloom-muted)}.bloom-prose ul{padding-left:1.2rem}.bloom-prose a{color:var(--bloom-burgundy);text-decoration:underline;text-underline-offset:2px}.bloom-meta{font-size:.9rem;color:var(--bloom-muted)}@keyframes bloom-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes bloom-ken{to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.bloom-hero-copy,.bloom-hero-media img{animation:none}.bloom-collection-media img{transition:none}}@media (max-width:640px){.bloom-links a:not(.bloom-nav-cta){display:none}}