/* Styles réservés aux cartes Cave et Épicerie. */
.page-cave .carte-intro{padding-block:24px 48px;background:var(--paper);color:var(--ink)}
.page-cave .catalogue-hero h1{color:inherit;font-family:var(--display-font);font-weight:700;letter-spacing:-.035em;line-height:1.06}
.page-cave .carte-intro .eyebrow{color:var(--red)}
.page-cave .carte-intro .page-lead{color:var(--muted)}
.page-cave .carte-intro .text-link{color:var(--red)}
.page-cave .carte-intro .text-link:hover{color:var(--red-hover)}
.page-cave .catalogue-hero-photo{border:1px solid var(--line);border-radius:4px;box-shadow:0 20px 50px #1919190d;background:var(--soft)}
.page-cave .catalogue-hero-photo img{aspect-ratio:1280/854}
.page-cave .carte-ambiance figcaption{padding:11px 16px;color:var(--muted);font-size:12px;line-height:1.6}
.page-cave .carte-selection{background:var(--paper);color:var(--ink);border-color:var(--line)}
.page-cave .carte-wrap{max-width:1040px}
.page-cave .carte-heading{display:grid;justify-items:start;text-align:left;margin-bottom:32px}
.page-cave .carte-heading .eyebrow{color:var(--red)}
.page-cave .carte-heading h2{color:inherit;font-family:var(--display-font);font-weight:700;font-size:clamp(32px,3.1vw,46px);letter-spacing:-.015em}
.page-cave .carte-heading>p:last-child{max-width:46ch;margin-top:16px;color:var(--muted);font-size:15px;line-height:1.7}
.catalogue-card .catalogue-family-title{font-size:clamp(23px,3vw,32px);line-height:1.3;overflow-wrap:anywhere}
.catalogue-card .catalogue-product-info h4{margin:0;font-size:18px;font-weight:600;line-height:1.45;letter-spacing:-.015em;overflow-wrap:anywhere}
.catalogue-card .catalogue-product{align-items:flex-start}
.catalogue-card .catalogue-product-price{flex:none;min-width:0;max-width:11ch;white-space:normal;line-height:1.55}
.catalogue-card .catalogue-category{scroll-margin-top:110px}
.catalogue-card--cave .catalogue-categories{justify-content:center;gap:8px 22px;margin-bottom:42px}
.catalogue-card--cave .catalogue-categories a{border:0;border-radius:0;padding:8px 0;color:var(--red);border-bottom:1px solid var(--line);font-weight:400}
.catalogue-card--cave .catalogue-categories a:hover{color:var(--red-hover);border-color:var(--red)}
.catalogue-card--cave .catalogue-category{margin:28px 0 0;padding:28px 32px;border:1px solid var(--line);border-radius:3px;background:var(--surface)}
.catalogue-card--cave .catalogue-family-title{padding-bottom:18px;border-bottom:1px solid var(--line);color:var(--ink);font-family:var(--display-font);font-weight:700;letter-spacing:.015em}
.catalogue-card--cave .catalogue-products{display:block}
.catalogue-card--cave .catalogue-product{padding-block:22px;border-color:var(--line);gap:24px}
.catalogue-card--cave .catalogue-product:last-child{border-bottom:0;padding-bottom:0}
.catalogue-card--cave .catalogue-product-info p{max-width:62ch;color:var(--muted);font-size:14px;line-height:1.7}
.catalogue-card--cave .catalogue-product-price{color:var(--red);font-weight:500}
.catalogue-card--cave .catalogue-product-photo{border-radius:2px}
.catalogue-card--cave .catalogue-note{color:var(--muted);line-height:1.7}
.page-cave .catalogue-empty{border-color:var(--line);color:var(--muted)}
.page-cave .catalogue-empty a{color:var(--red)}
.page-cave .carte-selection a:focus-visible{outline:3px solid var(--red);outline-offset:5px}
.page-epicerie .carte-intro{padding-block:46px 52px;background:#eee5d6}
.page-epicerie .catalogue-hero{grid-template-columns:1.05fr 1fr}
.page-epicerie .catalogue-hero-photo{order:-1;border-radius:4px 36px 4px 4px;box-shadow:0 14px 30px #52452e16}
.page-epicerie .catalogue-hero-photo img{aspect-ratio:1.2}
.page-epicerie .catalogue-hero h1{font-size:clamp(38px,4.2vw,60px);max-width:13ch}
.page-epicerie .carte-selection{background:#faf6ed;border-color:#ddd1be}
.page-epicerie .carte-heading{max-width:60ch;margin-bottom:32px}
.page-epicerie .carte-heading>p:last-child{margin-top:16px;color:#665b4d;line-height:1.7}
.catalogue-card--epicerie{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.catalogue-card--epicerie .catalogue-categories{grid-column:1/-1;gap:10px;margin:0 0 4px}
.catalogue-card--epicerie .catalogue-categories a{border:1px solid #d6c4a7;border-radius:4px;color:#594324;background:#fffdf8}
.catalogue-card--epicerie .catalogue-categories a:hover{border-color:#7f603a;color:#322717}
.catalogue-card--epicerie .catalogue-category{margin:0;padding:28px;background:#fffdf8;border:1px solid #e3d7c4;border-top:4px solid #aa8956;border-radius:4px}
.catalogue-card--epicerie .catalogue-family-title{padding-bottom:18px;border-bottom:1px solid #dfd0b9;color:#594324;font-weight:600}
.catalogue-card--epicerie .catalogue-products{display:block}
.catalogue-card--epicerie .catalogue-product{padding-block:22px;border-color:#e8dece;gap:16px}
.catalogue-card--epicerie .catalogue-product:last-child{border-bottom:0;padding-bottom:0}
.catalogue-card--epicerie .catalogue-product-info p{color:#6a5d4e;font-size:14px;line-height:1.7}
.catalogue-card--epicerie .catalogue-product-price{color:#80542c;font-weight:600;font-size:16px}
.catalogue-card--epicerie .catalogue-note{grid-column:1/-1;margin:0;color:#6a5d4e;line-height:1.7}
@media(max-width:1000px){
 .catalogue-card--epicerie{grid-template-columns:minmax(0,1fr)}
 .page-epicerie .catalogue-hero{gap:32px}
}
@media(max-width:760px){
 .page-cave .carte-intro,.page-epicerie .carte-intro{padding-block:28px 36px}
 .page-epicerie .catalogue-hero{grid-template-columns:minmax(0,1fr)}
 .page-epicerie .catalogue-hero-photo{order:0}
 .page-cave .catalogue-hero h1,.page-epicerie .catalogue-hero h1{font-size:clamp(38px,8vw,54px)}
 .page-epicerie .catalogue-hero-photo img{aspect-ratio:1.55}
 .page-cave .carte-heading{justify-items:start;text-align:left;margin-bottom:28px}
 .catalogue-card--cave .catalogue-categories{justify-content:start;margin-bottom:26px}
 .catalogue-card--cave .catalogue-category,.catalogue-card--epicerie .catalogue-category{padding:22px}
 .catalogue-card .catalogue-product{gap:16px}
}
@media(max-width:390px){
 .catalogue-card--cave .catalogue-category,.catalogue-card--epicerie .catalogue-category{padding:18px 14px}
 .catalogue-card .catalogue-product{gap:10px}
 .catalogue-card .catalogue-product-info h4{font-size:16px}
 .catalogue-card .catalogue-product-price{max-width:9ch;font-size:14px}
 .catalogue-card .catalogue-product-photo{width:40px;height:40px}
}
@media print{
 .page-cave .carte-intro,.page-cave .carte-selection,.page-epicerie .carte-intro,.page-epicerie .carte-selection{background:#fff;color:#000}
 .page-cave .carte-intro .eyebrow,.page-cave .carte-intro .page-lead,.page-cave .carte-intro .text-link,.page-cave .carte-heading .eyebrow,.page-cave .carte-heading>p:last-child,.catalogue-card--cave .catalogue-family-title,.catalogue-card--cave .catalogue-product-info p,.catalogue-card--cave .catalogue-product-price,.catalogue-card--cave .catalogue-note{color:#000}
 .catalogue-card .catalogue-category{background:#fff;break-inside:avoid;border-color:#777}
 .catalogue-card .catalogue-categories{display:none}
}
@media(forced-colors:active){
 .page-cave .carte-intro,.page-cave .carte-selection,.page-epicerie .carte-intro,.page-epicerie .carte-selection,.catalogue-card .catalogue-category{background:Canvas;color:CanvasText}
 .catalogue-card .catalogue-category,.catalogue-card .catalogue-family-title,.catalogue-card .catalogue-product{border-color:CanvasText}
}
