@font-face{font-family:Cormorant;src:url('assets/fonts/cormorant-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Cormorant;src:url('assets/fonts/cormorant-italic.woff2') format('woff2');font-style:italic;font-weight:400;font-display:swap}
@font-face{font-family:Jost;src:url('assets/fonts/jost-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
:root{--paper:#f7f4ec;--ink:#263f35;--rose:#975f68;--line:#929b87;--serif:Cormorant,Georgia,serif;--sans:Jost,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1rem;-webkit-font-smoothing:antialiased}body::before{content:"";position:fixed;inset:0;z-index:10;pointer-events:none;opacity:.17;background-image:url('assets/paper.svg')}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button,svg{flex-shrink:0}svg{fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}a:focus-visible,button:focus-visible{outline:2px solid var(--rose);outline-offset:5px}.wrap{width:min(1280px,calc(100% - 80px));margin-inline:auto}.skip-link{opacity:0;pointer-events:none;position:fixed;top:16px;left:20px;z-index:30;background:var(--ink);color:var(--paper);padding:16px}.skip-link:focus{opacity:1;pointer-events:auto}.site-header{height:120px;display:flex;align-items:center;gap:32px;border-bottom:1px solid var(--line)}.wordmark{display:flex;flex-direction:column;align-items:center;line-height:.9;padding:10px 0 14px;margin-right:auto}.wordmark>span{font:4.25rem/.85 var(--serif);letter-spacing:-3px}.wordmark small{font:0.6875rem var(--sans);letter-spacing:3px;text-transform:uppercase;margin-top:10px}.site-header nav{display:flex;align-items:center;gap:25px;font-size:0.9375rem}.site-header nav>a,.nav-link{display:flex;align-items:center;min-height:44px}.nav-link{border:0;padding:0;background:none}.site-header nav>a:hover,.nav-link:hover{color:var(--rose)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;background:var(--ink);border:1px solid var(--ink);border-radius:2px;color:var(--paper);padding:13px 26px;font:1rem/1.3 var(--sans);transition:background .2s,transform .2s;box-shadow:inset 0 0 0 2px #f7f4ec13}.button:hover{background:#3d5746;transform:translateY(-2px)}.button.small{font-size:.9375rem;min-height:46px;padding:11px 24px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;min-height:665px;padding-block:26px 28px}.hero-copy{position:relative;z-index:1;padding:0 0 20px 24px}.hero h1{font:400 clamp(3.75rem,7.2vw,6.25rem)/.99 var(--serif);letter-spacing:-3px;margin:0 0 27px}.hero h1 em{font-weight:400;color:var(--rose)}.hero-copy>p{max-width:410px;font-size:1.125rem;line-height:1.6;margin:0 0 28px}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 28px}.text-link{display:inline-flex;align-items:center;min-height:48px;font-size:1rem;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}.text-link:hover{color:var(--rose)}.hero-art{position:relative;margin-right:-12px;align-self:center}.hero-art img{display:block;width:100%;height:auto;mask-image:linear-gradient(to right,transparent,#000 4%,#000 96%,transparent),linear-gradient(to bottom,transparent,#000 3%,#000 97%,transparent);mask-composite:intersect}.divider{display:flex;align-items:center;gap:24px;font:italic 1.375rem var(--serif);text-align:center}.divider::before,.divider::after{content:"";height:1px;background:var(--line);flex:1}.divider span{flex-shrink:1}.flowers{padding:56px 0 64px;scroll-margin-top:20px}.flowers h2{font:400 3.375rem/1.05 var(--serif);letter-spacing:-1.2px;text-align:center;margin:0 0 36px}.flower-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;padding-inline:22px}.flower{min-width:0;display:block}.flower-image{height:320px;display:flex;align-items:center;justify-content:center}.flower-image img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;transition:transform .35s ease}.flower:hover img{transform:translateY(-5px)}.flower h3{display:flex;align-items:center;justify-content:center;gap:12px;font:400 1.75rem/1.2 var(--serif);margin:23px 0 0}.flower h3 span{border-bottom:1px solid var(--line);padding-bottom:3px}.flower h3 svg{width:21px;height:21px;transition:transform .2s}.flower:hover h3 svg{transform:translateX(4px)}.flower-caption p{font-size:.875rem;text-align:center;margin:11px 0 0;color:#536454;line-height:1.5}.weddings{padding:64px 0 76px;border-top:1px solid var(--line);display:grid;grid-template-columns:1.05fr 1fr;gap:68px;align-items:center}.wedding-photo{margin:0;position:relative}.wedding-photo img{display:block;width:100%;height:auto;aspect-ratio:1.18;object-fit:cover;object-position:50% 48%;border-radius:2px}.wedding-photo figcaption{font:italic 1.25rem var(--serif);margin-top:14px}.section-label{font-size:.8125rem;letter-spacing:2px;text-transform:uppercase;margin:0 0 20px}.wedding-copy h2{font:400 clamp(2.875rem,4.3vw,4rem)/1.03 var(--serif);letter-spacing:-1px;margin:0 0 22px}.wedding-copy h2 em{color:var(--rose);font-weight:400}.wedding-copy>p:not(.section-label){font-size:1.0625rem;line-height:1.7;max-width:410px;margin:0 0 26px}.wedding-instagram{display:flex;align-items:center;gap:8px;font-size:.875rem;min-height:48px;margin-top:12px;text-decoration:underline;text-underline-offset:4px}.wedding-instagram svg{height:16px;width:16px}footer{background:#e9ebdf;border-top:1px solid #d9ddce}.footer-inner{padding:40px 20px 23px}footer h2{font:italic 2.375rem var(--serif);text-align:center;margin:0 0 30px}.visit-details{display:flex;align-items:center;justify-content:center}.visit-details>a{padding:8px 36px;font-size:1rem;text-align:center;min-height:48px;display:flex;align-items:center}.visit-details>a+a{border-left:1px solid #a8af9d}.visit-details a:hover{text-decoration:underline;text-underline-offset:5px}address{font-style:normal;line-height:1.6}.hours{font-size:.875rem;text-align:center;margin:24px 0 30px;line-height:1.6;color:#4d5d4e}.hours span{margin:0 12px}.footer-bottom{padding-top:17px;border-top:1px solid #c7cebd;font-size:.75rem;letter-spacing:.3px;display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-bottom a{display:flex;align-items:center;gap:8px;min-height:44px}.footer-bottom svg{height:16px;width:16px}dialog{border:1px solid var(--line);border-radius:3px;background:var(--paper);color:var(--ink);width:min(630px,calc(100% - 32px));padding:50px;max-height:85dvh;box-shadow:0 20px 100px #15261c44}dialog::backdrop{background:#1d322b88;backdrop-filter:blur(5px)}dialog h2{font:400 3.625rem/1 var(--serif);margin:10px 0 25px}dialog h2 em{color:var(--rose)}dialog p:not(.story-date){font-size:1.0625rem;line-height:1.7}.story-date{font-size:.875rem;letter-spacing:1px}.close-story{position:absolute;top:12px;right:12px;width:44px;height:44px;border:0;background:none;padding:10px}.close-story svg{width:24px;height:24px}body.modal-open{overflow:hidden}
@media(max-width:1100px){.wrap{width:calc(100% - 56px)}.site-header{height:104px;gap:22px}.wordmark>span{font-size:3.5rem}.wordmark small{font-size:.625rem;letter-spacing:2px}.site-header nav{gap:19px;font-size:.875rem}.hero{min-height:580px;grid-template-columns:1fr 1fr}.hero-copy{padding-left:12px}.hero h1{font-size:clamp(3.25rem,7.1vw,4.875rem);letter-spacing:-2px}.hero-copy>p{font-size:1.0625rem;max-width:350px}.hero-actions{gap:12px 22px}.button{padding-inline:21px}.hero-art{margin-right:-8px}.flowers h2{font-size:3rem}.flower-grid{gap:24px;padding-inline:0}.flower-image{height:270px}.weddings{gap:38px}.visit-details>a{padding-inline:25px}.footer-inner{padding-inline:0}}
@media(max-width:900px){.site-header{position:relative;gap:16px}.site-header .wordmark{order:0}.header-shop{order:1}.menu-toggle{order:2;display:flex;align-items:center;justify-content:center;gap:7px;border:0;background:none;font-size:.9375rem;min-height:44px;min-width:44px;padding:9px 0}.site-header nav{display:none;position:absolute;top:calc(100% + 1px);left:-28px;right:-28px;padding:15px 28px 22px;background:var(--paper);z-index:20;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #263f350b;align-items:stretch;gap:0;font-size:1.0625rem}.site-header nav.is-open{display:flex;flex-direction:column}.site-header nav>a,.nav-link{min-height:48px}.nav-link{text-align:left}.hero h1{font-size:3.625rem}.hero-actions{gap:5px 14px}.hero-copy{padding-left:0}.hero-copy>p{font-size:1rem}.hero{min-height:500px}.flower h3{font-size:1.5rem;gap:7px}.visit-details>a{padding-inline:18px}.weddings{gap:28px}.wedding-copy h2{font-size:2.75rem}}
@media(max-width:600px){html{scroll-padding-top:18px}.wrap{width:calc(100% - 40px)}.site-header{min-height:86px;height:auto;flex-wrap:wrap;gap:8px 12px;padding-block:10px}.wordmark{padding:8px 0 10px}.wordmark>span{font-size:2.875rem;letter-spacing:-2px}.wordmark small{font-size:.5625rem;letter-spacing:1.5px;margin-top:7px}.menu-toggle{font-size:0}.menu-toggle svg{width:24px;height:24px}.header-shop.button{font-size:.875rem;min-height:44px;padding:10px 14px}.site-header nav{left:-20px;right:-20px;padding-inline:22px}.hero{display:flex;flex-direction:column;min-height:0;padding:28px 0 14px;gap:4px}.hero-copy{padding:0;text-align:center;width:100%}.hero h1{font-size:clamp(2.875rem,12.5vw,3.75rem);letter-spacing:-1.5px;margin:0 0 16px;line-height:.98}.hero-copy>p{font-size:1rem;line-height:1.5;max-width:345px;margin:0 auto 18px}.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.hero-actions .button{min-height:48px;font-size:.9375rem;padding:12px 10px}.hero-actions .text-link{justify-content:center;font-size:.9375rem;min-height:48px;text-align:center}.hero-art{width:min(82%,320px);margin:8px 0 0}.divider{font-size:1.125rem;gap:10px;line-height:1.3}.flowers{padding:32px 0 30px}.flowers h2{font-size:2.375rem;line-height:1.04;max-width:350px;margin:0 auto 21px;letter-spacing:-.6px}.flower-grid{display:flex;flex-direction:column;gap:0}.flower{display:grid;grid-template-columns:110px 1fr;align-items:center;gap:19px;padding:15px 0;border-bottom:1px solid #a5ad973e}.flower:first-child{padding-top:4px}.flower:last-child{border-bottom:0}.flower-image{height:130px}.flower h3{font-size:1.625rem;justify-content:space-between;gap:6px;margin:0}.flower h3 span{border-bottom:0;padding:0}.flower h3 svg{width:20px;height:20px}.flower-caption p{text-align:left;font-size:.875rem;line-height:1.5;margin:7px 0 0;max-width:170px}.weddings{padding:35px 0 38px;grid-template-columns:1fr;gap:25px}.wedding-photo img{aspect-ratio:1.2;object-position:50% 48%}.wedding-photo figcaption{font-size:1.125rem;margin-top:10px}.section-label{font-size:.75rem;letter-spacing:1.8px;margin-bottom:13px}.wedding-copy h2{font-size:2.875rem;line-height:1.03;margin-bottom:17px}.wedding-copy>p:not(.section-label){font-size:1rem;line-height:1.6;margin-bottom:21px}.wedding-copy .button{width:100%}.wedding-instagram{justify-content:center;font-size:.875rem;min-height:48px;margin-top:10px}.footer-inner{padding-top:31px}footer h2{font-size:2.125rem;line-height:1.08;max-width:300px;margin:0 auto 21px}.visit-details{flex-direction:column;gap:4px}.visit-details>a{padding:8px 0;font-size:1rem;justify-content:center;min-height:44px}.visit-details>a+a{border:0}.hours{font-size:.875rem;margin:15px 0 23px}.hours span{display:block;height:0;font-size:0}.footer-bottom{font-size:.75rem;justify-content:center;text-align:center;gap:3px;flex-direction:column;padding-bottom:0}dialog{padding:43px 24px 25px}dialog h2{font-size:3rem}dialog p:not(.story-date){font-size:1rem}.story-date{font-size:.8125rem}dialog .button{width:100%}}
@media(max-width:359px){.wrap{width:calc(100% - 32px)}.site-header{gap:6px}.hero h1{font-size:2.75rem}.hero-copy>p{font-size:.9375rem}.hero-actions{gap:8px}.hero-actions .button,.hero-actions .text-link{font-size:.875rem}.hero-art{width:86%}.flower{grid-template-columns:93px 1fr;gap:14px}.flower h3{font-size:1.5rem}.flower-image{height:120px}.wedding-copy h2{font-size:2.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
