/* Funnel and trust layer: terms bar, product-page service lines, request forms, phone-first product page, compact consent bar.
   Loaded after style.css, storefronts.css, identity.css and the shared consent stylesheet, so these rules win ties. */

/* ---- The strip above the header: who we sell to, the order minimum, and the way to a person ---- */
body:not(.workspace-page) .preview-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:2px 22px;font-size:12px;line-height:1.45;letter-spacing:0;text-transform:none;padding-block:7px}
body:not(.workspace-page) .preview-bar .bar-promise{font-weight:700}
body:not(.workspace-page) .preview-bar .bar-link{color:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
body:not(.workspace-page) .preview-bar .bar-link:focus-visible{outline:2px solid currentColor;outline-offset:3px}
@media(max-width:1180px){body:not(.workspace-page) .preview-bar .bar-promise{display:none}}
@media(max-width:760px){
 body:not(.workspace-page) .preview-bar{display:flex;gap:2px 14px;padding:6px 16px;text-align:center}
 body:not(.workspace-page) .preview-bar .bar-terms{flex:1 1 100%}
 body.product-view:not(.workspace-page) .preview-bar,body.request-view:not(.workspace-page) .preview-bar{display:none}
}

/* ---- Service lines on the product page ---- */
.service-glance{list-style:none;margin:10px 0 12px;padding:0;display:grid;gap:6px;font-size:13px;line-height:1.5;color:var(--ink)}
.service-glance li{position:relative;padding-left:20px;margin:0}
.service-glance li::before{content:"";position:absolute;left:0;top:.5em;width:9px;height:9px;border:2px solid var(--accent)}
.restaurant-furniture-and-bar-supply .service-glance li::before{border-radius:0;background:var(--accent)}
.restaurant-furniture-central .service-glance li::before{border-radius:50%}
.restaurant-furniture-central .service-glance{font-family:Georgia,serif;font-style:italic}
.restaurant-furniture-depot-usa .service-glance li::before{border-radius:1px;transform:rotate(45deg)}
.restaurant-furniture-depot-usa .service-glance{padding:10px 12px;border-left:3px solid var(--accent);background:var(--tint)}
.service-block{margin:22px 0 6px;padding-top:16px}
.service-block h2{font-size:1.05rem;line-height:1.3;margin:0 0 4px}
.service-list{display:grid;gap:10px;margin:10px 0 8px;padding:0}
.service-list>div{display:grid;grid-template-columns:96px minmax(0,1fr);gap:4px 14px;margin:0;font-size:13px;line-height:1.55}
.service-list dt{font-weight:700;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--accent)}
.service-list dd{margin:0;color:var(--ink)}
.service-list dd a{white-space:nowrap}
.service-help{margin:6px 0 0;font-size:13px}
.restaurant-furniture-and-bar-supply .service-block{border-top:3px solid var(--accent)}
.restaurant-furniture-central .service-block{border-top:1px solid var(--line)}
.restaurant-furniture-central .service-block h2{font-family:Georgia,serif;font-weight:400;font-style:italic}
.restaurant-furniture-central .service-list dt{font-family:Georgia,serif;font-style:italic;text-transform:none;letter-spacing:0;font-size:13px}
.restaurant-furniture-depot-usa .service-block{border:1px solid var(--line);background:var(--tint);border-radius:var(--radius);padding:16px}
@media(max-width:560px){.service-list>div{grid-template-columns:1fr;gap:2px}}

/* ---- Basket notices ---- */
.minimum-notice{border-left:4px solid var(--accent);font-size:14px;line-height:1.5}
.order-terms{font-size:13px}

/* ---- Request pages: callback and samples ---- */
.request-heading{max-width:760px;margin-bottom:22px}
.request-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.8fr);gap:32px;align-items:start}
.request-form{margin:0}
.request-aside{padding:20px;border:1px solid var(--line);background:var(--tint);font-size:14px;line-height:1.55}
.request-aside h2{font-size:1.05rem;margin:0 0 8px}
.request-aside p{margin:0 0 12px}
.request-body{max-width:760px;margin-top:36px}
.field-trio{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1.4fr) minmax(0,1fr);gap:12px}
.check-group{border:0;margin:0 0 14px;padding:0;display:grid;gap:6px}
.check-group legend{padding:0;margin-bottom:6px;font-weight:700;font-size:14px}
.check-group .field-error{display:block;margin-top:4px}
.request-form select{width:100%;min-height:48px;font-size:16px}
.request-form .check-label{margin:0}
.restaurant-furniture-central .request-heading h1{font-family:Georgia,serif;font-weight:400}
.restaurant-furniture-depot-usa .request-aside{border-radius:var(--radius);border-top:3px solid var(--accent)}
.restaurant-furniture-and-bar-supply .request-aside{border-left:4px solid var(--accent)}
@media(max-width:900px){.request-layout{grid-template-columns:minmax(0,1fr)}.request-aside{order:2}}
@media(max-width:600px){.field-trio{grid-template-columns:minmax(0,1fr)}}

