@import "https://fonts.googleapis.com/css2?family=Courier+Prime:wght@400;700&family=Figtree:wght@400;500;600;700;800&family=Fraunces:opsz,SOFT,wght@9..144,100,800&display=swap";:root{--brand:#3a505f;--dot:#fed276;--ink:#263c4c;--paper:#f3f6f8;--line:#cbd5dd;--muted:#475e70;--surface:#dce7ef;--surface-soft:#e8eff4}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--brand);margin:0;font-family:Figtree,sans-serif;font-size:16px;line-height:1.55}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}button,.button{cursor:pointer;background:var(--brand);color:#fff;border:0;padding:12px 20px;font-weight:700;text-decoration:none;display:inline-block}button:disabled{opacity:.45;cursor:not-allowed}input,select,textarea{color:var(--ink);background:#fff;border:1px solid #9daaa8;border-radius:0;width:100%;max-width:100%;padding:10px}textarea{resize:vertical;min-height:80px}label{gap:5px;font-weight:700;display:grid}label span{font-weight:400}:is(a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible){outline-offset:3px;outline:3px solid #d49c27}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4,.nav-logo,.footer-logo{font-variation-settings:"SOFT" 100;font-family:Fraunces,Georgia,serif;font-weight:800;line-height:1.02}h1,h2{letter-spacing:-.035em}.dot,.nav-logo span,.footer-logo span{color:var(--dot)}.nav{background:var(--paper);justify-content:space-between;align-items:center;gap:24px;min-height:76px;padding:14px max(5vw,24px);display:flex}.nav-logo,.footer-logo{white-space:nowrap;font-size:31px;text-decoration:none}.nav-links{align-items:center;gap:28px;font-size:14px;font-weight:700;display:flex}.nav-links a{text-decoration:none}.announcement{background:var(--dot);text-align:center;padding:10px 20px;font-weight:700}.hero{background:var(--brand);color:#fff;position:relative;overflow:hidden}.hero-inner{max-width:1320px;margin:auto;padding:clamp(52px,8vw,115px) max(5vw,24px) 0}.hero-kicker,.eyebrow{letter-spacing:.14em;font-size:12px;font-weight:800}.hero-kicker{color:var(--dot);margin-bottom:28px}.hero-logo{z-index:1;width:min(92%,1000px);height:auto;margin-left:-1%;display:block;position:relative}.hero-bottom{justify-content:space-between;align-items:end;gap:25px;margin:28px 0 70px;display:flex}.hero-bottom p{max-width:500px;margin:0;font-size:clamp(19px,2.1vw,28px)}.status-chip{background:var(--dot);color:var(--brand);white-space:normal;border-radius:50px;align-items:center;gap:9px;max-width:100%;padding:12px 18px;font-weight:800;text-decoration:none;display:inline-flex}.status-chip span{background:var(--brand);border-radius:50%;flex-shrink:0;width:8px;height:8px}.hero-strip{letter-spacing:.15em;border-top:1px solid #fff5;justify-content:space-between;gap:20px;padding:20px 0;font-size:11px;font-weight:800;display:flex}.hero-ring{border:2px dashed var(--dot);text-align:center;width:155px;height:155px;color:var(--dot);letter-spacing:.12em;border-radius:50%;place-content:center;font-size:11px;font-weight:800;display:grid;position:absolute;top:55px;right:-22px;transform:rotate(13deg)}.section{max-width:1320px;margin:auto;padding:120px max(5vw,24px)}.intro,.moments{grid-template-columns:.9fr 1.1fr;gap:clamp(50px,9vw,150px);display:grid}.section h1,.section h2,.flower-band h2,.visit h2,.inner-page h1{margin-bottom:26px;font-size:clamp(48px,6.5vw,96px)}.eyebrow{margin-bottom:22px}.lead{max-width:570px;font-size:clamp(19px,2vw,25px);line-height:1.45}.text-link{margin-top:20px;font-weight:800;display:inline-block}.section-heading{border-bottom:2px solid var(--brand);justify-content:space-between;align-items:baseline;gap:15px;padding-bottom:16px;display:flex}.section-heading h2,.section-heading h3{margin:0;font-size:32px}.section-heading span{font-size:12px;font-weight:700}.menu-note,.shop-notice{background:#eeeadd;padding:12px 15px;font-size:14px}.filters{gap:12px;margin:20px 0;display:flex}.filters label{flex:1;font-size:12px}.menu-item,.flower-item{border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;padding:20px 0;display:flex}.menu-item h3,.flower-item h4{margin:0 0 6px;font-size:22px}.menu-item p,.flower-item p{color:var(--muted);margin:0;font-size:14px}.menu-item small,.flower-item small{font-size:12px}.menu-item strong{white-space:nowrap}.flower-band{background:var(--dot);overflow:hidden}.flower-layout{grid-template-columns:1fr 1fr;gap:clamp(40px,8vw,130px);max-width:1320px;margin:auto;padding:110px max(5vw,24px);display:grid}.flower-band h2 span{color:#fff}.flower-art{width:100%;max-width:400px;height:auto;margin:20px auto -80px;display:block}.flower-shop{align-self:start}.flower-shop .shop-notice{background:#fff5d9}.flower-item{border-color:#ad9d70}.flower-item img{object-fit:cover;width:88px;height:88px}.flower-item>div:first-of-type{flex:1}.flower-item p{color:var(--muted)}.flower-action{flex-direction:column;align-items:end;gap:12px;display:flex}.flower-action button{padding:8px 17px}.cart{padding-top:32px}.cart h3{font-size:30px}.cart-line{border-bottom:1px solid #b7a578;justify-content:space-between;gap:15px;padding:10px 0;display:flex}.cart-line button{padding:2px 10px}.total{font-size:20px}.checkout{gap:13px;margin-top:25px;display:grid}.checkout h4{margin:0;font-size:25px}.checkout p{margin:0;font-size:13px}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.gallery{grid-template-columns:1fr 1fr;align-content:start;gap:12px;display:grid}.gallery figure{margin:0}.gallery img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.gallery figcaption{margin-top:7px;font-size:13px}.gallery-empty{background:var(--surface-soft);text-align:center;grid-column:1/-1;place-content:center;min-height:380px;display:grid;overflow:hidden}.gallery-empty .flower-art{width:220px;margin:-60px auto -30px}.gallery-empty p{font-weight:700}.visit{background:var(--surface)}.visit-inner{grid-template-columns:1fr .8fr;align-items:center;gap:80px;max-width:1320px;margin:auto;padding:120px max(5vw,24px);display:grid}.visit-links{flex-wrap:wrap;gap:20px;font-weight:800;display:flex}.receipt{color:var(--brand);background:#fffdf4;padding:45px;font-family:Courier Prime,monospace;transform:rotate(2deg);box-shadow:5px 10px #3a505f16}.receipt-top{text-align:center;font-size:13px;font-weight:700}.receipt h3{text-align:center;border-top:1px dashed;padding-top:24px;font:700 25px Courier Prime,monospace}.receipt-hours{border-bottom:1px dashed;padding-bottom:20px}.receipt-hours div{justify-content:space-between;gap:15px;padding:3px;display:flex}.receipt-hours .today{background:var(--dot);font-weight:700}.receipt-status{margin:22px 0 5px;font-weight:700}.receipt small,.special{font-size:12px}.extras{grid-template-columns:1fr 1fr;gap:90px;display:grid}.extras h2{font-size:48px}.extras blockquote{border-bottom:1px solid var(--line);margin:25px 0;padding-bottom:20px}.extras blockquote footer{font-size:13px}.extras details{border-bottom:1px solid var(--line);padding:18px 0}.extras summary{cursor:pointer;font-weight:800}.review-link{text-align:center;padding:20px max(5vw,24px)}.footer{background:var(--brand);color:#fff;grid-template-columns:1fr 1fr;gap:30px;padding:60px max(5vw,24px) 30px;display:grid}.footer-logo{font-size:42px}.footer p{margin-top:16px}.footer-links{flex-wrap:wrap;place-content:start end;gap:20px;font-size:14px;display:flex}.footer small{border-top:1px solid #fff5;grid-column:1/-1;padding-top:20px}.inner-page{max-width:1000px;min-height:65vh;margin:auto;padding:100px max(5vw,24px) 120px}.inner-page h1{font-size:clamp(54px,7vw,92px)}.panel{background:#fff;border:1px solid #d7dfdc;margin-top:24px;padding:30px}.panel h2{font-size:32px}.rewards-grid{grid-template-columns:1.3fr 1fr;gap:20px;margin-top:35px;display:grid}.rewards-grid .panel{margin:0}.loyalty-card{background:var(--brand);color:#fff;min-height:300px;padding:35px}.loyalty-card>p:first-child{color:var(--dot);letter-spacing:.12em;font-size:12px;font-weight:800}.loyalty-card h2{font-size:40px}.stamp-row{flex-wrap:wrap;gap:7px;margin:32px 0;display:flex}.stamp-row span{color:#fff5;border:1px dashed #fff8;border-radius:50%;place-items:center;width:36px;height:36px;display:grid}.stamp-row span.filled{background:var(--dot);color:var(--brand);border-color:var(--dot)}.qr{width:190px;height:190px}.card-code{overflow-wrap:anywhere;font:12px Courier Prime,monospace}.activity,.order-heading{border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;padding:15px 0;display:flex}.activity p{margin:0}.order-heading h2{margin:5px 0}.prose{max-width:800px}.prose h2{margin-top:40px;font-size:32px}.loading{text-align:center;place-content:center;min-height:60vh;padding:50px;display:grid}@media (max-width:800px){.hero-ring{width:105px;height:105px;font-size:9px;top:25px}.hero-bottom{flex-direction:column;align-items:start;margin-bottom:45px}.intro,.moments,.flower-layout,.visit-inner,.extras{grid-template-columns:1fr;gap:45px}.section,.flower-layout,.visit-inner{padding-top:75px;padding-bottom:75px}.flower-art{max-width:260px;margin-bottom:-20px}.visit-inner{gap:65px}.receipt{justify-self:center;width:100%;max-width:470px}.rewards-grid,.footer{grid-template-columns:1fr}.footer-links{justify-content:start}.footer small{grid-column:auto}}@media (max-width:480px){.hero-strip{letter-spacing:.08em;font-size:9px}.hero-logo{width:100%}.hero-ring{opacity:.6}.receipt{padding:30px 22px}.section-heading{flex-direction:column;align-items:start}.gallery{grid-template-columns:1fr}.gallery-empty{min-height:300px}.flower-item img{width:60px;height:60px}.form-row{grid-template-columns:1fr}.inner-page{padding-top:65px}.footer-links{gap:15px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.nav-toggle{display:none}.nav-user{overflow-wrap:anywhere;max-width:10rem}.nav-signout{white-space:nowrap}@media (max-width:1300px){.nav{z-index:100;min-height:68px;padding:calc(10px + env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) 10px max(20px, env(safe-area-inset-left));grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 1rem;display:grid;position:sticky;top:0}.nav-toggle{background:var(--brand);color:#fff;justify-content:center;align-items:center;gap:.7rem;min-width:94px;min-height:44px;padding:.65rem .9rem;display:inline-flex}.nav-toggle span{font-size:1.2rem;line-height:1}.nav-links{display:none}.nav-links.is-open{width:100%;max-height:calc(100vh - 68px - env(safe-area-inset-top));max-height:calc(100dvh - 68px - env(safe-area-inset-top));overscroll-behavior:contain;white-space:normal;flex-direction:column;grid-column:1/-1;align-items:stretch;gap:0;padding:.75rem 8px;display:flex;overflow-y:auto}.nav-links.is-open a,.nav-links.is-open .nav-signout{border-bottom:1px solid var(--line);text-align:left;align-items:center;min-height:44px;padding:.65rem .2rem;display:flex}.nav-links.is-open .nav-signout{color:var(--brand);background:0 0;width:100%}.nav-links.is-open .nav-user{max-width:none;color:var(--muted);padding:.8rem .2rem .2rem}#coffee,#flowers,#hours{scroll-margin-top:calc(76px + env(safe-area-inset-top))}}@media (max-width:600px){.flower-layout{gap:22px}.flower-layout>div:first-child>.flower-art{display:none}.flower-layout>div:first-child h2{margin-bottom:16px}.flower-layout>div:first-child>p:last-of-type{margin-bottom:0}.section,.flower-layout,.visit-inner,.inner-page{padding-left:20px;padding-right:20px}.section h1,.section h2,.flower-band h2,.visit h2,.inner-page h1{overflow-wrap:anywhere;font-size:clamp(40px,11vw,54px)}.menu-item,.cart-line,.activity,.order-heading{gap:.75rem}.menu-item>*,.cart-line>*,.activity>*,.order-heading>*{overflow-wrap:anywhere;min-width:0}.flower-item{grid-template-columns:minmax(0,1fr);gap:.75rem;display:grid}.flower-item:has(img){grid-template-columns:64px minmax(0,1fr)}.flower-item img{width:64px;height:64px}.flower-item>div{overflow-wrap:anywhere;min-width:0}.flower-item:has(img) .flower-action{grid-column:2}.flower-action{flex-flow:wrap;justify-content:space-between;align-items:center}.flower-action a,.flower-action button,.cart-line button{min-height:44px}.flower-action a{align-items:center;display:inline-flex}.cart-line button{min-width:44px}.panel,.loyalty-card{overflow-wrap:anywhere;min-width:0;padding:22px}.qr{max-width:100%;height:auto}.receipt{overflow-wrap:anywhere;padding:26px 20px;transform:none}.receipt-hours div{gap:.5rem}.footer{padding-left:20px;padding-right:20px;padding-bottom:max(30px, env(safe-area-inset-bottom))}.footer-links a{align-items:center;min-height:44px;display:inline-flex}input,select,textarea{font-size:16px}button,.button,input:not([type=checkbox]):not([type=radio]),select{min-height:44px}}
