/* MAZAQ / V6R18 — Editorial confidence. Source photography, identity, copy, pricing,
   cart behavior and owner-controlled theme remain unchanged. Progressive enhancement. */
:root { --v18-cream:var(--ground); --v18-ink:var(--ink); --v18-rule:color-mix(in srgb,var(--wine) 16%,transparent); }
/* One unmistakable first impression. The original product photo is not redrawn. */
.hero-section { padding-block:26px 12px; }
.hero-shell, body.overdrive .hero-shell {
  min-height: min(570px,75vh); display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);
  align-items:stretch; background:var(--wine-dark); color:var(--white); isolation:isolate;
  box-shadow:none;outline:none;overflow:hidden;
}
.hero-shell:before {display:none}
.hero-copy { padding:clamp(30px,4.1vw,64px);max-width:none;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:0; }
.hero-copy .brand-line {color:#f0d9dc!important;opacity:1;font-weight:500;letter-spacing:0}
.hero-shell .hero-title { color:#fff8f4; font-size:clamp(48px,5.15vw,79px);line-height:1.2;max-width:9ch;font-weight:600;margin:0 0 23px; }
.hero-shell .size-label,.hero-shell .hero-measure{color:#f6e8e6!important;opacity:1}
.hero-shell .size-label {font-size:14px;margin-bottom:10px}
.hero-shell .size-pick {background:transparent;border:1px solid #b9919a;border-radius:9px;padding:4px;gap:3px;}
.hero-shell .size-pick button {color:#fffaf7;min-height:44px;border-radius:6px;padding-inline:16px;}
.hero-shell .size-pick button[aria-pressed=true]{background:#fff8f2;color:var(--wine-dark)}
.hero-shell .price-line{color:#fffaf6;margin:20px 0 9px;gap:10px}
.hero-shell .price-line strong{font-size:clamp(48px,5vw,66px);font-weight:700;line-height:1.1;color:inherit}
.hero-shell .price-line span{color:#f4e7e0}
.hero-shell .hero-measure {font-size:13px;max-width:42ch;min-height:0;margin:0 0 22px;line-height:1.95}
.hero-shell .primary-button{background:var(--white);color:var(--wine-dark);border-color:var(--white);border-radius:8px;min-height:54px;font-size:15px;padding:14px 25px;box-shadow:none}
.hero-shell .primary-button:hover {background:#f4e4dd;border-color:#f4e4dd;transform:translateY(-2px)}
.hero-art {background:var(--cream);padding:clamp(20px,4vw,56px);position:relative;overflow:hidden;}
.hero-art img,body.overdrive .hero-art img{width:100%;height:100%;max-height:510px;object-fit:contain;filter:drop-shadow(0 20px 13px var(--photo-shadow-hero));}
/* Product story over boxes. A two-column editorial gallery gives photos real size. */
#cakes.collection {padding-top:62px;padding-bottom:78px;}
#cakes .collection-head {display:flex;align-items:end;justify-content:space-between;flex-wrap:wrap;column-gap:20px;row-gap:8px;padding-bottom:20px;margin-bottom:26px;}
#cakes .collection-title {font-size:clamp(42px,4.1vw,59px);line-height:1.28;font-weight:600}
#cakes .section-help {max-width:330px;margin:0 0 7px;}
#cakes .loaf-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:stretch;}
#cakes .loaf-product,body.overdrive #cakes .loaf-product {
  display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  align-items:stretch;min-width:0;min-height:352px;background:var(--pale);
  border:1px solid var(--v18-rule);border-radius:10px;overflow:hidden;
  transition:border-color 240ms ease,box-shadow 240ms ease;
}
#cakes .loaf-product:hover {border-color:color-mix(in srgb,var(--wine) 38%,transparent);box-shadow:0 14px 30px -24px rgba(56,21,28,.3);}
#cakes .loaf-product .photo-stage {align-self:stretch;min-width:0;width:100%;height:100%;min-height:352px;aspect-ratio:auto;background:#ede2d9;}
#cakes .loaf-product .photo-stage img {width:108%;height:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 13px 12px var(--photo-shadow-loaf))}
#cakes .loaf-details {min-width:0;display:flex;flex-direction:column;padding:23px clamp(13px,1.7vw,27px) 20px;background:var(--white);}
#cakes .loaf-details .product-name {font-size:clamp(25px,2.1vw,32px);font-weight:600;line-height:1.36;min-height:0;margin:0 0 5px;color:var(--wine);}
#cakes .loaf-details .product-minor {font-size:12px;min-height:0;line-height:1.75;margin:0 0 14px;color:var(--muted);}
#cakes .loaf-details .variant-stack {gap:0;border-top:1px solid var(--v18-rule);margin-top:auto;}
#cakes .loaf-details .cake-size-option, body.overdrive #cakes .loaf-details .cake-size-option {
 border:0;border-bottom:1px solid var(--v18-rule);border-radius:0;background:transparent;
 padding:13px 0;min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:8px;
 transition:background-color 220ms ease,padding 220ms ease;position:relative;
}
#cakes .loaf-details .cake-size-option:last-child {border-bottom:0;}
#cakes .loaf-details .cake-size-option:hover,#cakes .loaf-details .cake-size-option:focus-visible {background:color-mix(in srgb,var(--wine) 6%,transparent);padding-inline:7px;}
#cakes .size-description b {font-size:14px;color:var(--wine);font-weight:700;}
#cakes .size-dimensions {white-space:normal;font-size:12px;line-height:1.7;color:var(--text-muted-emphasis);}
#cakes .size-dimensions small {font-size:11px;line-height:1.5}
#cakes .size-purchase {min-width:62px;}
#cakes .size-purchase strong {font-size:22px;line-height:1.25;}
#cakes .size-plus {font-size:16px;font-weight:700;}
#cakes .v17-in-cart {font-size:12px;line-height:1.55;}
/* Differentiate the cinnamon line by keeping one deep-wine full-width section. */
#rolls .roll-grid {gap:clamp(16px,2.3vw,31px)}
#rolls .roll-img {background:color-mix(in srgb,var(--wine-dark) 88%,#fff);border-radius:8px;}
#rolls .roll-desc .add-button{border-radius:6px;}
.muffin-flavor,.duo-product{border-radius:10px}
#treats .collection-title{font-weight:600}
/* Accessible expressive affordances — no decorative sparkles, no fake scarcity. */
#cakes .cake-size-option:focus-visible,.hero-shell button:focus-visible {outline:3px solid #d9aa7e;outline-offset:3px}
@media(min-width:761px) and (max-width:1100px){
 #cakes .loaf-product{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)}
 #cakes .loaf-details{padding-inline:13px}
 #cakes .size-dimensions{font-size:11px}
 .hero-copy{padding:30px}
}
@media(max-width:760px){
 .hero-section{padding-top:10px;padding-bottom:0}
 .hero-shell,body.overdrive .hero-shell{display:flex;flex-direction:column;min-height:0;}
 .hero-art{order:0;display:flex;width:100%;height:clamp(230px,65vw,350px);padding:12px 22px 0}
 .hero-art img{height:100%;width:100%;max-height:none}
 .hero-copy{order:1;width:100%;max-width:none;padding:23px 25px 31px}
 .hero-shell .hero-title{font-size:clamp(42px,9vw,57px);max-width:none;line-height:1.2;margin:0 0 16px}
 .hero-shell .size-pick{display:flex;width:100%}
 .hero-shell .size-pick button{min-width:0;flex:1}
 .hero-shell .price-line{margin:16px 0 7px}
 .hero-shell .hero-measure{font-size:13px;margin-bottom:19px}
 .hero-shell .primary-button{width:100%;justify-content:center}
 #cakes.collection{padding:43px 0 57px}
 #cakes .collection-head{padding-bottom:12px;margin-bottom:16px}
 #cakes .collection-title{font-size:clamp(38px,9vw,49px)}
 #cakes .loaf-grid{display:grid;grid-template-columns:1fr;gap:16px}
 #cakes .loaf-product,body.overdrive #cakes .loaf-product{display:grid;grid-template-columns:1fr;gap:0;min-height:0;background:var(--white);padding:0;margin:0;}
 #cakes .loaf-product .photo-stage{height:clamp(210px,69vw,330px);min-height:0;aspect-ratio:auto;}
 #cakes .loaf-product .photo-stage img{width:100%;height:100%;}
 #cakes .loaf-details{padding:18px 20px 17px;width:100%;}
 #cakes .loaf-details .product-name{font-size:clamp(28px,7vw,36px);margin-bottom:3px}
 #cakes .loaf-details .product-minor{font-size:13px;margin-bottom:9px}
 #cakes .loaf-details .cake-size-option{min-height:78px;padding:10px 0;}
 #cakes .size-dimensions{font-size:12px;line-height:1.7}
 #cakes .size-dimensions small{font-size:11px}
 #cakes .size-purchase strong{font-size:22px}
}
@media(min-width:761px) and (max-width:980px){
 #cakes .loaf-grid{grid-template-columns:1fr;gap:19px}
 #cakes .loaf-product{min-height:300px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
 #cakes .loaf-product .photo-stage{min-height:300px}
}
@media(max-width:390px){#cakes .loaf-details{padding-inline:16px} .hero-copy{padding-inline:20px}}
@media(prefers-reduced-motion:reduce){
 #cakes .loaf-product,#cakes .cake-size-option,.hero-shell .primary-button{transition:none!important;transform:none!important}
}
/* Legible guidance on the dark hero, including when owner changes theme. */
.hero-shell .order-hint{color:#f4e2e0!important;opacity:1!important;font-size:13px;line-height:1.7;margin-top:14px;max-width:40ch}
#cakes .size-plus{font-size:13px!important;font-weight:600;line-height:1.4;opacity:1}
@media(max-width:760px){.hero-shell .order-hint{color:#f3dfdc!important}}
