/* Willow & Main: an editorial, store-first boutique. All rules are template-scoped. */
.template-site--boutique-retail {
    --br-paper: #f5f1e9;
    --br-ink: #282523;
    --br-wine: #6b2f3a;
    --br-olive: #62624e;
    --br-rule: #c8c1b5;
    --br-muted: #625c55;
    color: var(--br-ink);
    background: var(--br-paper);
    font-family: Arial, Helvetica, sans-serif;
    font-size: 16px;
    line-height: 1.7;
    overflow-wrap: break-word;
    --tw-accent: var(--br-wine);
    --tw-bg: var(--br-paper);
}
.template-site--boutique-retail * { box-sizing: border-box; }
.template-site--boutique-retail :is(h1,h2,h3,p,figure) { margin: 0; }
.template-site--boutique-retail :is(h1,h2,h3) { color: inherit; font-family: Georgia, 'Times New Roman', serif; font-weight: 400; letter-spacing: -.045em; line-height: 1.08; text-wrap: balance; }
.template-site--boutique-retail h1 { font-size: clamp(3rem, 6.6vw, 6.6rem); }
.template-site--boutique-retail h2 { font-size: clamp(2rem, 3.8vw, 3.65rem); }
.template-site--boutique-retail h3 { font-size: clamp(1.6rem, 2.15vw, 2rem); }
.template-site--boutique-retail em { font-weight: 400; }
.template-site--boutique-retail a { color: inherit; }
.template-site--boutique-retail img { display: block; max-width: 100%; width: 100%; object-fit: cover; }
.template-site--boutique-retail :is(a,button,summary,input,textarea,select):focus-visible { outline: 3px solid var(--br-wine); outline-offset: 5px; }
.template-site--boutique-retail :is(button,summary,a) { -webkit-tap-highlight-color: #d5c5c6; }
.template-site--boutique-retail .br-eyebrow { display: block; font: 600 .67rem/1.6 Arial, Helvetica, sans-serif; text-transform: uppercase; letter-spacing: .16em; }
.template-site--boutique-retail :is(.br-button,.br-text-link,.br-visit-link) { display: inline-flex; align-items: center; justify-content: space-between; gap: 1.8rem; min-height: 44px; font: 600 .75rem/1.4 Arial, Helvetica, sans-serif; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.template-site--boutique-retail .br-button { padding: 1.05rem 1.4rem; background: var(--br-wine); border: 1px solid var(--br-wine); color: #fffaf1; }
.template-site--boutique-retail .br-button:hover { background: #51222b; }
.template-site--boutique-retail .br-text-link { border-bottom: 1px solid currentColor; }
.template-site--boutique-retail .br-text-link:hover { color: var(--br-wine); }
.template-site--boutique-retail .br-masthead { margin: 0; padding: 0 clamp(1.2rem, 5vw, 5rem); background: var(--br-paper); border-bottom: 1px solid var(--br-ink); }
.template-site--boutique-retail .br-utility { display: flex; justify-content: space-between; gap: 1rem; border-bottom: 1px solid var(--br-rule); padding: .65rem 0; font-size: .65rem; text-transform: uppercase; letter-spacing: .1em; }
.template-site--boutique-retail .br-utility a { text-decoration: none; }
.template-site--boutique-retail .br-brand-row { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 1.5rem; padding: 2rem 0 1.7rem; }
.template-site--boutique-retail .br-brand-note { font: italic .95rem/1.35 Georgia, serif; }
.template-site--boutique-retail .br-brand { text-align: center; text-decoration: none; }
.template-site--boutique-retail .br-brand strong { display: block; font: 400 clamp(2rem, 3.7vw, 3.6rem)/1.05 Georgia, serif; letter-spacing: -.05em; }
.template-site--boutique-retail .br-brand i { color: var(--br-wine); font-weight: 400; }
.template-site--boutique-retail .br-brand > span { display: block; margin-top: .6rem; font-size: .57rem; letter-spacing: .24em; text-transform: uppercase; }
.template-site--boutique-retail .br-visit-link { justify-self: end; color: var(--br-wine); border-bottom: 1px solid var(--br-wine); }
.template-site--boutique-retail .br-desktop-nav { display: flex; justify-content: center; flex-wrap: wrap; gap: clamp(1.3rem, 4vw, 4rem); }
.template-site--boutique-retail .br-desktop-nav a { padding: .7rem .1rem .85rem; font-size: .7rem; text-transform: uppercase; letter-spacing: .13em; text-decoration: none; border-bottom: 3px solid transparent; }
.template-site--boutique-retail .br-desktop-nav a:is(:hover,[aria-current='page']) { border-color: var(--br-wine); color: var(--br-wine); }
.template-site--boutique-retail .br-mobile-menu { display: none; }
.template-site--boutique-retail .br-hero { display: grid; grid-template-columns: 1fr 1.08fr; align-items: center; gap: clamp(2rem, 5vw, 5.5rem); padding: clamp(2rem, 5vw, 5rem) clamp(1.2rem, 5vw, 5rem) 3.5rem; }
.template-site--boutique-retail .br-hero-copy { padding: 1rem 0; }
.template-site--boutique-retail .br-hero h1 { margin: 1.5rem 0 1.8rem; font-size: clamp(3.7rem, 7.3vw, 7.5rem); }
.template-site--boutique-retail .br-hero h1 em { color: var(--br-wine); }
.template-site--boutique-retail .br-hero-copy p { max-width: 26rem; color: var(--br-muted); font-size: .98rem; margin-bottom: 2rem; }
.template-site--boutique-retail .br-hero-footnote { display: block; margin-top: 3rem; font-size: .61rem; text-transform: uppercase; letter-spacing: .1em; color: var(--br-muted); }
.template-site--boutique-retail .br-hero-art { position: relative; padding: 0 0 0 1.3rem; border-left: 1px solid var(--br-rule); }
.template-site--boutique-retail .br-hero-art img { aspect-ratio: 6/7; height: auto; }
.template-site--boutique-retail figcaption { color: var(--br-muted); font-size: .66rem; line-height: 1.6; }
.template-site--boutique-retail .br-hero-art figcaption { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .3rem 1rem; padding-top: .8rem; text-transform: uppercase; letter-spacing: .055em; }
.template-site--boutique-retail .br-art-stamp { position: absolute; bottom: 13%; left: -2rem; display: grid; place-content: center; width: 7.5rem; height: 7.5rem; background: var(--br-wine); color: var(--br-paper); border-radius: 50%; text-align: center; font: italic 1.2rem/1.25 Georgia, serif; transform: rotate(-9deg); border: 5px solid var(--br-paper); }
.template-site--boutique-retail .br-section { padding: clamp(3rem, 6vw, 6rem) clamp(1.2rem, 5vw, 5rem); }
.template-site--boutique-retail .br-section-heading { display: flex; justify-content: space-between; align-items: end; gap: 1.5rem; padding-top: 1.2rem; border-top: 1px solid var(--br-ink); margin-bottom: 2.5rem; }
.template-site--boutique-retail .br-section-heading h2 { margin-top: .8rem; }
.template-site--boutique-retail .br-section-heading > a { flex-shrink: 0; }
.template-site--boutique-retail .br-editorial-grid { display: grid; grid-template-columns: 1.35fr 1fr 1fr; align-items: start; gap: 2rem; }
.template-site--boutique-retail .br-collection { display: block; min-width: 0; text-decoration: none; }
.template-site--boutique-retail .br-image-wrap { overflow: hidden; position: relative; background: #e6dfd2; }
.template-site--boutique-retail .br-image-wrap img { height: auto; aspect-ratio: 8/9; transition: transform .3s ease; }
.template-site--boutique-retail .br-collection:hover img { transform: scale(1.025); }
.template-site--boutique-retail .br-collection-large .br-image-wrap img { aspect-ratio: 6/7; }
.template-site--boutique-retail .br-collection-offset { margin-top: 5rem; }
.template-site--boutique-retail .br-card-caption { display: flex; align-items: center; justify-content: space-between; gap: .8rem; margin-top: 1rem; }
.template-site--boutique-retail .br-card-caption h3 { margin-top: .3rem; }
.template-site--boutique-retail .br-card-caption > span[aria-hidden] { font-size: 1.5rem; }
.template-site--boutique-retail :is(.br-collection,.br-product) > p { color: var(--br-muted); margin-top: .65rem; font-size: .85rem; }
.template-site--boutique-retail .br-demo-caption { color: var(--br-muted); font-size: .72rem; line-height: 1.7; margin-top: 2rem; max-width: 55rem; }
.template-site--boutique-retail .br-shop-note { display: grid; grid-template-columns: .35fr 1.1fr 1fr; align-items: start; gap: clamp(1.5rem, 4vw, 4rem); padding: clamp(3rem, 5vw, 5rem); background: #e6e2d7; }
.template-site--boutique-retail .br-note-number { font: italic 1.8rem/1.1 Georgia, serif; color: var(--br-wine); border-top: 1px solid var(--br-rule); padding-top: .8rem; }
.template-site--boutique-retail .br-shop-note h2 { margin-top: .9rem; }
.template-site--boutique-retail .br-shop-note p { font-size: .92rem; margin-bottom: 1rem; }
.template-site--boutique-retail .br-visit { display: grid; grid-template-columns: 1.7fr 1fr; gap: clamp(2rem, 8vw, 8rem); padding: clamp(3rem, 6vw, 6rem) clamp(1.2rem, 5vw, 5rem); }
.template-site--boutique-retail .br-visit h2 { margin: .8rem 0 1.5rem; }
.template-site--boutique-retail .br-visit p { max-width: 35rem; margin-bottom: 1.6rem; color: var(--br-muted); }
.template-site--boutique-retail .br-visit aside { padding-left: 2rem; border-left: 1px solid var(--br-rule); align-self: center; }
.template-site--boutique-retail .br-visit h3 { margin: .8rem 0 1rem; }
.template-site--boutique-retail .br-visit small { display: block; font-size: .68rem; color: var(--br-muted); margin-top: 1.2rem; }
.template-site--boutique-retail .br-page-heading { padding: clamp(3rem, 6vw, 6rem) clamp(1.2rem, 5vw, 5rem) 3rem; border-bottom: 1px solid var(--br-rule); }
.template-site--boutique-retail .br-page-heading h1 { max-width: 15ch; margin: 1.1rem 0 1.6rem; }
.template-site--boutique-retail .br-page-heading p { max-width: 40rem; color: var(--br-muted); }
.template-site--boutique-retail .br-story { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 7vw, 7rem); align-items: center; }
.template-site--boutique-retail .br-story img { aspect-ratio: 8/9; height: auto; }
.template-site--boutique-retail .br-story figcaption { margin-top: .7rem; }
.template-site--boutique-retail .br-story h2 { margin: 1rem 0 1.5rem; }
.template-site--boutique-retail .br-story p { margin-bottom: 1rem; }
.template-site--boutique-retail .br-story .br-text-link { margin-top: .7rem; }
.template-site--boutique-retail .br-principles { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 2.5rem; border-top: 1px solid var(--br-rule); padding-top: 2.5rem; }
.template-site--boutique-retail .br-principles h2 { font-size: 2rem; margin: 1rem 0; }
.template-site--boutique-retail .br-principles p { font-size: .9rem; color: var(--br-muted); }
.template-site--boutique-retail .br-filter-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.template-site--boutique-retail .br-filters { display: flex; flex-wrap: wrap; gap: .5rem; border-top: 1px solid var(--br-rule); margin-top: 1.5rem; padding-top: 1rem; }
.template-site--boutique-retail .br-filters button { min-height: 44px; border: 1px solid var(--br-rule); background: transparent; color: var(--br-ink); padding: .6rem 1.3rem; font: 600 .72rem/1.5 Arial,sans-serif; text-transform: uppercase; letter-spacing: .08em; cursor: pointer; border-radius: 0; }
.template-site--boutique-retail .br-filters button[aria-pressed='true'] { background: var(--br-ink); border-color: var(--br-ink); color: var(--br-paper); }
.template-site--boutique-retail .br-filters button:hover { border-color: var(--br-wine); }
.template-site--boutique-retail .br-results { font-size: .7rem; color: var(--br-muted); margin: 1.1rem 0 1.6rem; }
.template-site--boutique-retail .br-product-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 3rem 2rem; }
.template-site--boutique-retail .br-product { scroll-margin-top: 2rem; }
.template-site--boutique-retail .br-product h3 { font-size: 1.65rem; }
.template-site--boutique-retail .br-product-tag { position: absolute; top: .8rem; left: .8rem; background: var(--br-paper); padding: .35rem .6rem; font-size: .58rem; text-transform: uppercase; letter-spacing: .13em; }
.template-site--boutique-retail .br-product .br-text-link { font-size: .64rem; margin-top: .7rem; }
.template-site--boutique-retail .br-lookbook { display: grid; grid-template-columns: 1.15fr 1fr; align-items: start; gap: 3rem 4rem; }
.template-site--boutique-retail .br-lookbook-tall { grid-row: span 2; }
.template-site--boutique-retail .br-lookbook img { aspect-ratio: 8/9; height: auto; }
.template-site--boutique-retail .br-lookbook-tall img { aspect-ratio: 6/8; }
.template-site--boutique-retail .br-lookbook figcaption { margin-top: .9rem; }
.template-site--boutique-retail .br-lookbook figcaption span { text-transform: uppercase; letter-spacing: .1em; font-size: .65rem; }
.template-site--boutique-retail .br-lookbook figcaption p { margin-top: .4rem; font-size: .85rem; max-width: 28rem; }
.template-site--boutique-retail .br-lookbook-note { border-top: 1px solid var(--br-ink); padding-top: 1.5rem; }
.template-site--boutique-retail .br-lookbook-note h2 { font-size: clamp(2.5rem, 5vw, 4.5rem); margin: 1rem 0 1.5rem; }
.template-site--boutique-retail .br-lookbook-note p { max-width: 26rem; margin-bottom: 1rem; color: var(--br-muted); }
.template-site--boutique-retail .br-lookbook-wide { grid-column: 1/-1; display: grid; grid-template-columns: 1.5fr 1fr; gap: 2rem; align-items: end; }
.template-site--boutique-retail .br-lookbook-wide img { aspect-ratio: 3/2; object-position: center 58%; }
.template-site--boutique-retail .br-shopping-notes { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 8vw, 8rem); }
.template-site--boutique-retail .br-honest-note { background: #e6e2d7; padding: clamp(1.5rem, 4vw, 3.5rem); }
.template-site--boutique-retail .br-honest-note h2 { margin: 1rem 0 1.5rem; }
.template-site--boutique-retail .br-honest-note p { font-size: .9rem; margin-bottom: 1.2rem; }
.template-site--boutique-retail .br-faq h2 { margin: .8rem 0 1.8rem; font-size: 2rem; }
.template-site--boutique-retail .br-faq details { border-top: 1px solid var(--br-rule); }
.template-site--boutique-retail .br-faq details:last-child { border-bottom: 1px solid var(--br-rule); }
.template-site--boutique-retail .br-faq summary { cursor: pointer; padding: 1rem .1rem; font-size: .9rem; }
.template-site--boutique-retail .br-faq details p { font-size: .86rem; color: var(--br-muted); padding: 0 .1rem 1.2rem; }
.template-site--boutique-retail .br-contact-details { display: grid; grid-template-columns: 1.25fr 1fr; gap: clamp(2rem, 8vw, 8rem); }
.template-site--boutique-retail .br-contact-details h2 { margin: .9rem 0 1.5rem; }
.template-site--boutique-retail .br-contact-details p { margin-bottom: 1.4rem; max-width: 33rem; }
.template-site--boutique-retail .br-contact-details small { display: block; color: var(--br-muted); font-size: .7rem; margin-top: .4rem; }
.template-site--boutique-retail .br-contact-details dl { margin: 1.3rem 0 0; }
.template-site--boutique-retail .br-contact-details dl > div { display: grid; grid-template-columns: 6rem 1fr; gap: 1rem; padding: 1rem 0; border-top: 1px solid var(--br-rule); }
.template-site--boutique-retail .br-contact-details dt { font-size: .65rem; letter-spacing: .08em; text-transform: uppercase; font-weight: 600; }
.template-site--boutique-retail .br-contact-details dd { margin: 0; font-size: .86rem; }
.template-site--boutique-retail .br-form-wrap { padding: 0 clamp(1.2rem, 5vw, 5rem) clamp(3rem, 6vw, 6rem); }
.template-site--boutique-retail .template-lead-panel { padding: clamp(1.5rem, 4vw, 4rem); background: #e6e2d7; border: 1px solid var(--br-rule); border-radius: 0; box-shadow: none; }
.template-site--boutique-retail .template-lead-panel h2 { margin: .8rem 0 1rem; }
.template-site--boutique-retail .template-lead-form :is(input,textarea,select) { background: var(--br-paper); border: 1px solid #8d8479; color: var(--br-ink); border-radius: 0; box-shadow: none; font: inherit; }
.template-site--boutique-retail .template-lead-form button { background: var(--br-wine); color: var(--br-paper); border-radius: 0; border: 1px solid var(--br-wine); min-height: 48px; box-shadow: none; }
.template-site--boutique-retail .template-site-bottom-cta { background: var(--br-wine); color: var(--br-paper); padding: clamp(2.5rem, 5vw, 5rem); border-radius: 0; text-align: center; }
.template-site--boutique-retail .template-site-bottom-cta h2 { max-width: 22ch; margin: .8rem auto 1.2rem; }
.template-site--boutique-retail .template-site-bottom-cta :is(p,.template-site-kicker) { color: inherit; }
.template-site--boutique-retail .template-site-bottom-cta .template-site-actions { margin-top: 1.5rem; }
.template-site--boutique-retail .template-site-bottom-cta .template-site-actions a { border: 1px solid var(--br-paper); color: var(--br-paper); background: transparent; border-radius: 0; box-shadow: none; }
.template-site--boutique-retail .template-site-bottom-cta .template-site-actions a:first-child { background: var(--br-paper); color: var(--br-wine); }
.template-site--boutique-retail .template-site-bottom-cta a:focus-visible { outline-color: var(--br-paper); }
.template-site--boutique-retail .template-site-footer { background: var(--br-paper); color: var(--br-ink); border-top: 1px solid var(--br-rule); padding: 2rem clamp(1.2rem, 5vw, 5rem); border-radius: 0; }
.template-site--boutique-retail .template-site-footer strong { font: 400 1.5rem/1.25 Georgia,serif; }
.template-site--boutique-retail .template-site-footer span { font-size: .65rem; letter-spacing: .06em; }
.template-site--boutique-retail .template-site-footer a { background: transparent; border-radius: 0; color: var(--br-ink); font-size: .72rem; padding: .4rem; min-height: 44px; display: inline-flex; align-items: center; }
@media (min-width: 1600px) {
    .template-site--boutique-retail .br-hero { grid-template-columns: 1fr 1fr; }
    .template-site--boutique-retail .br-hero-art img { max-height: 790px; }
}
@media (max-width: 1000px) {
    .template-site--boutique-retail .br-editorial-grid { gap: 1.2rem; grid-template-columns: 1.15fr 1fr 1fr; }
    .template-site--boutique-retail .br-shop-note { grid-template-columns: 1fr 1fr; }
    .template-site--boutique-retail .br-note-number { grid-column: 1/-1; }
    .template-site--boutique-retail .br-product-grid { gap: 2.5rem 1.2rem; }
    .template-site--boutique-retail .br-lookbook { gap: 2rem; }
    .template-site--boutique-retail .br-hero h1 { font-size: clamp(3.7rem, 7.3vw, 6rem); }
}
@media (max-width: 760px) {
    .template-site--boutique-retail .br-utility { justify-content: center; text-align: center; }
    .template-site--boutique-retail .br-utility > span { display: none; }
    .template-site--boutique-retail .br-brand-row { grid-template-columns: 1fr; gap: 1rem; padding: 1.5rem 0 1rem; }
    .template-site--boutique-retail .br-brand-note { display: none; }
    .template-site--boutique-retail .br-visit-link { justify-self: center; min-height: 36px; font-size: .65rem; }
    .template-site--boutique-retail .br-brand strong { font-size: clamp(2.2rem, 8vw, 3rem); }
    .template-site--boutique-retail .br-desktop-nav { display: none; }
    .template-site--boutique-retail .br-mobile-menu { display: block; border-top: 1px solid var(--br-rule); }
    .template-site--boutique-retail .br-mobile-menu summary { padding: .85rem .1rem; cursor: pointer; font-size: .7rem; letter-spacing: .1em; text-transform: uppercase; }
    .template-site--boutique-retail .br-mobile-menu summary span { float: right; }
    .template-site--boutique-retail .br-mobile-menu nav { display: grid; grid-template-columns: 1fr 1fr; gap: .25rem 1rem; padding: .2rem 0 1rem; }
    .template-site--boutique-retail .br-mobile-menu nav a { min-height: 44px; display: flex; align-items: center; border-top: 1px solid var(--br-rule); text-decoration: none; font-size: .8rem; }
    .template-site--boutique-retail .br-mobile-menu nav a[aria-current='page'] { color: var(--br-wine); text-decoration: underline; text-underline-offset: .3rem; }
    .template-site--boutique-retail .br-hero { grid-template-columns: 1fr; gap: 1.5rem; padding-top: 2rem; }
    .template-site--boutique-retail .br-hero-copy { max-width: 35rem; }
    .template-site--boutique-retail .br-hero h1 { font-size: clamp(3.7rem, 13vw, 6rem); margin-top: 1rem; }
    .template-site--boutique-retail .br-hero-footnote { margin-top: 1.5rem; }
    .template-site--boutique-retail .br-hero-art { padding-left: 0; border: 0; }
    .template-site--boutique-retail .br-hero-art img { aspect-ratio: 1/1; object-position: center 45%; }
    .template-site--boutique-retail .br-art-stamp { left: auto; right: .75rem; bottom: 14%; width: 6.5rem; height: 6.5rem; font-size: 1rem; }
    .template-site--boutique-retail .br-section-heading { align-items: start; flex-direction: column; }
    .template-site--boutique-retail .br-editorial-grid { grid-template-columns: 1fr 1fr; gap: 2rem 1rem; }
    .template-site--boutique-retail .br-collection-large { grid-column: 1/-1; }
    .template-site--boutique-retail .br-collection-large .br-image-wrap img { aspect-ratio: 5/4; object-position: center 45%; }
    .template-site--boutique-retail .br-collection-offset { margin-top: 3rem; }
    .template-site--boutique-retail .br-shop-note { grid-template-columns: 1fr; padding: 3rem 1.2rem; }
    .template-site--boutique-retail :is(.br-visit,.br-story,.br-shopping-notes,.br-contact-details) { grid-template-columns: 1fr; gap: 2.5rem; }
    .template-site--boutique-retail .br-visit aside { border-left: 0; border-top: 1px solid var(--br-rule); padding: 1.5rem 0 0; }
    .template-site--boutique-retail .br-principles { grid-template-columns: 1fr; gap: 2rem; }
    .template-site--boutique-retail .br-principles article + article { padding-top: 1.5rem; border-top: 1px solid var(--br-rule); }
    .template-site--boutique-retail .br-filter-heading { align-items: start; flex-direction: column; }
    .template-site--boutique-retail .br-product-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .template-site--boutique-retail .br-lookbook { grid-template-columns: 1fr 1fr; gap: 2rem 1rem; }
    .template-site--boutique-retail .br-lookbook-tall { grid-row: auto; grid-column: 1/-1; }
    .template-site--boutique-retail .br-lookbook-tall img { aspect-ratio: 5/4; object-position: center 45%; }
    .template-site--boutique-retail .br-lookbook-note { align-self: center; }
    .template-site--boutique-retail .br-lookbook-note h2 { font-size: clamp(1.6rem, 5vw, 2.8rem); }
    .template-site--boutique-retail .br-lookbook-note p { font-size: .8rem; }
    .template-site--boutique-retail .br-lookbook-note a { font-size: .6rem; gap: .5rem; }
    .template-site--boutique-retail .br-lookbook-wide { grid-template-columns: 1fr; gap: .5rem; }
}
@media (max-width: 440px) {
    .template-site--boutique-retail .br-editorial-grid { grid-template-columns: 1fr; }
    .template-site--boutique-retail .br-collection-large { grid-column: auto; }
    .template-site--boutique-retail .br-collection-offset { margin-top: 0; }
    .template-site--boutique-retail .br-collection .br-image-wrap img { aspect-ratio: 5/4; }
    .template-site--boutique-retail .br-product-grid { grid-template-columns: 1fr; }
    .template-site--boutique-retail .br-filters button { flex: 1 1 calc(50% - .5rem); }
    .template-site--boutique-retail .br-lookbook { grid-template-columns: 1fr; }
    .template-site--boutique-retail .br-lookbook-tall { grid-column: auto; }
    .template-site--boutique-retail .br-lookbook-note h2 { font-size: 2.5rem; }
    .template-site--boutique-retail .br-lookbook-wide { grid-column: auto; }
    .template-site--boutique-retail .br-contact-details dl > div { grid-template-columns: 1fr; gap: .3rem; }
    .template-site--boutique-retail .br-button { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
    .template-site--boutique-retail *, .template-site--boutique-retail *::before, .template-site--boutique-retail *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
/* Shared shell and inquiry panel inherit the boutique's paper-and-ink palette. */
.template-site--boutique-retail {
    --tw-primary: var(--br-ink);
    --tw-ink: var(--br-ink);
    --tw-muted: var(--br-muted);
    --tw-surface: var(--br-paper);
    --tw-soft: #e6e2d7;
    --tw-border: var(--br-rule);
    --tw-heading: Georgia, 'Times New Roman', serif;
    --tw-body: Arial, Helvetica, sans-serif;
    --tw-radius: 0px;
    --tw-shadow: none;
}
.template-site--boutique-retail .template-site-kicker { color: var(--br-wine); }
.template-site--boutique-retail .template-lead-panel { grid-template-columns: minmax(0,.85fr) minmax(0,1fr); color: var(--br-ink); }
.template-site--boutique-retail .template-lead-panel :is(p,label,small) { color: var(--br-ink); }
.template-site--boutique-retail .template-lead-panel > *, .template-site--boutique-retail .template-lead-form > * { min-width: 0; }
.template-site--boutique-retail .template-lead-form { min-width: 0; background: transparent; border: 0; border-radius: 0; padding: 0; box-shadow: none; }
.template-site--boutique-retail .template-lead-form :is(input,textarea,select) { min-width: 0; max-width: 100%; }
.template-site--boutique-retail .template-site-footer strong { color: var(--br-ink); }
@media (max-width: 760px) {
    .template-site--boutique-retail .template-lead-panel { grid-template-columns: minmax(0,1fr); }
}
