/*
 * BIMBEA Studio v91.4
 * Adaptive desktop layer.
 *
 * The original v91 remains the mobile visual contract. These rules only take
 * effect on laptop/desktop viewports and intentionally preserve the same DOM,
 * content, WooCommerce data and interactions.
 */

body.bimbea-v91 #vp-bar {
	display: none !important;
}

@media (min-width: 960px) {
	body.bimbea-v91.vp {
		--desktop-edge: clamp(76px, 7vw, 128px);
		--desktop-card: clamp(720px, 72vw, 1020px);
		--map-rail: 42px;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		background-attachment: fixed;
		box-shadow: none !important;
	}

	body.bimbea-v91.vp .site-header {
		left: 0 !important;
		width: 100% !important;
		height: 64px;
		grid-template-columns: 1fr auto 1fr;
		gap: 24px;
		padding: 0 clamp(30px, 4vw, 72px);
		transform: none !important;
	}

	body.bimbea-v91.vp .logo {
		font-size: 1rem;
		letter-spacing: .34em;
	}

	body.bimbea-v91.vp .header-location {
		width: min(34vw, 410px);
		max-width: 410px;
		padding: 9px 18px;
	}

	body.bimbea-v91.vp .header-location em {
		font-size: .54rem;
	}

	body.bimbea-v91.vp .header-location span {
		font-size: .76rem;
	}

	body.bimbea-v91.vp .header-icons {
		justify-self: end;
		gap: 18px;
	}

	body.bimbea-v91.vp .icon-btn {
		font-size: 1.38rem;
	}

	body.bimbea-v91.vp .welcome-strip {
		top: 64px;
		right: 0 !important;
		left: 0 !important;
		width: 100% !important;
	}

	body.bimbea-v91.vp .welcome-strip__content {
		padding-inline: var(--desktop-edge);
	}

	body.bimbea-v91.vp .welcome-strip__eyebrow {
		font-size: .58rem;
	}

	body.bimbea-v91.vp .welcome-strip__message {
		font-size: 1.15rem;
	}

	body.bimbea-v91.vp:not(.welcome-minimized):not(.product-page) #experience > .environment:first-child {
		padding-top: calc(64px + var(--welcome-height) + 20px);
	}

	body.bimbea-v91.vp.welcome-minimized:not(.product-page) #experience > .environment:first-child {
		padding-top: 84px;
	}

	body.bimbea-v91.vp .vertical-map {
		top: 50%;
		left: clamp(12px, 1.35vw, 24px) !important;
		width: 28px;
		gap: 3px;
		transform: translateY(-47%);
	}

	body.bimbea-v91.vp .map-dot {
		width: 24px;
		height: 24px;
		flex-basis: 24px;
		font-size: .5rem;
	}

	body.bimbea-v91.vp .map-dot span {
		width: 19px;
		height: 19px;
	}

	body.bimbea-v91.vp .map-drawer {
		top: 76px;
		left: 22px;
		width: min(420px, 36vw);
		max-height: calc(100dvh - 96px);
		padding: 18px;
		border-radius: 22px;
	}

	body.bimbea-v91.vp .map-drawer-list {
		gap: 7px;
	}

	body.bimbea-v91.vp .map-drawer-link {
		grid-template-columns: 145px 1fr;
		padding: 10px 12px;
	}

	body.bimbea-v91.vp .map-drawer-link span {
		font-size: .5rem;
	}

	body.bimbea-v91.vp .map-drawer-link strong {
		font-size: .83rem;
	}

	body.bimbea-v91.vp .environment,
	body.bimbea-v91.vp .emotional-pause,
	body.bimbea-v91.vp .blog-invite,
	body.bimbea-v91.vp .special-section {
		width: 100% !important;
		scroll-margin-top: 64px;
	}

	body.bimbea-v91.vp .environment {
		height: 100svh;
		min-height: 760px;
		max-height: none;
		padding: 84px 0 18px var(--desktop-edge);
	}

	body.bimbea-v91.vp .env-kicker {
		margin-bottom: 7px;
		font-size: .66rem;
		letter-spacing: .22em;
	}

	body.bimbea-v91.vp .env-title {
		max-width: calc(100% - var(--desktop-edge));
		margin-bottom: 8px;
		font-size: clamp(2.35rem, 3.8vw, 4.35rem);
		letter-spacing: -.055em;
	}

	body.bimbea-v91.vp .env-intro {
		max-width: 680px;
		margin-bottom: 14px;
		font-size: .86rem;
		line-height: 1.45;
	}

	body.bimbea-v91.vp .carousel-container {
		width: calc(100vw - var(--desktop-edge)) !important;
		gap: 0;
		padding: 4px max(24px, calc((100vw - var(--desktop-card)) / 2 - var(--desktop-edge))) 13px;
		scroll-padding-inline: max(24px, calc((100vw - var(--desktop-card)) / 2 - var(--desktop-edge)));
	}

	body.bimbea-v91.vp .product-unit {
		min-width: var(--desktop-card);
		grid-template-rows: minmax(0, 1fr);
		grid-template-columns: minmax(300px, .92fr) minmax(390px, 1.08fr);
		border-radius: 26px;
		box-shadow: 0 24px 65px rgba(45, 31, 25, .12);
	}

	body.bimbea-v91.vp .product-unit.is-active {
		box-shadow: 0 30px 80px rgba(45, 31, 25, .18);
		transform: translateY(-3px);
	}

	body.bimbea-v91.vp .product-visual {
		border-radius: 25px 0 0 25px;
	}

	body.bimbea-v91.vp .product-visual img.contain,
	body.bimbea-v91.vp .card-media-main img.contain {
		padding: 18px;
	}

	body.bimbea-v91.vp .offer-badge {
		top: 14px;
		left: 14px;
		padding: 7px 11px;
		font-size: .61rem !important;
	}

	body.bimbea-v91.vp .fav-btn {
		top: 13px;
		right: 13px;
		width: 39px;
		height: 39px;
		font-size: 1.18rem;
	}

	body.bimbea-v91.vp .product-info {
		padding: 15px 20px 16px;
	}

	body.bimbea-v91.vp .card-media-nav {
		min-height: 38px;
		gap: 6px;
		margin: 0 0 9px;
	}

	body.bimbea-v91.vp .card-media-thumb {
		flex-basis: 38px;
		width: 38px;
		height: 32px;
		border-radius: 7px;
	}

	body.bimbea-v91.vp .card-media-count {
		font-size: .62rem;
	}

	body.bimbea-v91.vp .product-name {
		margin-bottom: 5px;
		font-size: clamp(1.35rem, 1.8vw, 1.8rem);
	}

	body.bimbea-v91.vp .product-phrase {
		margin-bottom: 8px;
		font-size: .76rem;
		line-height: 1.38;
	}

	body.bimbea-v91.vp .product-price {
		margin-bottom: 7px;
		font-size: 1.12rem;
	}

	body.bimbea-v91.vp .free-shipping {
		padding: 5px 9px;
		font-size: .55rem;
	}

	body.bimbea-v91.vp .delivery-clarity {
		gap: 4px;
		margin-bottom: 7px;
		padding: 8px 10px;
		font-size: .57rem;
	}

	body.bimbea-v91.vp .delivery-clarity strong {
		font-size: .6rem;
	}

	body.bimbea-v91.vp .purchase-options {
		gap: 4px;
		margin-bottom: 8px;
	}

	body.bimbea-v91.vp .option-label,
	body.bimbea-v91.vp .option-label--wide {
		min-height: 37px;
		padding: 5px 10px;
		font-size: .61rem;
	}

	body.bimbea-v91.vp .option-meta {
		font-size: .52rem;
	}

	body.bimbea-v91.vp .option-subtotal,
	body.bimbea-v91.vp .option-savings {
		font-size: .56rem;
	}

	body.bimbea-v91.vp .btn-main {
		min-height: 43px;
		font-size: .66rem;
	}

	body.bimbea-v91.vp .coupon-inline summary,
	body.bimbea-v91.vp .details-link {
		font-size: .58rem;
	}

	body.bimbea-v91.vp .accordions summary {
		font-size: .6rem;
	}

	body.bimbea-v91.vp .accordions p {
		font-size: .58rem;
	}

	body.bimbea-v91.vp .mini-review-link {
		font-size: .51rem;
	}

	body.bimbea-v91.vp .gap-nav {
		min-width: 76px;
	}

	body.bimbea-v91.vp .gap-nav button {
		width: 30px;
		height: 38px;
		font-size: 1.15rem;
	}

	body.bimbea-v91.vp .progress-indicator {
		min-height: 25px;
		padding-right: var(--desktop-edge);
		font-size: .61rem;
	}

	body.bimbea-v91.vp .emotional-pause {
		min-height: 86svh;
		padding: 110px var(--desktop-edge) 90px;
	}

	body.bimbea-v91.vp .pause-index {
		top: 46px;
		left: var(--desktop-edge);
		font-size: .7rem;
	}

	body.bimbea-v91.vp .pause-content {
		max-width: 720px;
	}

	body.bimbea-v91.vp .emotional-pause h2 {
		font-size: clamp(3.6rem, 6vw, 6.5rem);
	}

	body.bimbea-v91.vp .emotional-pause p {
		max-width: 580px;
		font-size: 1.02rem;
	}

	body.bimbea-v91.vp .blog-invite,
	body.bimbea-v91.vp .special-section {
		min-height: 100svh;
		padding: clamp(100px, 10vh, 150px) max(var(--desktop-edge), calc((100vw - 1320px) / 2));
	}

	body.bimbea-v91.vp .blog-invite {
		grid-template-columns: minmax(0, 1fr) minmax(410px, .78fr);
		grid-template-rows: auto auto auto auto;
		align-content: center;
		column-gap: clamp(52px, 8vw, 128px);
		row-gap: 18px;
	}

	body.bimbea-v91.vp .blog-kicker {
		grid-column: 1;
		grid-row: 1;
		font-size: .67rem;
	}

	body.bimbea-v91.vp .blog-invite h2 {
		grid-column: 1;
		grid-row: 2;
		max-width: 700px;
		font-size: clamp(3.5rem, 5.6vw, 6.2rem);
	}

	body.bimbea-v91.vp .blog-invite > p {
		grid-column: 1;
		grid-row: 3;
		max-width: 650px;
		font-size: .98rem;
	}

	body.bimbea-v91.vp .blog-form {
		grid-column: 2;
		grid-row: 1 / span 3;
		width: 100%;
		max-width: 560px;
		align-self: center;
		gap: 10px;
	}

	body.bimbea-v91.vp .blog-disclaimer {
		grid-column: 2;
		grid-row: 4;
		max-width: 560px;
		font-size: .62rem;
	}

	body.bimbea-v91.vp .gift-choices {
		max-width: none;
		gap: 10px;
	}

	body.bimbea-v91.vp .gift-choice {
		padding: 15px;
	}

	body.bimbea-v91.vp .gift-choice strong {
		font-size: 1.03rem;
	}

	body.bimbea-v91.vp .gift-choice small {
		font-size: .65rem;
	}

	body.bimbea-v91.vp .special-kicker {
		font-size: .67rem;
	}

	body.bimbea-v91.vp .special-section h2 {
		max-width: 860px;
		font-size: clamp(3.5rem, 5.7vw, 6.3rem);
	}

	body.bimbea-v91.vp .special-lead {
		max-width: 760px;
		font-size: .98rem;
	}

	body.bimbea-v91.vp .best-seller-rail {
		width: 100% !important;
		gap: 16px;
		padding: 6px 0 18px;
		scroll-padding-inline: 0;
	}

	body.bimbea-v91.vp .best-card {
		min-width: clamp(330px, 29vw, 430px);
		grid-template-columns: 124px 1fr;
		gap: 14px;
		padding: 13px;
		border-radius: 18px;
	}

	body.bimbea-v91.vp .best-card img {
		width: 124px;
		height: 138px;
		border-radius: 13px;
	}

	body.bimbea-v91.vp .best-card strong {
		font-size: 1.02rem;
	}

	body.bimbea-v91.vp .best-card span {
		font-size: .72rem;
	}

	body.bimbea-v91.vp .problem-search,
	body.bimbea-v91.vp .request-form {
		width: min(100%, 820px);
		max-width: 820px;
	}

	body.bimbea-v91.vp .search-field {
		padding: 9px;
		border-radius: 18px;
	}

	body.bimbea-v91.vp .search-field input {
		min-height: 50px;
		padding: 11px;
		font-size: .9rem;
	}

	body.bimbea-v91.vp .search-field button {
		padding-inline: 22px;
		font-size: .66rem;
	}

	body.bimbea-v91.vp .problem-chips button {
		padding: 9px 13px;
		font-size: .63rem;
	}

	body.bimbea-v91.vp .search-result {
		grid-template-columns: 70px 1fr auto;
		padding: 10px;
	}

	body.bimbea-v91.vp .search-result img {
		width: 70px;
		height: 70px;
	}

	body.bimbea-v91.vp .catalog-controls {
		width: 100%;
		max-width: 1280px;
		gap: 13px;
	}

	body.bimbea-v91.vp .catalog-filter-row {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 10px;
	}

	body.bimbea-v91.vp .catalog-filter-row select:last-child {
		grid-column: auto;
	}

	body.bimbea-v91.vp .catalog-filter-row select {
		min-height: 48px;
		padding: 10px 12px;
		font-size: .69rem;
	}

	body.bimbea-v91.vp .catalog-status-summary {
		font-size: .61rem;
	}

	body.bimbea-v91.vp .catalog-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 14px;
		max-width: 1280px;
	}

	body.bimbea-v91.vp .catalog-card {
		padding: 11px;
		border-radius: 16px;
	}

	body.bimbea-v91.vp .catalog-card img {
		height: clamp(150px, 15vw, 220px);
		border-radius: 11px;
	}

	body.bimbea-v91.vp .catalog-card small {
		font-size: .51rem;
	}

	body.bimbea-v91.vp .catalog-card strong {
		font-size: .9rem;
	}

	body.bimbea-v91.vp .catalog-card span {
		font-size: .67rem;
	}

	body.bimbea-v91.vp .catalog-card button {
		padding: 9px 12px;
		font-size: .58rem;
	}

	body.bimbea-v91.vp .catalog-more {
		max-width: 1280px;
		min-height: 48px;
		font-size: .68rem;
	}

	body.bimbea-v91.vp .request-form {
		gap: 12px;
	}

	body.bimbea-v91.vp .request-form label {
		font-size: .68rem;
	}

	body.bimbea-v91.vp .request-form input,
	body.bimbea-v91.vp .request-form textarea {
		min-height: 48px;
		font-size: .78rem;
	}

	body.bimbea-v91.vp .request-form textarea {
		min-height: 108px;
	}

	body.bimbea-v91.vp .request-submit {
		min-height: 49px;
		font-size: .68rem;
	}

	body.bimbea-v91.vp .help-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 14px;
		max-width: 1280px;
	}

	body.bimbea-v91.vp .help-card {
		gap: 8px;
		padding: 16px;
		border-radius: 16px;
	}

	body.bimbea-v91.vp .help-card strong {
		font-size: 1.02rem;
	}

	body.bimbea-v91.vp .help-card p {
		font-size: .68rem;
	}

	body.bimbea-v91.vp .general-faq {
		max-width: 900px;
	}

	body.bimbea-v91.vp .general-faq summary {
		font-size: .78rem;
	}

	body.bimbea-v91.vp .general-faq p {
		font-size: .72rem;
	}

	body.bimbea-v91.vp .cart-panel,
	body.bimbea-v91.vp .favorites-panel {
		width: min(500px, 38vw);
		padding: 26px;
	}

	body.bimbea-v91.vp .save-panel,
	body.bimbea-v91.vp .checkout-panel,
	body.bimbea-v91.vp .profile-panel {
		top: 50%;
		bottom: auto;
		width: min(760px, 86vw);
		max-height: 88dvh;
		padding: 18px 24px 26px;
		border: 1px solid rgba(255, 255, 255, .82);
		border-radius: 26px;
		transform: translate(-50%, calc(-50% + 110vh));
	}

	body.bimbea-v91.vp .save-panel.open,
	body.bimbea-v91.vp .checkout-panel.open,
	body.bimbea-v91.vp .profile-panel.open {
		transform: translate(-50%, -50%);
	}

	body.bimbea-v91.vp .product-sheet {
		bottom: 5dvh;
		width: min(1180px, 92vw);
		height: min(90dvh, 900px);
		border: 1px solid rgba(255, 255, 255, .85);
		border-radius: 28px;
		transform: translate(-50%, calc(100% + 8dvh));
	}

	body.bimbea-v91.vp .product-sheet.open {
		transform: translate(-50%, 0);
	}

	body.bimbea-v91.vp .sheet-scroll {
		padding: 18px 24px 30px;
	}

	body.bimbea-v91.vp .sheet-content-inner {
		display: grid;
		grid-template-columns: minmax(0, 1.08fr) minmax(390px, .92fr);
		column-gap: 30px;
		align-items: start;
	}

	body.bimbea-v91.vp .sheet-content-inner > .sheet-gallery {
		position: sticky;
		top: 0;
		grid-column: 1;
		grid-row: 1 / span 30;
	}

	body.bimbea-v91.vp .sheet-content-inner > :not(.sheet-gallery) {
		grid-column: 2;
	}

	body.bimbea-v91.vp .sheet-main-media {
		min-height: 470px;
	}

	body.bimbea-v91.vp .sheet-main-media img,
	body.bimbea-v91.vp .sheet-main-media video,
	body.bimbea-v91.vp .sheet-main-media model-viewer,
	body.bimbea-v91.vp .sheet-main-media iframe {
		min-height: 470px;
		max-height: 610px;
	}

	body.bimbea-v91.vp .sheet-heading {
		margin-top: 0;
	}

	body.bimbea-v91.vp .sheet-title {
		font-size: clamp(1.8rem, 2.3vw, 2.7rem);
	}

	body.bimbea-v91.vp .sheet-price {
		font-size: 1.3rem;
	}

	body.bimbea-v91.vp .sheet-summary,
	body.bimbea-v91.vp .sheet-section p {
		font-size: .82rem;
	}

	body.bimbea-v91.vp .sheet-section h3 {
		font-size: .75rem;
	}

	body.bimbea-v91.vp .dedicated-product {
		padding: 90px var(--desktop-edge) 60px;
	}

	body.bimbea-v91.vp .dedicated-product .sheet-scroll {
		max-width: 1280px;
	}

	body.bimbea-v91.vp .dedicated-product .sheet-content-inner {
		grid-template-columns: minmax(0, 1.05fr) minmax(420px, .82fr);
		column-gap: clamp(34px, 5vw, 76px);
	}

	body.bimbea-v91.vp .dedicated-product .sheet-content-inner > .sheet-gallery {
		top: 80px;
	}

	body.bimbea-v91.vp .dedicated-product .sheet-main-media,
	body.bimbea-v91.vp .dedicated-product .sheet-main-media img,
	body.bimbea-v91.vp .dedicated-product .sheet-main-media video,
	body.bimbea-v91.vp .dedicated-product .sheet-main-media model-viewer,
	body.bimbea-v91.vp .dedicated-product .sheet-main-media iframe {
		min-height: 520px;
		max-height: 690px;
	}

	body.bimbea-v91.vp .bimbea-variation-fields,
	body.bimbea-v91.vp .bimbea-fulfillment-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.bimbea-v91.vp .bimbea-variation-fields select {
		min-height: 42px;
		font-size: .68rem;
	}

	body.bimbea-v91.vp .toast {
		right: 28px;
		bottom: 26px;
		left: auto;
		width: min(430px, 38vw);
		font-size: .78rem;
	}
}

@media (min-width: 960px) and (max-height: 820px) {
	body.bimbea-v91.vp .environment {
		min-height: 720px;
		padding-top: 74px;
	}

	body.bimbea-v91.vp .env-title {
		font-size: clamp(2.1rem, 3.2vw, 3.45rem);
	}

	body.bimbea-v91.vp .env-intro {
		margin-bottom: 8px;
	}

	body.bimbea-v91.vp .product-info {
		padding-block: 11px;
	}

	body.bimbea-v91.vp .product-name {
		font-size: 1.28rem;
	}

	body.bimbea-v91.vp .product-phrase {
		font-size: .68rem;
	}
}

@media (min-width: 1440px) {
	body.bimbea-v91.vp {
		--desktop-card: min(1040px, 72vw);
	}

	body.bimbea-v91.vp .catalog-grid {
		grid-template-columns: repeat(4, minmax(250px, 1fr));
	}
}