/* ---- Footer: the two ways to reach a person ---- */
.footer-request{display:flex;flex-wrap:wrap;gap:6px 16px;margin:10px 0 0;font-size:13px}
.footer-request a{font-weight:700}

/* ---- Phone-first product page: the title, price, lead time and the way to the options come before the photos ---- */
@media(max-width:760px){
 body.product-view .category-menu{display:none}
 body.product-view .site-header{padding-bottom:8px}
 body.product-view .product-page .breadcrumbs{flex-wrap:nowrap;gap:10px;white-space:nowrap;overflow-x:auto;padding:10px 0 8px;line-height:1.5;scrollbar-width:none;-webkit-overflow-scrolling:touch}
 body.product-view .product-page .breadcrumbs::-webkit-scrollbar{display:none}
 body.product-view .product-page .breadcrumbs>*{flex:none}
 body.product-view .product-heading h1{font-size:1.7rem;margin-bottom:8px}
 body.product-view .product-heading .eyebrow{margin-bottom:6px}
 body.product-view .product-heading .detail-price{margin:6px 0 2px}
 body.product-view .service-glance{margin:8px 0 8px;font-size:13px}
 body.product-view .service-glance li:nth-child(2){display:none}
 body.product-view .detail-jump{min-height:44px}
}

/* ---- Compact consent bar on phones: the choice stays equal, the price stays visible ---- */
@media(max-width:760px){
 .vmf-consent{inset:auto 0 0 0;width:100%;max-height:none;border-radius:12px 12px 0 0;padding:12px 16px calc(12px + env(safe-area-inset-bottom));box-shadow:0 -6px 24px #0002}
 .vmf-consent h2{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .vmf-consent p{font-size:13px;line-height:1.4;margin:0 0 10px}
 .vmf-consent-actions{flex-wrap:nowrap;gap:8px}
 .vmf-consent .vmf-consent-actions button{flex:1 1 0;min-width:0;min-height:44px;padding:8px 10px;font-size:14px;white-space:normal}
 .vmf-consent .vmf-consent-actions a{flex:0 0 auto;min-height:44px;padding:8px 10px;font-size:14px}
}

/* The total-cost row repeats the line under the price, so it shows only where that line is hidden (phones). */
.service-list .cost-row{display:none}
@media(max-width:760px){body.product-view .service-list .cost-row{display:grid}}

/* ---- Reading floor: text a visitor has to read is never set below 12px. Generated from a scan of the live pages at 390 and 1440 px. ---- */
a.editorial-object.editorial-object-0 > span,
a.editorial-object.editorial-object-1 > span,
a.editorial-object.editorial-object-2 > span,
a.still-life-one > span,
a.still-life-two > span,
article.reading-body > p.eyebrow,
aside.reading-aside > p.eyebrow,
button.inline-swatch > small.inline-swatch-price,
details.item-notes > label,
details.item-notes > summary,
details.plan-save-selection > p.microcopy,
div > p.eyebrow,
div > span.example-label,
div.configure-heading > span.step-number,
div.example-product-copy > p.example-item-number,
div.example-zone > small,
div.hero-copy > p.eyebrow,
div.hero-details > span,
div.hero-product > span.product-note,
div.photo-toolbar > a,
div.photo-toolbar > span,
div.product-cost > small,
div.product-detail > p.catalog-freshness,
div.product-gallery > p,
div.product-info > p.card-facts,
div.product-info > p.eyebrow,
div.project-preview > div.project-preview-footer,
div.project-preview-heading > span,
div.project-preview-heading > span.status-dot,
div.room-plan-intro > p.eyebrow,
div.size-panel > span,
div.tool-example-intro > p.eyebrow,
div.tool-example-sheet > p.example-disclaimer,
fieldset.configuration-fields.enhanced > p.configured-price,
fieldset.configuration-fields.enhanced > p.microcopy,
fieldset.configuration-fields.enhanced > p.selection-progress,
figure.room-plan-figure > span.plan-tag,
form.add-form > p.microcopy,
form.filter-bar.catalog-filters > label,
form.quote-form > p.eyebrow,
header > p.eyebrow,
header.materials-page-heading > p.eyebrow,
header.product-heading > p.eyebrow,
p.configured-price > small,
p.microcopy > a,
section.container.section > p.eyebrow,
section.section.furniture-reading > p.eyebrow,
span.material-card-copy > small,
span.price > small,
span.product-note > a{font-size:12px}
@media(max-width:760px){
 a.project-preview-row > b,
 button.inline-swatch > span.inline-swatch-name,
 div.category-browser-heading > a.text-link,
 div.collection-toolbar > p.result-count,
 div.detail-price > span,
 div.product-bottom > a.text-link,
 header.product-heading > a.detail-jump,
 header.product-heading > p.price-note,
 nav.breadcrumbs > a,
 nav.breadcrumbs > span,
 nav.category-chips > a,
 nav.category-chips > a.selected,
 ol.order-steps > li{font-size:12px}
}
@media(min-width:761px){
 div.catalog-count > span,
 div.category-panel-group > p.category-panel-heading,
 div.collection-toolbar > span,
 div.journal-stamp > small,
 div.preview-bar > span{font-size:12px}
}

/* The same floor for the places the scan found without a class of their own. */
.facet-group label>span,.facet-group label>small,details.item-notes>summary>span,.catalog-facet-panel>summary>span,.site-footer nav>h2,.category-browser-tiles small,.category-tile>div>span{font-size:12px}
@media(max-width:760px){
 .site-header nav>a,.site-header .site-more>summary,.site-header .quote-link,.category-browser-tiles strong{font-size:12px}
}

/* Second pass: the same floor with the weight to beat brand-specific rules. Generated from the local preview at 390 and 1440 px. */
a.project-preview-row > span > small,
article.journal-card > div > p.eyebrow.eyebrow,
article.product-card > div.product-info > p.eyebrow.eyebrow,
div.configure-heading > div > p.eyebrow.eyebrow,
div.field-pair > label > span,
div.rail-still-life > a.still-life-one > span,
div.rail-still-life > a.still-life-two > span,
form.quote-form > label > span,
li > span > small,
nav.material-families > a > span{font-size:12px}
@media(max-width:760px){
 div.mobile-product-action > span > small,
 div.product-info > div.product-bottom > a.text-link.text-link,
 div.project-preview > a.project-preview-row > b,
 header.catalog-heading > div > p.eyebrow.eyebrow,
 section.hero > div.hero-product > span.product-note.product-note{font-size:12px}
}

/* Footer group headings carry brand rules of their own, so this one is heavier. */
.site-footer.site-footer.site-footer.site-footer nav>h2{font-size:12px}

/* Two small notes inside list rows and the project preview, with the weight to beat their brand rules. */
html body[class] li>span>small,html body[class] a.project-preview-row>span>small{font-size:12px}

.request-heading h1{margin-bottom:16px}

/* Footer request links sit on the dark brand block of Bar Supply and Depot USA: a light colour and an underline keep them readable. */
.restaurant-furniture-and-bar-supply .site-footer .footer-request a{color:#f4ece0;text-decoration:underline;text-underline-offset:3px}
.restaurant-furniture-depot-usa .site-footer .footer-request a{color:#fff;text-decoration:underline;text-underline-offset:3px}

/* ---- Header menu: each department name is a link to its category page; the arrow beside it opens the panel ---- */
.category-menu-bar>li.category-menu-split{--rule:transparent;display:flex;align-items:stretch;border-bottom:3px solid var(--rule)}
.category-menu-bar>li.category-menu-split:hover,.category-menu-bar>li.category-menu-split:focus-within{--rule:var(--accent)}
.category-menu-bar>li.category-menu-split.is-current{--rule:var(--ink)}
.category-menu-bar>li.category-menu-split:has(details[open]){--rule:var(--accent)}
.category-menu-split>.category-menu-link{display:flex;align-items:center;min-height:45px;padding:0 0 0 14px;font-size:.84rem;font-weight:600;color:var(--ink);text-decoration:none;white-space:nowrap}
.category-menu-split>.category-menu-link:hover{text-decoration:underline;text-underline-offset:5px}
.category-menu-split>.category-menu-link:focus-visible{outline:3px solid var(--ink);outline-offset:2px}
.category-menu-split .category-menu-item>summary{display:flex;align-items:center;justify-content:center;gap:0;min-width:30px;min-height:45px;padding:0;border-bottom:0;cursor:pointer;list-style:none}
.category-menu-split .category-menu-item>summary:after{display:none}
.category-menu-caret{display:block;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg)}
.category-menu-split .category-menu-item[open]>summary .category-menu-caret{transform:translateY(2px) rotate(-135deg)}
.restaurant-furniture-central .category-menu-split>.category-menu-link{font-weight:400;letter-spacing:.04em;font-size:.8rem}
.restaurant-furniture-depot-usa .category-menu-split>.category-menu-link{font-size:.82rem}
@media(max-width:1100px){.category-menu-split>.category-menu-link{padding-left:10px;font-size:.8rem}.category-menu-split .category-menu-item>summary{min-width:28px}}
@media(max-width:899px){
 .category-menu-bar>li.category-menu-split{display:block;position:relative;border-bottom:0}
 .category-menu-split>.category-menu-link{min-height:48px;padding:0 56px 0 0;white-space:normal;font-size:.9rem}
 .category-menu-split .category-menu-item>summary{position:absolute;top:0;right:0;width:48px;min-width:0;height:48px;min-height:0}
}
