[hidden]{display:none!important}
.opening{display:block}.hero-photo{object-position:var(--hero-desktop,50% 50%)}
.site-header nav{gap:22px}.site-header .secondary-extra{display:none}
.brand img{width:112px;height:48px;object-fit:contain}footer>a>img{width:100px;height:auto}.history-logo img{width:180px;height:auto}
.footer-links{display:flex;flex-wrap:wrap;gap:6px 20px;width:100%}footer{flex-wrap:wrap}
.news-list{min-width:0}.news-list .news-row{border-bottom:1px solid var(--line);padding:20px 0}.news-list .news-row:last-child{border:0}
.news-list .news-row>span{display:block}.news-list .news-row h3{font-size:17px}.news .section-heading>a{font-size:14px;display:inline-flex;align-items:center;min-height:44px}
.prose{max-width:860px;overflow-wrap:anywhere}.prose h2{font-size:28px;margin:64px 0 24px}.prose h2:first-child{margin-top:0}.prose h3{font-size:23px;line-height:1.8}.prose p,.prose li{line-height:2.2}.prose ul,.prose ol{padding-left:1.4em}.prose li{margin:12px 0}.prose a:not(.text-link){text-decoration:underline;text-underline-offset:4px}.prose img{height:auto;max-height:800px;width:auto;margin:24px auto}.prose iframe{width:100%;height:420px;border:0}.prose figure{margin:24px 0}.prose table{border-collapse:collapse;width:100%;font-size:16px}.prose td,.prose th{padding:16px;border:1px solid var(--line);line-height:1.9;vertical-align:top}.prose .body{white-space:normal}.article-date{font-size:15px;color:var(--muted);margin-top:34px}.past-notice{font-size:14px;line-height:2;padding:22px;background:#f0ede5;margin-top:44px}.past-notice a{display:block}.shop-photo img{width:100%;max-height:480px;object-fit:cover;margin:0 0 48px}
.gallery-page .materials-grid a{display:block}.gallery-page .materials-grid a span{display:flex;justify-content:space-between;flex-wrap:wrap}.gallery-page .season-grid a{display:block}.gallery-page .work-card a{display:block}.gallery-page .work-card img,.gallery-page .season-grid img,.gallery-page .materials-grid img{height:auto;width:100%}.gallery-page .angles img{width:72px;height:72px;object-fit:cover}
.gallery-page #detail-image{height:auto;width:auto;max-width:100%;max-height:70dvh}.gallery-page #detail-angles{display:flex;gap:8px}.gallery-page #detail-angles button{margin:16px 0 0;padding:4px;min-width:48px}
@media(max-width:1000px) and (min-width:701px){.site-header{padding:18px 3%;gap:18px}.site-header nav{gap:14px;font-size:13px}.site-header nav .nav-hours{padding:10px}}
@media(max-width:700px){.brand img{width:82px;height:40px}.hero-photo{object-position:var(--hero-mobile,50% 50%)}.site-header .secondary-extra{display:flex}.prose h2{font-size:25px;margin-top:44px}.prose table{font-size:14px}.prose td,.prose th{padding:12px}.prose iframe{height:330px}.gallery-page #detail-image{max-height:60dvh}.news-list .news-row{grid-template-columns:1fr auto}.news-list .news-row time{grid-column:1/-1}.news-list .news-row h3{font-size:16px}.prose{width:88%}footer{gap:24px}}

/* Keep homepage photographs proportional; frames must not inherit pixel heights from img attributes. */
.opening .hero{width:100%;height:auto;aspect-ratio:16/9;max-height:760px}
.opening .hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.story-photo img,.shop-section>img{width:100%;height:auto;aspect-ratio:auto var(--photo-ratio,4/3);max-height:none}
.entry-grid{align-items:start}
.entry-grid img{display:block;width:100%;height:auto;aspect-ratio:auto var(--photo-ratio,4/3);max-height:none;padding:0;background:transparent}
@media(max-width:700px){
 .opening .hero{height:auto;aspect-ratio:4/3;max-height:none}
 .story{display:flex;flex-direction:column;gap:32px}
 .story-photo{width:100%;padding:0}
 .story-copy{width:100%;padding:0}
 .shop-section{grid-template-columns:1fr;gap:32px}
}

/* Search stays secondary to flowers, orders and opening days. */
.search-section{max-width:880px;min-height:45vh}
.search-section label{display:block;margin-bottom:10px}
.search-input-row{display:flex;gap:12px}
.search-input-row input{min-width:0;flex:1;border:1px solid #96978c;background:#fff;padding:13px 16px;font-family:inherit;font-size:18px;line-height:1.5;border-radius:2px;color:#30332d}
.search-input-row button{flex-shrink:0;background:#353d32;color:#fff;padding:12px 24px;min-height:48px;border:1px solid #353d32}
#search-help,.search-result-kind{font-size:14px;color:#606456}
.search-suggestions{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 32px}
.search-suggestions button{padding:10px 18px;border:1px solid #b5b6ac;min-height:44px;border-radius:2px}
.search-result{padding:24px 0;border-bottom:1px solid #d7d8ce;overflow-wrap:anywhere}
.search-result h2{font-size:23px;font-weight:400;line-height:1.7;margin:8px 0}
.search-result h2 a{text-decoration:underline;text-underline-offset:5px}
.search-result p{margin:6px 0;line-height:1.9}
.search-destinations{display:flex;gap:12px 24px;flex-wrap:wrap;border-top:1px solid #d7d8ce;margin-top:40px;padding-top:24px}
.search-destinations a{padding:8px 0;text-decoration:underline;text-underline-offset:4px}
#search-status{overflow-wrap:anywhere}
.work-card[id]{scroll-margin-top:160px}
@media(max-width:700px){.search-input-row{gap:8px}.search-input-row input{width:100%;font-size:16px;padding:12px}.search-input-row button{padding:12px 16px}.search-result h2{font-size:21px}}
