/* CINORA product discovery — page-specific composition and controls. */
.products-page { overflow: clip; background: var(--cinora-color-background); }
.products-intro { padding-block: clamp(2rem, 4vw, 3.5rem) clamp(1.25rem, 2.5vw, 2rem); }
.products-intro__inner { display: flex; max-width: 82rem; align-items: end; justify-content: space-between; gap: 2rem; }
.products-intro__copy { max-width: 48rem; }
.products-intro .eyebrow, .products-picker .eyebrow { margin: 0 0 0.7rem; color: var(--cinora-color-ink); }
.products-intro h1 { margin: 0; font-family: var(--wp--preset--font-family--display); font-size: clamp(3.7rem, 7.2vw, 6.75rem); font-weight: 400; letter-spacing: -0.065em; line-height: 0.9; }
.products-intro h1 span { color: var(--cinora-color-accent); }
.products-intro__copy > p:last-child { max-width: 39rem; margin: 0.9rem 0 0; color: color-mix(in srgb, var(--cinora-color-ink) 72%, transparent); font-size: clamp(0.96rem, 1.2vw, 1.1rem); line-height: 1.65; }
.products-intro__aside { margin: 0 0 0.2rem; padding: 0.25rem 0 0.25rem 1.25rem; border-left: 1px solid var(--cinora-color-accent); color: color-mix(in srgb, var(--cinora-color-ink) 70%, transparent); font-family: var(--wp--preset--font-family--display); font-size: 1.15rem; font-style: italic; line-height: 1.4; }
.products-picker { padding-block: clamp(2.25rem, 5vw, 4rem) clamp(3rem, 6vw, 5rem); background: var(--cinora-color-surface); }
.products-picker > .site-container { max-width: 82rem; }
.products-picker__heading { display: flex; align-items: end; justify-content: space-between; gap: 2rem; margin-bottom: clamp(1.35rem, 2.8vw, 2.35rem); }
.products-picker__heading h2 { margin: 0; font-family: var(--wp--preset--font-family--display); font-size: clamp(2.6rem, 5.5vw, 4.8rem); font-weight: 400; letter-spacing: -0.055em; line-height: 0.98; }
.products-picker__heading h2 em { color: var(--cinora-color-accent); font-weight: 400; }
.products-picker__heading > p { max-width: 19rem; margin: 0 0 0.3rem; color: color-mix(in srgb, var(--cinora-color-ink) 70%, transparent); font-size: 0.93rem; line-height: 1.6; }
.products-picker__grid { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr); grid-template-rows: repeat(2, minmax(13rem, 1fr)); gap: 1rem; }
.product-choice { position: relative; min-width: 0; min-height: 13rem; overflow: hidden; border-radius: 1.2rem; background: var(--cinora-color-surface-warm); }
.product-choice--rolls { grid-row: span 2; }
.product-choice__link { position: relative; display: flex; width: 100%; height: 100%; min-height: inherit; overflow: hidden; color: #fff9f0; text-decoration: none; isolation: isolate; }
.product-choice__link img { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 600ms cubic-bezier(.2,.7,.2,1), filter 400ms ease; }
.product-choice__veil { position: absolute; z-index: -1; inset: 0; background: linear-gradient(180deg, rgb(45 23 15 / 4%) 34%, rgb(45 23 15 / 78%) 100%); transition: background-color 220ms ease; }
.product-choice__copy { display: flex; flex-direction: column; align-items: flex-start; justify-content: end; gap: 0.45rem; width: 100%; min-height: inherit; padding: clamp(1.1rem, 2.4vw, 2rem); }
.product-choice__eyebrow { color: #f0c58e; font-size: 0.63rem; font-weight: 750; letter-spacing: 0.13em; }
.product-choice__copy strong { font-family: var(--wp--preset--font-family--display); font-size: clamp(1.75rem, 3vw, 2.8rem); font-weight: 400; line-height: 1.02; }
.product-choice__action { margin-top: 0.25rem; padding-bottom: 0.15rem; border-bottom: 1px solid rgb(255 249 240 / 68%); font-size: 0.78rem; font-weight: 700; }
.product-choice__tag { position: absolute; top: 0.8rem; right: 0.8rem; padding: 0.35rem 0.6rem; border-radius: 999px; background: rgb(255 249 240 / 91%); color: var(--cinora-color-ink); font-size: 0.62rem; }
.product-choice__link:hover img, .product-choice__link:focus-visible img, .product-choice.is-active img { transform: scale(1.035); }
.product-choice.is-active { outline: 3px solid var(--cinora-color-accent); outline-offset: -3px; }
.product-choice__link:focus-visible { outline: 3px solid var(--cinora-color-accent); outline-offset: -5px; }
.products-picker__note { margin: 0.8rem 0 0; color: color-mix(in srgb, var(--cinora-color-ink) 62%, transparent); font-size: 0.68rem; text-align: right; }

/* The single detail panel is revealed only after a category is selected. */
.product-detail[hidden], .product-detail__inner[hidden] { display: none !important; }
.product-detail { scroll-margin-top: 1rem; background: #f6eddf; }
.product-detail__inner { display: grid; min-height: 34rem; grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr); align-items: stretch; animation: product-panel-in 360ms ease both; }
.product-detail__inner--brownies { background: #ead6bd; }
.product-detail__inner--cookies { background: #f3e7d4; }
.product-detail__image { position: relative; min-width: 0; min-height: 30rem; margin: 0; overflow: hidden; background: var(--cinora-color-surface-warm); }
.product-detail__image img { width: 100%; height: 100%; min-height: inherit; object-fit: cover; }
.product-detail__image figcaption { position: absolute; right: 1rem; bottom: 1rem; padding: 0.48rem 0.7rem; border-radius: 999px; background: rgb(255 249 240 / 90%); color: #715e51; font-size: 0.62rem; }
.product-detail__content { align-self: center; max-width: 50rem; padding: clamp(1.5rem, 4vw, 3.6rem) clamp(1.5rem, 6vw, 6.2rem); }
.product-detail__content .eyebrow { margin: 0 0 0.65rem; color: #8e633f; font-size: 0.67rem; }
.product-detail__content h2 { margin: 0; font-family: var(--wp--preset--font-family--display); font-size: clamp(2.7rem, 5vw, 4.7rem); font-weight: 400; letter-spacing: -0.055em; line-height: 0.98; }
.product-detail__lead { max-width: 34rem; margin: 0.85rem 0 0; color: #715e51; font-size: 0.96rem; line-height: 1.65; }
.product-detail__weight { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.5rem 1rem; margin: 1rem 0 0; color: #715e51; font-size: 0.78rem; }
.product-detail__weight strong { color: var(--cinora-color-ink); }
.box-size-picker { min-width: 0; padding: 0; margin: 1.55rem 0 0; border: 0; }
.box-size-picker legend { margin-bottom: 0.65rem; color: var(--cinora-color-ink); font-size: 0.8rem; font-weight: 750; }
.box-size-picker__options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.6rem; }
.box-size-picker__options button { display: flex; min-height: 4.2rem; flex-direction: column; align-items: center; justify-content: center; gap: 0.2rem; padding: 0.55rem; border: 1px solid rgb(106 71 49 / 20%); border-radius: 0.75rem; background: #fff9f0; color: var(--cinora-color-ink); cursor: pointer; font: inherit; font-size: 0.83rem; font-weight: 750; transition: border-color 180ms ease, background-color 180ms ease, transform 180ms ease; }
.box-size-picker__options button:hover { transform: translateY(-2px); border-color: var(--cinora-color-accent); }
.box-size-picker__options button[aria-pressed="true"] { border-color: var(--cinora-color-ink); background: var(--cinora-color-ink); color: #fff9f0; }
.box-size-picker__options button span { color: var(--cinora-color-accent); font-size: 0.58rem; }
.box-size-picker__options button[aria-pressed="true"] span { color: #f2c58d; }
.box-size-picker__options--prices button { min-height: 4.9rem; }
.box-size-picker__options--prices button span { color: inherit; font-size: 0.78rem; }
.box-size-picker__options--prices button small { display: block; margin-top: 0.22rem; color: #a86e38; font-size: 0.55rem; font-weight: 700; }
.box-size-picker__options--prices button[aria-pressed="true"] small { color: #f2c58d; }
.box-size-picker__options--prices button strong { font-family: var(--wp--preset--font-family--display); font-size: 1.15rem; font-weight: 400; }
.preset-area { margin-top: 1.3rem; }
.preset-area__heading, .flavor-reference__heading { display: flex; align-items: end; justify-content: space-between; gap: 0.5rem; }
.preset-area__heading .eyebrow { margin: 0; font-size: 0.58rem; }
.preset-area__heading h3, .flavor-reference h3 { margin: 0.18rem 0 0; font-family: var(--wp--preset--font-family--display); font-size: 1.28rem; font-weight: 400; }
.dev-label { flex: 0 0 auto; color: #90633e; font-size: 0.59rem; font-weight: 750; }
.preset-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.55rem; margin-top: 0.65rem; }
.preset-option { display: flex; min-height: 4.25rem; flex-direction: column; align-items: flex-start; gap: 0.3rem; padding: 0.7rem; border: 1px solid rgb(106 71 49 / 20%); border-radius: 0.7rem; background: rgb(255 249 240 / 70%); color: var(--cinora-color-ink); cursor: pointer; text-align: left; font: inherit; }
.preset-option strong { font-size: 0.72rem; }
.preset-option span { color: #715e51; font-size: 0.64rem; line-height: 1.4; }
.preset-option.is-selected { border-color: var(--cinora-color-accent); background: #fff9f0; box-shadow: inset 0 0 0 1px var(--cinora-color-accent); }
.preset-area__note { margin: 0.55rem 0 0; color: #866f5f; font-size: 0.62rem; line-height: 1.45; }
.flavor-reference { margin-top: 1rem; padding-top: 0.8rem; border-top: 1px solid rgb(106 71 49 / 16%); }
.flavor-reference__heading h3 { font-size: 1.05rem; }
.flavor-reference__heading > span { color: #786050; font-size: 0.62rem; }
.flavor-reference ul { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0.35rem; padding: 0; margin: 0.6rem 0 0; list-style: none; }
.flavor-reference li { display: flex; flex-direction: column; gap: 0.2rem; padding: 0.45rem 0.5rem; border-radius: 0.5rem; background: rgb(255 249 240 / 72%); font-size: 0.62rem; }
.flavor-reference li strong { font-size: 0.69rem; }
.flavor-reference > p { margin: 0.45rem 0 0; color: #866f5f; font-size: 0.61rem; }
.selected-box-price { display: flex; justify-content: space-between; align-items: center; margin-top: 0.8rem; padding: 0.75rem 0.9rem; border-bottom: 1px solid rgb(106 71 49 / 18%); color: #715e51; font-size: 0.76rem; }
.selected-box-price strong { color: var(--cinora-color-ink); font-family: var(--wp--preset--font-family--display); font-size: 1.3rem; font-weight: 400; }
.product-detail__note { margin: 0.9rem 0 0; color: #806b5b; font-size: 0.68rem; line-height: 1.5; }
.product-status { display: flex; align-items: center; gap: 0.8rem; max-width: 28rem; margin-top: 1.5rem; padding: 1rem; border: 1px solid rgb(106 71 49 / 16%); border-radius: 0.8rem; background: rgb(255 249 240 / 66%); }
.product-status__mark { display: grid; width: 2.4rem; height: 2.4rem; flex: 0 0 auto; place-items: center; border-radius: 50%; background: var(--cinora-color-ink); color: #fff9f0; font-family: var(--wp--preset--font-family--display); font-size: 1rem; font-style: italic; }
.product-status p { margin: 0; color: #715e51; font-size: 0.75rem; line-height: 1.55; }
.product-status strong { color: var(--cinora-color-ink); }
.products-delivery { padding-block: clamp(2.8rem, 5vw, 4.5rem); background: #ead9c2; }
.products-delivery__inner { display: grid; grid-template-columns: 10rem minmax(0, 1fr) minmax(18rem, 0.9fr); align-items: center; gap: clamp(1.4rem, 4vw, 3.5rem); max-width: 82rem; }
.products-delivery__mark { display: grid; width: 8.5rem; aspect-ratio: 1; place-items: center; border: 1px solid rgb(106 71 49 / 27%); border-radius: 50%; color: #6a4731; font-family: var(--wp--preset--font-family--display); font-size: 1.1rem; letter-spacing: 0.12em; }
.products-delivery .eyebrow { margin: 0 0 0.6rem; }
.products-delivery h2 { margin: 0; font-family: var(--wp--preset--font-family--display); font-size: clamp(2.35rem, 4.2vw, 3.8rem); font-weight: 400; letter-spacing: -0.05em; line-height: 0.97; }
.products-delivery h2 em { color: #a86e38; font-weight: 400; }
.products-delivery__details p { margin: 0; color: #715e51; font-size: 0.84rem; line-height: 1.65; }
.products-delivery__details p + p { margin-top: 0.55rem; }
.products-delivery__details a { display: inline-flex; margin-top: 0.85rem; padding-bottom: 0.16rem; border-bottom: 1px solid currentColor; color: var(--cinora-color-ink); font-size: 0.75rem; font-weight: 750; text-decoration: none; }
.products-delivery__details a:hover { color: #a86e38; }
.products-page :focus-visible { outline: 3px solid var(--cinora-color-accent); outline-offset: 3px; }
@keyframes product-panel-in { from { opacity: 0; transform: translateY(0.65rem); } to { opacity: 1; transform: translateY(0); } }

@media (max-width: 56rem) {
	.products-intro__aside { font-size: 1rem; }
	.products-picker__heading h2 { font-size: clamp(2.4rem, 6vw, 3.6rem); }
	.product-detail__inner { min-height: 0; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); }
	.product-detail__image { min-height: 34rem; }
	.product-detail__content { padding: 1.5rem; }
	.flavor-reference ul { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.products-delivery__inner { grid-template-columns: 7rem minmax(0, 1fr); }
	.products-delivery__mark { width: 6.25rem; }
	.products-delivery__details { grid-column: 2; }
}

@media (max-width: 47.99rem) {
	.products-intro { padding-block: 1.45rem 1.1rem; }
	.products-intro__inner { display: block; }
	.products-intro .eyebrow { margin-bottom: 0.45rem; font-size: 0.62rem; }
	.products-intro h1 { font-size: clamp(3.25rem, 14vw, 4.8rem); }
	.products-intro__copy > p:last-child { max-width: 24rem; margin-top: 0.55rem; font-size: 0.87rem; line-height: 1.5; }
	.products-intro__aside { display: none; }
	.products-picker { padding-block: 1.5rem 2rem; }
	.products-picker__heading { display: block; margin-bottom: 1.05rem; }
	.products-picker__heading .eyebrow { margin-bottom: 0.45rem; font-size: 0.61rem; }
	.products-picker__heading h2 { font-size: clamp(2.05rem, 9vw, 3rem); }
	.products-picker__heading > p { margin-top: 0.55rem; font-size: 0.78rem; }
	.products-picker__grid { grid-template-columns: 1fr; grid-template-rows: none; gap: 0.55rem; }
	.product-choice, .product-choice--rolls { grid-row: auto; min-height: 7.3rem; border-radius: 0.8rem; }
	.product-choice__link { align-items: stretch; }
	.product-choice__link img { width: 42%; object-position: center; }
	.product-choice__veil { left: 35%; background: linear-gradient(90deg, rgb(45 23 15 / 0%), rgb(45 23 15 / 84%) 22%); }
	.product-choice__copy { min-height: 7.3rem; align-items: flex-start; justify-content: center; gap: 0.25rem; padding: 0.7rem 0.8rem 0.7rem 43%; }
	.product-choice__eyebrow { font-size: 0.5rem; letter-spacing: 0.09em; }
	.product-choice__copy strong { font-size: clamp(1.35rem, 6vw, 1.75rem); }
	.product-choice__action { margin-top: 0.15rem; font-size: 0.68rem; }
	.product-choice__tag { top: 0.45rem; right: 0.45rem; padding: 0.25rem 0.45rem; font-size: 0.52rem; }
	.products-picker__note { margin-top: 0.65rem; font-size: 0.6rem; text-align: left; }
	.product-detail__inner { grid-template-columns: 1fr; }
	.product-detail__image { min-height: 0; aspect-ratio: 1.18; }
	.product-detail__image figcaption { right: 0.6rem; bottom: 0.6rem; padding: 0.35rem 0.55rem; font-size: 0.56rem; }
	.product-detail__content { max-width: none; padding: 1.35rem var(--cinora-gutter) 1.7rem; }
	.product-detail__content .eyebrow { font-size: 0.59rem; }
	.product-detail__content h2 { font-size: clamp(2.55rem, 11vw, 3.4rem); }
	.product-detail__lead { margin-top: 0.6rem; font-size: 0.86rem; }
	.product-detail__weight { margin-top: 0.75rem; font-size: 0.72rem; }
	.box-size-picker { margin-top: 1.15rem; }
	.box-size-picker__options { gap: 0.4rem; }
	.box-size-picker__options button { min-height: 3.8rem; padding: 0.45rem 0.2rem; border-radius: 0.6rem; font-size: 0.74rem; }
	.box-size-picker__options button span { font-size: 0.51rem; }
	.box-size-picker__options--prices button { min-height: 4.6rem; }
	.box-size-picker__options--prices button strong { font-size: 1rem; }
	.box-size-picker__options--prices button small { font-size: 0.48rem; }
	.preset-area { margin-top: 1.05rem; }
	.preset-area__heading h3, .flavor-reference h3 { font-size: 1.1rem; }
	.preset-area__heading .eyebrow { font-size: 0.5rem; }
	.dev-label { font-size: 0.53rem; }
	.preset-options { gap: 0.4rem; margin-top: 0.55rem; }
	.preset-option { min-height: 4.5rem; padding: 0.55rem; }
	.preset-option strong { font-size: 0.66rem; }
	.preset-option span { font-size: 0.57rem; }
	.preset-area__note { font-size: 0.56rem; }
	.flavor-reference { margin-top: 0.85rem; padding-top: 0.65rem; }
	.flavor-reference__heading h3 { font-size: 0.94rem; }
	.flavor-reference__heading > span { font-size: 0.54rem; }
	.flavor-reference ul { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.35rem; margin-top: 0.5rem; }
	.flavor-reference li { flex-direction: row; justify-content: space-between; padding: 0.45rem 0.55rem; font-size: 0.65rem; }
	.flavor-reference li strong { font-size: 0.65rem; }
	.flavor-reference > p, .product-detail__note { font-size: 0.58rem; }
	.selected-box-price { margin-top: 0.65rem; }
	.products-delivery { padding-block: 2rem; }
	.products-delivery__inner { grid-template-columns: 3.5rem minmax(0, 1fr); gap: 0.7rem; }
	.products-delivery__mark { width: 3.3rem; font-size: 0.55rem; letter-spacing: 0.08em; }
	.products-delivery .eyebrow { font-size: 0.55rem; }
	.products-delivery h2 { font-size: clamp(1.9rem, 8vw, 2.65rem); }
	.products-delivery__details { grid-column: 1 / -1; }
	.products-delivery__details p { font-size: 0.76rem; }
}
@media (prefers-reduced-motion: reduce) {
	.product-choice__link img, .box-size-picker__options button { transition: none; }
	.product-detail__inner { animation: none; }
}

/* Three-product editorial image rotation in the products page introduction. */
.products-intro__inner { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(18rem, 0.82fr); align-items: center; gap: clamp(2rem, 5vw, 4.5rem); }
.products-intro__copy { min-width: 0; }
.products-intro__visual { min-width: 0; }
.products-intro__visual-stage { position: relative; min-height: 16rem; aspect-ratio: 1.52; overflow: hidden; border-radius: 1.15rem; background: var(--cinora-color-surface-warm); isolation: isolate; }
.products-intro__visual-slide { position: absolute; z-index: 0; inset: 0; opacity: 0; transform: scale(1.015); transition: opacity 700ms ease, transform 1800ms ease; }
.products-intro__visual-slide.is-active { opacity: 1; transform: scale(1.045); }
.products-intro__visual-slide > img { width: 100%; height: 100%; object-fit: cover; }
.products-intro__visual-slide::after { position: absolute; z-index: 1; inset: 35% 0 0; background: linear-gradient(180deg, transparent, rgb(44 24 16 / 75%)); content: ""; }
.products-intro__visual-caption { position: absolute; z-index: 2; right: 1.1rem; bottom: 1rem; left: 1.1rem; display: grid; gap: 0.12rem; color: #fff9f0; pointer-events: none; }
.products-intro__visual-caption .eyebrow { margin: 0; color: #f1c68f; font-size: 0.58rem; letter-spacing: 0.14em; }
.products-intro__visual-caption strong { font-family: var(--wp--preset--font-family--display); font-size: clamp(1.45rem, 2.1vw, 2rem); font-weight: 400; line-height: 1.15; }
.products-intro__visual-toggle { position: absolute; top: 0.75rem; right: 0.75rem; z-index: 3; display: grid; width: 2.5rem; height: 2.5rem; place-items: center; padding: 0; border: 1px solid rgb(255 249 240 / 76%); border-radius: 50%; background: rgb(255 249 240 / 94%); color: var(--cinora-color-ink); cursor: pointer; }
.products-intro__visual-toggle:hover { background: var(--cinora-color-ink); color: var(--cinora-color-background); }
.products-intro__visual-toggle:focus-visible { outline: 0; box-shadow: var(--cinora-focus-ring); }
@media (max-width: 64rem) {
	.products-intro__inner { grid-template-columns: minmax(0, 1.1fr) minmax(16rem, 0.9fr); gap: 1.5rem; }
	.products-intro__visual-stage { min-height: 14rem; }
}
@media (max-width: 44rem) {
	.products-intro__inner { grid-template-columns: 1fr; gap: 1rem; }
	.products-intro__visual-stage { min-height: 0; aspect-ratio: 1.65; border-radius: 0.9rem; }
	.products-intro__visual-caption { right: 0.85rem; bottom: 0.75rem; left: 0.85rem; }
	.products-intro__visual-caption .eyebrow { font-size: 0.52rem; }
	.products-intro__visual-caption strong { font-size: 1.45rem; }
	.products-intro__visual-toggle { top: 0.55rem; right: 0.55rem; width: 2.3rem; height: 2.3rem; }
}
@media (prefers-reduced-motion: reduce) {
	.products-intro__visual-slide { transition: none; transform: none; }
}

/* Cinnamon-roll selection experience */
.product-detail__inner--rolls { grid-template-columns: minmax(0, 0.88fr) minmax(25rem, 1.12fr) minmax(15.5rem, 18rem); align-items: stretch; background: #fbf4e8; }
.product-detail__inner--rolls .product-detail__image { min-height: 42rem; }
.product-detail__inner--rolls .product-detail__content { max-width: none; align-self: stretch; padding: clamp(1.2rem, 2.25vw, 2rem); }
.product-detail__inner--rolls .product-detail__content h2 { font-size: clamp(2.5rem, 3.6vw, 3.6rem); }
.product-detail__inner--rolls .product-detail__lead { margin-top: 0.45rem; font-size: 0.83rem; line-height: 1.5; }
.product-detail__inner--rolls .product-detail__note { padding-top: 0.55rem; border-top: 1px solid rgb(106 71 49 / 15%); font-size: 0.64rem; }
.flavor-picker, .weight-picker { min-width: 0; padding: 0; border: 0; margin: 1rem 0 0; }
.flavor-picker legend, .weight-picker legend { width: 100%; margin-bottom: 0.5rem; color: var(--cinora-color-ink); font-size: 0.78rem; font-weight: 750; }
.flavor-picker legend span { margin-left: 0.35rem; color: #806b5b; font-size: 0.61rem; font-weight: 400; }
.flavor-picker__options { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0.38rem; }
.flavor-option { min-width: 0; padding: 0.3rem; border: 1px solid transparent; border-radius: 0.62rem; background: transparent; color: var(--cinora-color-ink); cursor: pointer; font: inherit; text-align: center; transition: border-color 160ms ease, background-color 160ms ease; }
.flavor-option:hover, .flavor-option:focus-visible { border-color: rgb(169 108 52 / 52%); }
.flavor-option.is-selected { border-color: var(--cinora-color-accent); background: #fff9f0; box-shadow: inset 0 0 0 1px var(--cinora-color-accent); }
.flavor-option img { display: block; width: 100%; aspect-ratio: 1.2; object-fit: cover; border-radius: 0.42rem; }
.flavor-option:nth-child(2) img { object-position: 44% 48%; }
.flavor-option:nth-child(3) img { object-position: 62% 42%; }
.flavor-option:nth-child(4) img { object-position: 48% 60%; }
.flavor-option:nth-child(5) img { object-position: 58% 58%; }
.flavor-option span { display: block; margin-top: 0.23rem; overflow-wrap: anywhere; font-size: 0.6rem; line-height: 1.2; }
.flavor-picker__note { margin: 0.35rem 0 0; color: #8a7462; font-size: 0.56rem; line-height: 1.35; }
.weight-picker { margin-top: 0.8rem; }
.weight-picker__options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.45rem; }
.weight-picker__options button { min-height: 2.9rem; border: 1px solid rgb(106 71 49 / 22%); border-radius: 0.62rem; background: #fff9f0; color: var(--cinora-color-ink); cursor: pointer; font: inherit; font-family: var(--wp--preset--font-family--display); font-size: 1rem; transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease; }
.weight-picker__options button[aria-pressed="true"] { border-color: var(--cinora-color-ink); background: var(--cinora-color-ink); color: #fff9f0; }
.product-detail__inner--rolls .box-size-picker { margin-top: 0.9rem; }
.product-detail__inner--rolls .box-size-picker__options button { min-height: 3.1rem; }
.box-build { margin-top: 1rem; }
.box-build h3 { margin: 0 0 0.48rem; font-family: var(--wp--preset--font-family--display); font-size: 1.22rem; font-weight: 400; }
.box-build__modes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.4rem; }
.box-build__modes button { min-height: 2.7rem; padding: 0.45rem; border: 1px solid rgb(106 71 49 / 20%); border-radius: 0.58rem; background: rgb(255 249 240 / 75%); color: var(--cinora-color-ink); cursor: pointer; font: inherit; font-size: 0.67rem; font-weight: 700; line-height: 1.25; }
.box-build__modes button[aria-pressed="true"] { border-color: var(--cinora-color-accent); background: #fff9f0; box-shadow: inset 0 0 0 1px var(--cinora-color-accent); }
.box-build [hidden] { display: none !important; }
.box-build__preset { min-height: 5rem; display: grid; align-content: center; padding: 0.75rem; margin-top: 0.5rem; border: 1px solid rgb(106 71 49 / 16%); border-radius: 0.62rem; background: #fff9f0; }
.box-build__preset .dev-label { line-height: 1.5; }
.flavor-counts__heading { display: flex; align-items: baseline; justify-content: space-between; gap: 0.5rem; margin: 0.7rem 0 0.4rem; }
.flavor-counts__heading h4 { margin: 0; font-size: 0.68rem; font-weight: 750; }
.flavor-counts__heading span { color: #715e51; font-size: 0.61rem; font-weight: 750; font-variant-numeric: tabular-nums; }
.flavor-counts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.32rem 0.45rem; }
.flavor-count { display: flex; min-width: 0; align-items: center; justify-content: space-between; gap: 0.35rem; padding: 0.3rem 0.35rem 0.3rem 0.52rem; border: 1px solid rgb(106 71 49 / 12%); border-radius: 0.5rem; background: rgb(255 249 240 / 58%); color: var(--cinora-color-ink); font-size: 0.65rem; transition: background-color 150ms ease, border-color 150ms ease; }
.flavor-count.is-focused { border-color: var(--cinora-color-accent); background: #fff9f0; }
.quantity-control { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 0.22rem; }
.quantity-control button { display: grid; width: 1.65rem; height: 1.65rem; place-items: center; border: 1px solid rgb(106 71 49 / 18%); border-radius: 50%; background: #fff9f0; color: var(--cinora-color-ink); cursor: pointer; font: inherit; font-size: 0.8rem; line-height: 1; }
.quantity-control button:hover:not(:disabled) { border-color: var(--cinora-color-accent); background: #f5e7d0; }
.quantity-control button:disabled { cursor: not-allowed; opacity: 0.4; }
.quantity-control output { min-width: 1rem; color: var(--cinora-color-ink); font-size: 0.66rem; font-variant-numeric: tabular-nums; text-align: center; }
.flavor-counts__hint { margin: 0.45rem 0 0; color: #806b5b; font-size: 0.59rem; line-height: 1.4; }
.product-order-summary { min-width: 0; align-self: stretch; padding: 1rem 0.8rem 1rem 0; }
.product-order-summary__details { position: sticky; top: 7.5rem; padding: 0.9rem; border: 1px solid rgb(106 71 49 / 10%); border-radius: 0.9rem; background: rgb(255 252 246 / 92%); box-shadow: 0 12px 32px rgb(70 43 26 / 5%); }
.product-order-summary__details summary { display: flex; align-items: center; justify-content: space-between; gap: 0.5rem; color: var(--cinora-color-ink); cursor: pointer; font-family: var(--wp--preset--font-family--display); font-size: 1.28rem; list-style: none; }
.product-order-summary__details summary::-webkit-details-marker { display: none; }
.product-order-summary__count { color: #9d6639; font-family: var(--wp--preset--font-family--sans); font-size: 0.68rem; font-weight: 750; }
.product-order-summary__facts { padding: 0.6rem 0; margin: 0.5rem 0; border-block: 1px solid rgb(106 71 49 / 12%); }
.product-order-summary__facts div { display: flex; justify-content: space-between; gap: 0.5rem; padding: 0.28rem 0; font-size: 0.65rem; }
.product-order-summary__facts dt { color: #806b5b; }
.product-order-summary__facts dd { margin: 0; color: var(--cinora-color-ink); font-weight: 750; text-align: right; }
.product-order-summary__flavors { display: grid; gap: 0.22rem; color: #715e51; font-size: 0.63rem; }
.product-order-summary__flavors p { display: flex; justify-content: space-between; gap: 0.5rem; margin: 0; }
.product-order-summary__flavors strong { color: var(--cinora-color-ink); font-weight: 700; }
.product-order-summary__price { padding: 0.6rem 0; margin: 0.5rem 0 0; border-top: 1px solid rgb(106 71 49 / 12%); color: #806b5b; font-size: 0.62rem; line-height: 1.45; }
.product-order-summary__submit { display: flex; width: 100%; min-height: 3rem; align-items: center; justify-content: center; gap: 0.55rem; padding: 0.65rem 0.8rem; border: 0; border-radius: 999px; background: var(--cinora-color-ink); color: #fff9f0; cursor: pointer; font: inherit; font-size: 0.72rem; font-weight: 750; }
.product-order-summary__submit:hover:not(:disabled) { background: #8b5734; }
.product-order-summary__submit:disabled { cursor: not-allowed; opacity: 0.45; }
.product-order-summary__notice { margin: 0.55rem 0 0; color: #5e6e3d; font-size: 0.61rem; line-height: 1.4; }
.product-order-summary__notice[hidden] { display: none !important; }
.product-detail__inner--rolls :focus-visible { outline: 3px solid #c8833d; outline-offset: 2px; }

@media (max-width: 75rem) {
	.product-detail__inner--rolls { grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr); }
	.product-detail__inner--rolls .product-detail__image { min-height: 38rem; }
	.product-detail__inner--rolls .product-order-summary { grid-column: 1 / -1; padding: 0 1.2rem 1.2rem; }
	.product-detail__inner--rolls .product-order-summary__details { position: static; display: grid; max-width: none; grid-template-columns: minmax(0, 1.15fr) minmax(15rem, 0.85fr); gap: 0 1.4rem; margin: 0; }
	.product-detail__inner--rolls .product-order-summary__details > summary { grid-column: 1 / -1; }
	.product-detail__inner--rolls .product-order-summary__facts,
	.product-detail__inner--rolls .product-order-summary__flavors { grid-column: 1; }
	.product-detail__inner--rolls .product-order-summary__price,
	.product-detail__inner--rolls .product-order-summary__submit,
	.product-detail__inner--rolls .product-order-summary__notice { grid-column: 2; }
	.product-detail__inner--rolls .product-order-summary__price { align-self: end; margin-top: 0.5rem; }
}
@media (max-width: 47.99rem) {
	.product-detail__inner--rolls { grid-template-columns: 1fr; }
	.product-detail__inner--rolls .product-detail__image { min-height: 0; aspect-ratio: 1.08; }
	.product-detail__inner--rolls .product-detail__content { padding: 1.2rem var(--cinora-gutter) 1rem; }
	.product-detail__inner--rolls .product-detail__content h2 { font-size: clamp(2.4rem, 10vw, 3.1rem); }
	.product-detail__inner--rolls .product-detail__lead { font-size: 0.8rem; }
	.flavor-picker { margin-top: 0.85rem; }
	.flavor-picker legend { font-size: 0.73rem; }
	.flavor-picker legend span { display: block; margin: 0.2rem 0 0; }
	.flavor-picker__options { gap: 0.2rem; }
	.flavor-option { padding: 0.2rem; border-radius: 0.48rem; }
	.flavor-option img { aspect-ratio: 1 / 0.84; border-radius: 0.35rem; }
	.flavor-option span { font-size: clamp(0.48rem, 2.5vw, 0.58rem); }
	.flavor-picker__note { font-size: 0.53rem; }
	.weight-picker { margin-top: 0.68rem; }
	.weight-picker__options button { min-height: 2.7rem; }
	.product-detail__inner--rolls .box-size-picker { margin-top: 0.7rem; }
	.product-detail__inner--rolls .box-size-picker__options button { min-height: 2.9rem; }
	.box-build { margin-top: 0.8rem; }
	.box-build h3 { font-size: 1.12rem; }
	.box-build__modes { gap: 0.32rem; }
	.box-build__modes button { min-height: 2.65rem; font-size: 0.61rem; }
	.flavor-counts { gap: 0.3rem; }
	.flavor-count { padding-left: 0.42rem; font-size: 0.61rem; }
	.quantity-control { gap: 0.14rem; }
	.quantity-control button { width: 1.7rem; height: 1.7rem; }
	.product-order-summary { position: sticky; z-index: 8; bottom: 0; padding: 0.35rem var(--cinora-gutter) max(0.45rem, env(safe-area-inset-bottom)); background: linear-gradient(180deg, rgb(251 244 232 / 0%), #fbf4e8 18%); }
	.product-order-summary__details { padding: 0.65rem 0.75rem; border-radius: 0.72rem; box-shadow: 0 -4px 20px rgb(70 43 26 / 10%); }
	.product-order-summary__details[open] { max-height: 52vh; overflow-y: auto; }
	.product-order-summary__details summary { font-size: 1.08rem; }
	.product-order-summary__details:not([open]) .product-order-summary__facts,
	.product-order-summary__details:not([open]) .product-order-summary__flavors,
	.product-order-summary__details:not([open]) .product-order-summary__price { display: none; }
	.product-order-summary__facts div { font-size: 0.62rem; }
	.product-order-summary__submit { min-height: 2.8rem; }
}
@media (prefers-reduced-motion: reduce) {
	.flavor-option, .weight-picker__options button, .quantity-control button { transition: none; }
}

/* Clear, card-like controls matching the selected CINORA reference */
.product-detail__inner--rolls .box-size-picker__options button { position: relative; min-height: 3.55rem; border-radius: 0.82rem; border-color: rgb(106 71 49 / 22%); background: #fffaf2; font-size: 0.9rem; }
.product-detail__inner--rolls .box-size-picker__options button[aria-pressed="true"] { border-color: #6a4731; background: #6a4731; box-shadow: inset 0 0 0 1px #6a4731; color: #fffaf2; }
.product-detail__inner--rolls .box-size-picker__options button[aria-pressed="true"]::after,
.product-detail__inner--rolls .weight-picker__options button[aria-pressed="true"]::after { position: absolute; top: 50%; right: 0.68rem; display: grid; width: 1.05rem; height: 1.05rem; place-items: center; border-radius: 50%; background: #fffaf2; color: #6a4731; content: "✓"; font-family: var(--wp--preset--font-family--sans); font-size: 0.68rem; font-weight: 800; line-height: 1; transform: translateY(-50%); }
.product-detail__inner--rolls .box-size-picker__options button.is-recommended span { position: absolute; top: -0.55rem; left: 50%; display: inline-flex; min-height: 1.15rem; align-items: center; padding: 0.16rem 0.52rem; border: 1px solid #f6eddf; border-radius: 999px; background: #d99951; color: var(--cinora-color-ink); font-size: 0.53rem; font-weight: 750; white-space: nowrap; transform: translateX(-50%); }
.product-detail__inner--rolls .weight-picker__options button { position: relative; min-height: 3.2rem; border-radius: 0.82rem; background: #fffaf2; font-size: 1.05rem; }
.product-detail__inner--rolls .weight-picker__options button[aria-pressed="true"] { border-color: #6a4731; background: #6a4731; color: #fffaf2; box-shadow: inset 0 0 0 1px #6a4731; }
.box-build__modes button { display: flex; min-height: 4rem; align-items: flex-start; justify-content: flex-start; gap: 0.55rem; padding: 0.65rem 0.7rem; border-radius: 0.78rem; background: #fffaf2; text-align: left; transition: border-color 150ms ease, background-color 150ms ease, box-shadow 150ms ease; }
.box-build__modes button[aria-pressed="true"] { border-color: #d99951; background: var(--cinora-color-background); box-shadow: inset 0 0 0 1px #d99951; }
.build-mode__indicator, .preset-option__indicator { position: relative; display: block; width: 1.05rem; height: 1.05rem; flex: 0 0 auto; border: 1px solid rgb(106 71 49 / 52%); border-radius: 50%; background: #fffaf2; }
.box-build__modes button[aria-pressed="true"] .build-mode__indicator,
.preset-option[aria-pressed="true"] .preset-option__indicator { border-color: #6a4731; background: #6a4731; }
.box-build__modes button[aria-pressed="true"] .build-mode__indicator::after,
.preset-option[aria-pressed="true"] .preset-option__indicator::after { position: absolute; inset: 0.28rem; border-radius: 50%; background: #fffaf2; content: ""; }
.box-build__modes button strong { display: block; font-size: 0.68rem; }
.box-build__modes button small { display: block; margin-top: 0.2rem; color: #806b5b; font-size: 0.57rem; font-weight: 400; line-height: 1.35; }
.box-build__preset { display: block; min-height: 0; padding: 0; border: 0; margin-top: 0.5rem; background: transparent; }
.box-build__preset .preset-options { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.5rem; margin: 0; }
.box-build__preset .preset-option { position: relative; display: grid; min-height: 6.1rem; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 0.22rem 0.5rem; padding: 0.68rem; border-color: rgb(106 71 49 / 18%); border-radius: 0.78rem; background: #fffaf2; text-align: left; transition: border-color 150ms ease, box-shadow 150ms ease, background-color 150ms ease; }
.box-build__preset .preset-option[aria-pressed="true"] { border-color: #d99951; background: var(--cinora-color-background); box-shadow: inset 0 0 0 1px #d99951; }
.preset-option__copy { min-width: 0; }
.box-build__preset .preset-option__copy strong { display: block; font-size: 0.7rem; }
.box-build__preset .preset-option__copy small { display: block; margin-top: 0.28rem; color: #715e51; font-size: 0.59rem; font-weight: 400; line-height: 1.4; }
.preset-option__tag { grid-column: 2; color: #9a6b40; font-size: 0.5rem; font-weight: 700; }
.box-build__preset .preset-area__note { margin: 0.42rem 0 0; font-size: 0.57rem; }

@media (min-width: 48rem) and (max-width: 75rem) {
	.product-detail__inner--rolls .product-order-summary { padding: 0 2rem 1.4rem; }
	.product-detail__inner--rolls .product-order-summary__details { display: grid; max-width: none; grid-template-columns: minmax(0, 1.2fr) minmax(15rem, 0.8fr); gap: 0 1.4rem; margin: 0; padding: 1.15rem 1.25rem; }
	.product-detail__inner--rolls .product-order-summary__details > summary { grid-column: 1 / -1; }
	.product-detail__inner--rolls .product-order-summary__facts { grid-column: 1; }
	.product-detail__inner--rolls .product-order-summary__flavors { grid-column: 1; }
	.product-detail__inner--rolls .product-order-summary__price,
	.product-detail__inner--rolls .product-order-summary__submit,
	.product-detail__inner--rolls .product-order-summary__notice { grid-column: 2; }
	.product-detail__inner--rolls .product-order-summary__price { align-self: end; margin-top: 0.5rem; }
}
@media (max-width: 47.99rem) {
	.box-build__modes button { min-height: 3.75rem; padding: 0.55rem; gap: 0.38rem; }
	.box-build__modes button strong { font-size: 0.61rem; }
	.box-build__modes button small { font-size: 0.52rem; }
	.box-build__preset .preset-options { grid-template-columns: 1fr; gap: 0.38rem; }
	.box-build__preset .preset-option { min-height: 4.5rem; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; }
	.preset-option__tag { grid-column: 3; grid-row: 1; max-width: 4.5rem; text-align: right; }
	.product-detail__inner--rolls .product-order-summary { padding-inline: var(--cinora-gutter); }
	.product-detail__inner--rolls .product-order-summary__details { display: block; }
}

/* Balance the summary across the available panel width on tablet and compact desktop. */
@media (min-width: 48rem) and (max-width: 75rem) {
	.product-detail__inner--rolls .product-order-summary__details { display: block; }
	.product-detail__inner--rolls .product-order-summary__body { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(15rem, 0.85fr); grid-template-areas: "facts price" "flavors price" "flavors action" "flavors notice"; gap: 0 1.4rem; }
	.product-detail__inner--rolls .product-order-summary__body > .product-order-summary__facts { grid-area: facts; }
	.product-detail__inner--rolls .product-order-summary__body > .product-order-summary__flavors { grid-area: flavors; }
	.product-detail__inner--rolls .product-order-summary__body > .product-order-summary__price { grid-area: price; align-self: end; }
	.product-detail__inner--rolls .product-order-summary__body > .product-order-summary__submit { grid-area: action; }
	.product-detail__inner--rolls .product-order-summary__body > .product-order-summary__notice { grid-area: notice; }
}
@media (max-width: 47.99rem) {
	.product-detail__inner--rolls .product-order-summary__body { display: block; }
}

/* Editorial product tiles: food photography carries the card instead of a split color panel. */
.products-picker__grid { grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr); grid-template-rows: repeat(2, minmax(14rem, 1fr)); gap: 0.85rem; }
.product-choice { border-radius: 1.15rem; }
.product-choice--rolls { grid-row: span 2; }
.product-choice__veil { inset: 0; background: linear-gradient(180deg, rgb(42 22 15 / 2%) 22%, rgb(42 22 15 / 76%) 100%); }
.product-choice__copy { align-items: flex-start; justify-content: flex-end; padding: clamp(1.1rem, 2.4vw, 2rem); }
.product-choice__action { display: inline-flex; min-height: 2.45rem; align-items: center; justify-content: center; padding: 0.45rem 1rem; border: 1px solid rgb(255 249 240 / 78%); border-radius: 999px; margin-top: 0.3rem; background: #fff9f0; color: #482817; text-decoration: none; }
.product-choice__tag { z-index: 1; }

/* The shared order panel owns the CTA so it stays visible while its details collapse. */
.product-detail > .product-order-summary { position: relative; z-index: 3; display: grid; max-width: 82rem; grid-template-columns: minmax(0, 1fr) minmax(15rem, 0.42fr); align-items: center; gap: 0.8rem 1.2rem; padding: 1rem clamp(1rem, 4vw, 3rem) 1.2rem; margin: 0 auto; background: #f6eddf; }
.product-detail > .product-order-summary .product-order-summary__details { position: static; min-width: 0; padding: 0.9rem 1rem; margin: 0; border-color: rgb(106 71 49 / 12%); background: #fffaf2; box-shadow: 0 8px 22px rgb(70 43 26 / 5%); }
.product-detail > .product-order-summary .product-order-summary__body { display: grid; gap: 0.6rem; }
.product-order-summary__items { display: grid; gap: 0.45rem; }
.product-order-summary__items > p { margin: 0; color: #806b5b; font-size: 0.72rem; line-height: 1.5; }
.order-item { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; align-items: center; gap: 0.7rem; padding: 0.5rem 0; border-bottom: 1px solid rgb(106 71 49 / 12%); color: var(--cinora-color-ink); }
.order-item__copy { min-width: 0; }
.order-item__copy strong { font-size: 0.75rem; }
.order-item__copy p { margin: 0.18rem 0; color: #715e51; font-size: 0.63rem; line-height: 1.4; }
.order-item__price, .order-item__quantity { color: #715e51; font-size: 0.62rem; }
.order-item__remove { padding: 0.3rem 0.55rem; border: 1px solid rgb(106 71 49 / 18%); border-radius: 999px; background: transparent; color: var(--cinora-color-ink); cursor: pointer; font: inherit; font-size: 0.6rem; }
.product-detail > .product-order-summary .product-order-summary__price { margin: 0; }
.product-detail > .product-order-summary > .product-order-summary__submit { width: 100%; min-height: 3.35rem; border-radius: 999px; box-shadow: 0 6px 16px rgb(70 43 26 / 12%); }
.product-detail > .product-order-summary .product-order-summary__notice { grid-column: 1 / -1; margin: 0; }
.product-order-summary__view { display: inline-flex; min-height: 3.2rem; grid-column: 2; align-items: center; justify-content: space-between; gap: 0.8rem; padding: 0.68rem 1.1rem; border: 1px solid #6a4731; border-radius: 999px; background: #fffaf2; color: #4b2a1e; font-size: 0.78rem; font-weight: 800; text-decoration: none; }
.product-order-summary__view:hover { background: #efdfca; }
.product-order-summary__view[hidden] { display: none; }
.product-detail__draft-price { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 0.3rem 0.8rem; padding-top: 0.7rem; border-top: 1px solid rgb(106 71 49 / 14%); margin: 0.75rem 0 0; color: #715e51; font-size: 0.75rem; }
.product-detail__draft-price strong { color: #4b2a1e; font-family: var(--wp--preset--font-family--display); font-size: 1.3rem; font-weight: 400; }
.product-detail__draft-price span { flex-basis: 100%; font-size: 0.64rem; }
.product-development-note { padding: 0.65rem 0.8rem; border-left: 3px solid #d99951; margin: 0.8rem 0; background: #fff6e9; color: #715e51; font-size: 0.68rem; line-height: 1.5; }
.product-quantity { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-top: 0.8rem; margin-top: 0.8rem; border-top: 1px solid rgb(106 71 49 / 14%); color: var(--cinora-color-ink); font-size: 0.75rem; font-weight: 700; }
.product-quantity .quantity-control button { width: 2rem; height: 2rem; }
.product-detail__inner .product-detail__content .box-size-picker__options button[aria-pressed="true"]::after,
.product-detail__inner .product-detail__content .weight-picker__options button[aria-pressed="true"]::after { position: absolute; top: 0.45rem; right: 0.45rem; display: grid; width: 1.05rem; height: 1.05rem; place-items: center; border-radius: 50%; background: #fffaf2; color: #6a4731; content: "✓"; font-size: 0.68rem; font-weight: 800; line-height: 1; transform: none; }
.product-detail__content .box-size-picker__options button { position: relative; padding-right: 2rem; }
.product-size-picker .weight-picker__options button { position: relative; }
.product-size-picker .weight-picker__options button[aria-pressed="true"]::after { content: none; display: none; }

.product-order-actions {
	position: sticky;
	z-index: 12;
	bottom: 0;
	display: grid;
	max-width: 74rem;
	grid-template-columns: minmax(14rem, 1fr) auto;
	align-items: center;
	gap: 0.55rem 0.8rem;
	padding: 0.8rem clamp(1rem, 4vw, 3.25rem) max(0.85rem, env(safe-area-inset-bottom));
	margin-inline: auto;
	border-top: 1px solid rgb(106 71 49 / 12%);
	background: rgb(246 237 223 / 96%);
	backdrop-filter: blur(10px);
}
.product-order-actions .product-order-summary__submit { min-height: 3.1rem; }
.product-order-actions .product-order-summary__view { min-height: 3.1rem; grid-column: auto; }
.product-order-actions .product-order-summary__notice { grid-column: 1 / -1; margin: 0; }

/* Flavor names are the control; repeated concept photos added noise and implied false variants. */
.flavor-picker__options { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.flavor-option {
	display: grid;
	min-height: 2.8rem;
	place-items: center;
	padding: 0.55rem 0.6rem;
	border-color: rgb(106 71 49 / 18%);
	background: #fffaf2;
}
.flavor-option span { margin: 0; font-size: 0.68rem; font-weight: 700; }

@media (max-width: 47.99rem) {
	.products-picker__grid { grid-template-columns: 1fr; grid-template-rows: none; gap: 0.7rem; }
	.product-choice, .product-choice--rolls { min-height: 0; border-radius: 1rem; }
	.product-choice--rolls .product-choice__link { min-height: 18rem; }
	.product-choice--brownies .product-choice__link { min-height: 14.5rem; }
	.product-choice--cookies .product-choice__link { min-height: 14.5rem; }
	.product-choice__link img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
	.product-choice__veil { left: 0; background: linear-gradient(180deg, rgb(42 22 15 / 0%) 20%, rgb(42 22 15 / 78%) 100%); }
	.product-choice__copy { min-height: inherit; padding: 1rem; }
	.product-choice__eyebrow { font-size: 0.54rem; }
	.product-choice__copy strong { font-size: clamp(1.7rem, 8vw, 2.4rem); }
	.product-choice__action { min-height: 2.2rem; margin-top: 0.18rem; font-size: 0.66rem; }
	.product-detail > .product-order-summary { position: sticky; bottom: 0; grid-template-columns: minmax(0, 1fr); gap: 0.4rem; padding: 0.4rem var(--cinora-gutter) max(0.5rem, env(safe-area-inset-bottom)); background: linear-gradient(180deg, rgb(251 244 232 / 0%), #fbf4e8 14%); }
	.product-detail > .product-order-summary .product-order-summary__details { max-height: 48vh; overflow-y: auto; padding: 0.65rem 0.8rem; border-radius: 0.78rem; }
	.product-detail > .product-order-summary .product-order-summary__details[open] { max-height: 44vh; }
	.product-detail > .product-order-summary > .product-order-summary__submit { min-height: 3rem; }
	.product-detail > .product-order-summary { grid-template-columns: minmax(0, 1fr) auto; }
	.product-detail > .product-order-summary .product-order-summary__details { grid-column: 1 / -1; }
	.product-detail > .product-order-summary > .product-order-summary__submit { grid-column: 1; }
	.product-order-summary__view { min-height: 3rem; grid-column: 2; padding-inline: 0.9rem; font-size: 0.69rem; }
	.product-order-summary__items { max-height: 26vh; overflow: auto; }
	.order-item { grid-template-columns: minmax(0, 1fr) auto; gap: 0.4rem; }
	.order-item__remove { grid-column: 2; grid-row: 1 / span 2; }
}

/* Selected campaign composition: featured bundle followed by three companions. */
.campaigns-section {
	--campaign-panel: color-mix(in srgb, var(--cinora-color-ink) 25%, #24130c);
	padding-block: clamp(3.5rem, 6vw, 5.5rem);
	background: var(--cinora-color-background);
	color: var(--cinora-color-ink);
}

.campaigns-section__inner { max-width: 82rem; }
.campaigns-section__heading { display: flex; align-items: end; justify-content: space-between; gap: 2rem; }
.campaigns-section__heading > div { max-width: 56rem; }
.campaigns-section__heading .eyebrow { margin: 0 0 0.55rem; color: var(--cinora-color-ink); }
.campaigns-section__heading h2 { margin: 0; font-family: var(--wp--preset--font-family--display); font-size: clamp(2.75rem, 5.4vw, 4.75rem); font-weight: 400; letter-spacing: -0.055em; line-height: 0.96; }
.campaigns-section__heading h2 em { color: var(--cinora-color-accent); font-weight: 400; }
.campaigns-section__lead { max-width: 37rem; margin: 0.8rem 0 0; color: color-mix(in srgb, var(--cinora-color-ink) 72%, transparent); font-size: 0.96rem; line-height: 1.55; }
.campaigns-section__notice { max-width: 15rem; padding: 0; margin: 0 0 0.35rem; background: transparent; color: #806b58; font-size: 0.72rem; line-height: 1.5; text-align: right; }
.campaign-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin-top: 1.8rem; }
.campaign-card { min-width: 0; overflow: hidden; border: 0; border-radius: 1rem; background: color-mix(in srgb, var(--cinora-color-background) 62%, var(--cinora-color-surface-warm)); box-shadow: none; }
.campaign-card--featured { display: grid; grid-column: 1 / -1; grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr); border-radius: 1.25rem; background: var(--campaign-panel); color: var(--cinora-color-background); }
.campaign-card__art { position: relative; display: grid; min-width: 0; min-height: 9.5rem; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 1fr; gap: 0.2rem; overflow: hidden; background: #e2c8a8; }
.campaign-card--featured .campaign-card__art { min-height: 20rem; grid-template-columns: 1fr; grid-template-rows: 1fr; }
.campaign-card--three-images:not(.campaign-card--featured) .campaign-card__art { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.campaign-card__art img { width: 100%; height: 100%; min-height: 0; object-fit: cover; }
.campaign-card__art img:only-of-type { grid-column: 1 / -1; }
.campaign-card__badge { display: inline-flex; align-self: flex-start; padding: 0.38rem 0.7rem; margin-bottom: 0.7rem; border-radius: 999px; background: var(--cinora-color-accent); color: var(--cinora-color-ink); font-size: 0.63rem; font-weight: 800; letter-spacing: 0.06em; }
.campaign-card__content { display: flex; min-width: 0; flex: 1; flex-direction: column; align-items: stretch; padding: 1.15rem 1.25rem 1.2rem; }
.campaign-card--featured .campaign-card__content { justify-content: center; padding: clamp(1.4rem, 3vw, 2.6rem); background: var(--campaign-panel); color: var(--cinora-color-background); }
.campaign-card__label { margin: 0 0 0.35rem; color: var(--cinora-color-accent); font-size: 0.6rem; font-weight: 800; letter-spacing: 0.12em; }
.campaign-card--featured .campaign-card__label { color: var(--cinora-color-accent); }
.campaign-card h3 { margin: 0; font-family: var(--wp--preset--font-family--display); font-size: clamp(1.5rem, 2.25vw, 2rem); font-weight: 400; letter-spacing: -0.035em; line-height: 1.05; }
.campaign-card--featured h3 { font-size: clamp(2rem, 3vw, 2.8rem); }
.campaign-card__items { display: grid; gap: 0.36rem; padding: 0; margin: 0.8rem 0 1rem; color: color-mix(in srgb, var(--cinora-color-ink) 77%, transparent); font-size: 0.78rem; line-height: 1.4; list-style: none; }
.campaign-card--featured .campaign-card__items { gap: 0.4rem; margin-block: 0.9rem 1rem; color: var(--cinora-color-background); font-size: 0.82rem; }
.campaign-card__items li { display: flex; align-items: baseline; gap: 0.55rem; }
.campaign-card__items li::before { width: 0.32rem; height: 0.32rem; flex: 0 0 auto; border-radius: 50%; background: var(--cinora-color-accent); content: ""; }
.campaign-card__footer { display: flex; width: 100%; align-items: end; justify-content: space-between; gap: 0.8rem; padding-top: 0.85rem; margin-top: auto; border-top: 1px solid color-mix(in srgb, var(--cinora-color-ink) 14%, transparent); }
.campaign-card__status { margin: 0; color: inherit; font-size: 0.76rem; line-height: 1.45; }
.campaign-card--featured .campaign-card__footer { border-color: rgb(255 248 236 / 30%); }
.campaign-card__prices { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: 0.08rem; padding: 0; border: 0; }
.campaign-card__prices p { display: flex; align-items: baseline; gap: 0.45rem; margin: 0; }
.campaign-card__prices .campaign-card__regular > span,
.campaign-card__prices .campaign-card__offer > span { display: none; }
.campaign-card__prices .campaign-card__regular > span { color: #8b7865; font-size: 0.64rem; }
.campaign-card__prices del { color: #8e7964; font-size: 0.78rem; }
.campaign-card__prices .campaign-card__offer { flex-direction: column; align-items: flex-start; gap: 0; }
.campaign-card__prices .campaign-card__offer > span { color: #8b7865; font-size: 0.59rem; }
.campaign-card__prices strong { color: var(--cinora-color-accent); font-size: clamp(1.45rem, 2vw, 1.9rem); font-weight: 750; line-height: 1.05; white-space: nowrap; }
.campaign-card--featured .campaign-card__prices .campaign-card__regular > span,
.campaign-card--featured .campaign-card__prices del,
.campaign-card--featured .campaign-card__prices .campaign-card__offer > span { color: #dbc4ab; }
.campaign-card--featured .campaign-card__prices strong { color: var(--cinora-color-accent); font-size: clamp(1.8rem, 2.5vw, 2.25rem); }
.campaign-card:not(.campaign-card--featured) .campaign-card__prices { flex-direction: row; align-items: baseline; gap: 0.45rem; }
.campaign-card:not(.campaign-card--featured) .campaign-card__prices .campaign-card__offer { flex-direction: row; align-items: baseline; }
.campaign-card:not(.campaign-card--featured) .campaign-card__prices strong { font-size: clamp(1.2rem, 1.5vw, 1.55rem); }
.campaign-card__cta { display: inline-flex; min-height: 2.65rem; flex: 0 0 auto; align-items: center; justify-content: center; gap: 0.8rem; padding: 0.58rem 1rem; margin: 0; border: 0; border-radius: 999px; background: var(--cinora-color-accent); color: var(--cinora-color-ink); font-size: 0.73rem; font-weight: 800; text-decoration: none; transition: transform var(--cinora-transition), background-color var(--cinora-transition); }
.campaign-card__cta:hover { transform: translateY(-1px); background: color-mix(in srgb, var(--cinora-color-accent) 86%, white); color: var(--cinora-color-ink); }
.campaign-card__cta span { color: inherit; font-size: 1rem; }
.campaign-card--featured .campaign-card__cta { min-width: 10rem; }

@media (max-width: 47.99rem) {
	.campaigns-section { padding-block: 3.2rem; }
	.campaigns-section__heading { align-items: flex-start; flex-direction: column; gap: 0.7rem; }
	.campaigns-section__heading h2 { font-size: clamp(2.55rem, 10vw, 3.45rem); }
	.campaigns-section__lead { margin-top: 0.6rem; font-size: 0.88rem; }
	.campaigns-section__notice { max-width: none; margin: 0; font-size: 0.68rem; text-align: left; }
	.campaign-grid { grid-template-columns: minmax(0, 1fr); gap: 0.7rem; margin-top: 1.2rem; }
	.campaign-card--featured { grid-template-columns: minmax(0, 1fr); }
	.campaign-card--featured .campaign-card__art { min-height: 13rem; max-height: 16rem; }
	.campaign-card--featured .campaign-card__content { padding: 1.1rem 1.15rem 1.2rem; }
	.campaign-card__badge { margin-bottom: 0.45rem; }
	.campaign-card--featured h3 { font-size: 2rem; }
	.campaign-card__items { gap: 0.3rem; margin-block: 0.65rem 0.8rem; font-size: 0.74rem; }
	.campaign-card--featured .campaign-card__items { font-size: 0.76rem; }
	.campaign-card__footer { gap: 0.45rem; padding-top: 0.65rem; }
	.campaign-card__prices .campaign-card__regular > span,
	.campaign-card__prices .campaign-card__offer > span { font-size: 0.55rem; }
	.campaign-card__prices strong { font-size: 1.35rem; }
	.campaign-card__cta { min-height: 2.45rem; gap: 0.45rem; padding-inline: 0.75rem; font-size: 0.68rem; }
	.campaign-card--featured .campaign-card__prices strong { font-size: 1.75rem; }
	.campaign-card--featured .campaign-card__cta { min-width: 8.5rem; }
	.campaign-card:not(.campaign-card--featured) { display: grid; grid-template-columns: minmax(6rem, 0.72fr) minmax(0, 1.28fr); border-radius: 0.85rem; }
	.campaign-card:not(.campaign-card--featured) .campaign-card__art { min-height: 100%; max-height: none; grid-template-columns: 1fr; grid-auto-rows: minmax(0, 1fr); }
	.campaign-card--three-images:not(.campaign-card--featured) .campaign-card__art { grid-template-columns: 1fr; }
	.campaign-card:not(.campaign-card--featured) .campaign-card__content { padding: 0.7rem 0.72rem; }
	.campaign-card:not(.campaign-card--featured) .campaign-card__label { font-size: 0.5rem; letter-spacing: 0.08em; }
	.campaign-card:not(.campaign-card--featured) h3 { font-size: 1.2rem; }
	.campaign-card:not(.campaign-card--featured) .campaign-card__items { gap: 0.18rem; margin-block: 0.38rem 0.5rem; font-size: 0.63rem; line-height: 1.3; }
	.campaign-card:not(.campaign-card--featured) .campaign-card__items li { gap: 0.3rem; }
	.campaign-card:not(.campaign-card--featured) .campaign-card__items li::before { width: 0.25rem; height: 0.25rem; }
	.campaign-card:not(.campaign-card--featured) .campaign-card__footer { gap: 0.35rem; padding-top: 0.45rem; }
	.campaign-card:not(.campaign-card--featured) .campaign-card__prices { flex-direction: column; align-items: flex-start; gap: 0; }
	.campaign-card:not(.campaign-card--featured) .campaign-card__prices .campaign-card__offer { flex-direction: row; align-items: baseline; }
	.campaign-card:not(.campaign-card--featured) .campaign-card__prices del { font-size: 0.6rem; }
	.campaign-card:not(.campaign-card--featured) .campaign-card__prices strong { font-size: 1.15rem; }
	.campaign-card:not(.campaign-card--featured) .campaign-card__cta { width: 2.1rem; min-width: 2.1rem; min-height: 2.1rem; padding: 0; border-radius: 50%; font-size: 0; }
	.campaign-card:not(.campaign-card--featured) .campaign-card__cta span { font-size: 0.95rem; }
}

/* Keep all categories visible while options open beneath them. */
.products-intro__inner { display: block; }
.product-detail { margin-top: clamp(1.2rem, 2.7vw, 2.2rem); overflow: clip; border: 1px solid rgb(106 71 49 / 12%); border-radius: 1.1rem; box-shadow: 0 0.6rem 1.8rem rgb(70 43 26 / 6%); }
.product-choice--seasonal { grid-column: 1 / -1; grid-row: auto; min-height: 11rem; border: 1px solid rgb(134 87 34 / 30%); background: linear-gradient(105deg, #e2b76c, #f3dba9 52%, #d7a451); }
.product-choice--seasonal .product-choice__link { color: #4c2b18; }
.product-choice--seasonal .product-choice__link img { inset: 0 0 0 auto; width: min(45%, 32rem); height: 100%; object-fit: cover; object-position: 78% 52%; }
.product-choice--seasonal .product-choice__veil { inset-inline-start: 30%; background: linear-gradient(90deg, #e2b76c 0%, rgb(226 183 108 / 86%) 23%, rgb(226 183 108 / 0%) 100%); }
.product-choice--seasonal .product-choice__copy { justify-content: center; width: 64%; min-height: 11rem; padding-block: 1rem; }
.product-choice--seasonal .product-choice__eyebrow { color: #68401f; }
.product-choice--seasonal .product-choice__copy strong { color: #482819; font-size: clamp(1.8rem, 3.3vw, 2.7rem); }
.product-choice--seasonal .product-choice__action { border-color: rgb(72 40 25 / 55%); }
.product-choice--seasonal .product-choice__tag { background: #fff6e4; color: #68401f; }
.product-choice--seasonal.is-active { outline-color: #a36b27; }
.product-detail__inner--seasonal { background: #f2dfb9; }
.product-detail__inner--seasonal .product-detail__content { max-width: none; padding-inline: clamp(1.4rem, 4vw, 3.2rem); }
.product-detail__image--seasonal { display: grid; place-items: center; min-height: 28rem; background: linear-gradient(145deg, #f8edda, #e8c77f); }
.product-detail__image--seasonal img { min-height: 0; width: 100%; height: 100%; object-fit: cover; object-position: 76% 52%; }
.product-detail__image--seasonal figcaption { background: #fff9f0; }
.seasonal-price-note { padding: 0.65rem 0.8rem; margin: 0.8rem 0 0; border-left: 3px solid #be8737; background: rgb(255 249 240 / 65%); color: #735432; font-size: 0.68rem; line-height: 1.45; }
.seasonal-offer-picker { margin-top: 1rem; }
.seasonal-offer-picker .box-size-picker__options { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.seasonal-offer-picker .box-size-picker__options button { min-height: 4.6rem; }
.seasonal-offer-picker .box-size-picker__options button[aria-pressed="true"] { border-color: #906122; background: #906122; color: #fff9f0; }
.seasonal-offer-picker .box-size-picker__options button[aria-pressed="true"] strong { color: #fff9f0; }
.seasonal-offer-picker .box-size-picker__options button span { font-size: 0.66rem; }
.seasonal-offer-picker .box-size-picker__options button strong { color: #56371d; font-size: 1.05rem; }
@media (max-width: 47.99rem) {
	.product-choice--seasonal { min-height: 7.8rem; }
	.product-choice--seasonal .product-choice__copy { width: 72%; min-height: 7.8rem; padding: 0.7rem 0.8rem; }
	.product-choice--seasonal .product-choice__link img { width: 39%; }
	.product-choice--seasonal .product-choice__veil { inset-inline-start: 35%; }
	.product-choice--seasonal .product-choice__copy strong { font-size: 1.5rem; }
	.product-choice--seasonal .product-choice__eyebrow { font-size: 0.46rem; }
	.product-choice--seasonal .product-choice__action { font-size: 0.6rem; }
	.product-detail { margin-top: 1rem; border-radius: 0.85rem; }
	.seasonal-offer-picker .box-size-picker__options { grid-template-columns: 1fr; }
	.seasonal-offer-picker .box-size-picker__options button { min-height: 3.7rem; }
	.seasonal-offer-picker .box-size-picker__options button span { font-size: 0.68rem; }
	.seasonal-price-note { font-size: 0.61rem; }
}

/* Product selector + compact option drawer, approved November 2026. */
.products-picker__grid {
	grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr);
	grid-template-rows: repeat(3, minmax(9.2rem, 1fr));
}
.product-choice--rolls { grid-row: span 3; }
.product-choice--seasonal {
	grid-column: 2;
	grid-row: auto;
	min-height: 9.2rem;
	border: 1px solid rgb(150 98 30 / 48%);
	background: #d9a951;
	box-shadow: inset 0 0 0 1px rgb(255 238 189 / 32%);
}
.product-choice__link {
	padding: 0;
	border: 0;
	background: transparent;
	cursor: pointer;
	font: inherit;
	text-align: left;
}
.product-choice--seasonal .product-choice__link { color: #fff9ef; }
.product-choice--seasonal .product-choice__link img { inset: 0; width: 100%; }
.product-choice--seasonal .product-choice__veil {
	inset: 0;
	background: linear-gradient(180deg, rgb(74 39 15 / 3%) 16%, rgb(85 45 15 / 83%) 100%);
}
.product-choice--seasonal .product-choice__copy {
	width: 100%;
	min-height: inherit;
	justify-content: flex-end;
	padding: clamp(1rem, 2vw, 1.55rem);
}
.product-choice--seasonal .product-choice__eyebrow { color: #ffd889; }
.product-choice--seasonal .product-choice__copy strong { color: #fff9ef; font-size: clamp(1.55rem, 2.5vw, 2.2rem); }
.product-choice--seasonal .product-choice__action { border-color: #fff4d5; background: #fff4dc; color: #5b321a; }
.product-choice--seasonal .product-choice__tag { background: #f6d78c; color: #5b321a; }

.product-detail {
	position: relative;
	max-height: min(70vh, 45rem);
	overflow-x: hidden;
	overflow-y: auto;
	overscroll-behavior: contain;
	background: #f6eddf;
	scrollbar-color: #b47a43 #f4e6d4;
}
.product-detail__close {
	position: sticky;
	z-index: 20;
	top: 0.55rem;
	display: grid;
	width: 2.35rem;
	height: 2.35rem;
	place-items: center;
	padding: 0;
	border: 1px solid rgb(106 71 49 / 18%);
	border-radius: 50%;
	margin: 0.55rem 0.55rem -2.9rem auto;
	background: rgb(255 250 242 / 94%);
	box-shadow: 0 0.35rem 1rem rgb(70 43 26 / 10%);
	color: var(--cinora-color-ink);
	cursor: pointer;
	font: inherit;
	font-size: 1.5rem;
	line-height: 1;
}
.product-detail__inner,
.product-detail__inner--rolls {
	min-height: 0;
	grid-template-columns: minmax(0, 1fr);
}
.product-detail__image,
.product-detail__inner--rolls .product-detail__image,
.product-detail__image--seasonal { display: none; }
.product-detail__content,
.product-detail__inner--rolls .product-detail__content,
.product-detail__inner--seasonal .product-detail__content {
	width: 100%;
	max-width: 74rem;
	align-self: auto;
	padding: clamp(1.25rem, 2.8vw, 2.1rem) clamp(1rem, 4vw, 3.25rem) 1.4rem;
	margin-inline: auto;
}
.product-detail__content h2,
.product-detail__inner--rolls .product-detail__content h2 { font-size: clamp(2.1rem, 4vw, 3.35rem); }
.product-detail > .product-order-summary {
	position: sticky;
	z-index: 12;
	bottom: 0;
	border-top: 1px solid rgb(106 71 49 / 12%);
	background: rgb(246 237 223 / 96%);
	backdrop-filter: blur(10px);
}

@media (max-width: 47.99rem) {
	.products-picker { padding-block: 1.2rem 1.7rem; }
	.products-picker__heading { margin-bottom: 0.75rem; }
	.products-picker__heading h2 { font-size: clamp(1.85rem, 8.4vw, 2.65rem); }
	.products-picker__heading > p { font-size: 0.7rem; line-height: 1.45; }
	.products-picker__grid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		grid-template-rows: none;
		gap: 0.55rem;
	}
	.products-picker__grid > .product-choice { order: var(--mobile-card-order, 0); }
	.product-choice,
	.product-choice--rolls,
	.product-choice--seasonal {
		grid-column: auto;
		grid-row: auto;
		min-height: 8.6rem;
		border-radius: 0.78rem;
	}
	.product-choice__link,
	.product-choice--rolls .product-choice__link,
	.product-choice--brownies .product-choice__link,
	.product-choice--cookies .product-choice__link {
		display: grid;
		min-height: 8.6rem;
		grid-template-rows: 5.35rem minmax(0, 1fr);
		background: #f7ecdb;
		color: var(--cinora-color-ink);
	}
	.product-choice__link img,
	.product-choice--seasonal .product-choice__link img {
		position: relative;
		z-index: 0;
		inset: auto;
		width: 100%;
		height: 5.35rem;
		object-fit: cover;
	}
	.product-choice__veil { display: none; }
	.product-choice__copy,
	.product-choice--seasonal .product-choice__copy {
		position: relative;
		z-index: 1;
		display: grid;
		width: 100%;
		min-height: 0;
		align-content: center;
		justify-items: center;
		gap: 0.24rem;
		padding: 0.38rem 0.25rem 0.45rem;
		text-align: center;
	}
	.product-choice__eyebrow,
	.product-choice__tag { display: none; }
	.product-choice__copy strong,
	.product-choice--seasonal .product-choice__copy strong {
		color: var(--cinora-color-ink);
		font-size: clamp(0.72rem, 3.1vw, 0.88rem);
		line-height: 1.05;
	}
	.product-choice__action,
	.product-choice--seasonal .product-choice__action {
		display: inline-flex;
		min-height: 1.45rem;
		align-items: center;
		padding: 0.2rem 0.48rem;
		border: 0;
		border-radius: 999px;
		margin: 0;
		background: #6a4731;
		color: #fff9f0;
		font-size: 0.48rem;
		line-height: 1;
	}
	.product-choice--seasonal { border-color: #b47a29; background: #f0c873; }
	.product-choice--seasonal .product-choice__link { background: linear-gradient(180deg, #f4d993, #e9bd62); }
	.product-choice.is-active {
		outline: 2px solid #c78c3f;
		outline-offset: -2px;
		background: #efd49d;
		box-shadow: 0 0.5rem 1.15rem rgb(111 72 39 / 16%);
	}
	.product-choice.is-active .product-choice__link { background: linear-gradient(180deg, #f6ead4, #efd49d); }
	.product-choice.is-active img { filter: saturate(0.92) sepia(0.08); }
	.products-picker__note { margin-top: 0.5rem; font-size: 0.52rem; }

	.product-detail {
		max-height: min(64svh, 35rem);
		margin-top: 0.75rem;
		border-radius: 0.95rem;
		box-shadow: 0 0.8rem 2.2rem rgb(70 43 26 / 12%);
	}
	.product-detail__close { width: 2rem; height: 2rem; margin: 0.42rem 0.42rem -2.45rem auto; font-size: 1.28rem; }
	.product-detail__content,
	.product-detail__inner--rolls .product-detail__content,
	.product-detail__inner--seasonal .product-detail__content { padding: 0.85rem 0.72rem 0.8rem; }
	.product-detail__content .eyebrow { margin-bottom: 0.25rem; font-size: 0.48rem; }
	.product-detail__content h2,
	.product-detail__inner--rolls .product-detail__content h2 { padding-right: 2.4rem; font-size: 1.55rem; }
	.product-detail__lead { margin-top: 0.3rem; font-size: 0.67rem; line-height: 1.38; }
	.flavor-picker { margin-top: 0.55rem; }
	.flavor-picker legend,
	.weight-picker legend,
	.box-size-picker legend { margin-bottom: 0.32rem; font-size: 0.64rem; }
	.flavor-picker legend span,
	.flavor-picker__note,
	.product-development-note { display: none; }
	.flavor-picker__options { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.3rem; }
	.flavor-option { min-height: 2.35rem; padding: 0.4rem 0.35rem; }
	.flavor-option span { font-size: 0.58rem; }
	.weight-picker { margin-top: 0.5rem; }
	.weight-picker__options { gap: 0.28rem; }
	.weight-picker__options button { min-height: 2.35rem; font-size: 0.78rem; }
	.box-size-picker,
	.product-detail__inner--rolls .box-size-picker { margin-top: 0.58rem; }
	.box-size-picker__options { gap: 0.28rem; }
	.box-size-picker__options button,
	.product-detail__inner--rolls .box-size-picker__options button { min-height: 2.7rem; font-size: 0.65rem; }
	.box-size-picker__options--prices button { min-height: 3.35rem; }
	.box-build { margin-top: 0.58rem; }
	.box-build h3 { margin-bottom: 0.3rem; font-size: 0.92rem; }
	.box-build__modes { gap: 0.25rem; }
	.box-build__modes button { min-height: 3.1rem; padding: 0.42rem; }
	.box-build__modes button small { display: none; }
	.flavor-counts { gap: 0.22rem; }
	.flavor-count { padding-block: 0.22rem; font-size: 0.54rem; }
	.quantity-control button { width: 1.55rem; height: 1.55rem; }
	.product-quantity { padding-top: 0.5rem; margin-top: 0.5rem; }
	.product-order-actions {
		grid-template-columns: minmax(0, 1fr) auto;
		padding: 0.45rem 0.72rem max(0.55rem, env(safe-area-inset-bottom));
	}
	.product-order-actions .product-order-summary__submit,
	.product-order-actions .product-order-summary__view { min-height: 2.75rem; }
	.product-order-actions .product-order-summary__view { padding-inline: 0.8rem; font-size: 0.66rem; }
	.seasonal-offer-picker .box-size-picker__options { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.seasonal-offer-picker .box-size-picker__options button { min-height: 3.3rem; padding-inline: 0.18rem; }
	.seasonal-offer-picker .box-size-picker__options button span { font-size: 0.5rem; }
	.seasonal-offer-picker .box-size-picker__options button strong { font-size: 0.78rem; }

	.campaign-card,
	.campaign-card:not(.campaign-card--featured),
	.campaign-card--featured {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		border-radius: 0.95rem;
	}
	.campaign-card__art,
	.campaign-card--featured .campaign-card__art,
	.campaign-card:not(.campaign-card--featured) .campaign-card__art,
	.campaign-card--three-images:not(.campaign-card--featured) .campaign-card__art {
		width: 100%;
		min-height: 0;
		height: 10.5rem;
		max-height: none;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		grid-template-rows: 1fr;
		grid-auto-rows: 1fr;
	}
	.campaign-card__art img,
	.campaign-card__art img:only-of-type { grid-column: auto; width: 100%; height: 10.5rem; }
	.campaign-card__art img:only-of-type { grid-column: 1 / -1; }
	.campaign-card__content,
	.campaign-card:not(.campaign-card--featured) .campaign-card__content,
	.campaign-card--featured .campaign-card__content { padding: 0.9rem 1rem 1rem; }
	.campaign-card:not(.campaign-card--featured) h3 { font-size: 1.55rem; }
	.campaign-card:not(.campaign-card--featured) .campaign-card__items { gap: 0.25rem; margin-block: 0.55rem 0.7rem; font-size: 0.7rem; }
	.campaign-card:not(.campaign-card--featured) .campaign-card__footer { padding-top: 0.65rem; }
}

@media (max-width: 23rem) {
	.products-picker__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Final one-size catalog: selection is communicated by color, not a checkmark over copy. */
.product-detail__content .box-size-picker__options button[aria-pressed="true"]::after,
.product-detail__inner--rolls .box-size-picker__options button[aria-pressed="true"]::after {
	display: none !important;
	content: none !important;
}
.product-detail__content .box-size-picker__options button { padding-right: 0.55rem; }
.box-build__single { margin-top: 0.55rem; }
.box-build__preset .preset-option__copy b {
	display: block;
	margin-top: 0.42rem;
	color: #9c5f24;
	font-family: var(--wp--preset--font-family--display);
	font-size: 1rem;
	font-weight: 500;
}
.box-build__preset .preset-option[aria-pressed="true"] .preset-option__copy b { color: #6a4731; }
.preset-option--recommended { border-color: rgb(201 139 64 / 52%) !important; }
