/* Native product identity: seal range takes priority over parent food category. */
@font-face { font-family:"Abril Fatface"; src:url("../fonts/abril-fatface.woff2") format("woff2"); font-weight:400; font-style:normal; font-display:swap; }
@font-face { font-family:"Decimal Mono Pro"; src:url("/wp-content/uploads/et-fonts/DecimaMonoProLt.otf") format("opentype"); font-weight:400; font-style:normal; font-display:swap; }
#main-content.vz-product-page { padding:0; background:#334549; }
.vz-product { --panel:#334549; --accent:#bfa588; --copy:#fff; --button:#bfa588; margin:0!important; color:var(--copy); background:var(--panel); }
.vz-product.vz-range-summus { --panel:#110204; --accent:#e9c36d; --button:radial-gradient(circle,#c27020,#e9c36d); }
.vz-product.vz-range-suprema,.vz-product.vz-range-ibericos { --panel:radial-gradient(circle at 50% 46%,#882b3e 46%,#682134 100%); }
.vz-product.vz-range-seleccion { --panel:radial-gradient(circle at 50% 48%,#bfa588 48%,#a38c78 100%); --accent:#334549; --copy:#202a2c; --button:#334549; }
.vz-product-layout { display:grid; grid-template-columns:1fr 1fr; align-items:start; }
.vz-product-gallery { position:relative; background:#110204; }
.vz-product-gallery .dsc-product-gallery::after { content:none!important; }
.vz-product-gallery>a { display:block; }
.vz-product-gallery>a>img { width:100%; height:auto; display:block; }
.vz-product-gallery .vz-product-seal { position:absolute; top:120px; right:24px; width:clamp(86px,9vw,145px); height:auto; animation:vz-product-stamp 760ms cubic-bezier(.2,.82,.24,1) both; }
#main-content .vz-product-summary { width:auto; float:none; margin:0; padding:100px clamp(48px,6vw,104px); position:sticky; top:0; min-width:0; min-height:100svh; box-sizing:border-box; display:flex; flex-direction:column; justify-content:center; }
.vz-product-summary .woocommerce-breadcrumb { font:400 14px/1.6 "Decimal Mono Pro",monospace; color:var(--copy); margin-bottom:26px; }
.vz-product-summary .woocommerce-breadcrumb a { color:inherit; text-decoration:underline; }
.vz-product-range { color:var(--accent); font:400 13px/1.4 "Decimal Mono Pro",monospace; letter-spacing:.2em; text-transform:uppercase; padding:0 0 0 38px; background:linear-gradient(var(--accent),var(--accent)) left center/24px 1px no-repeat; margin-bottom:17px; }
#main-content .vz-product h1 { font:400 clamp(44px,3.25vw,54px)/.98 "Abril Fatface",Georgia,serif; color:#fff; padding:0; margin:0 0 16px; letter-spacing:-.018em; }
#main-content .vz-product .price { font:400 25px/1.2 "Abril Fatface",Georgia,serif; letter-spacing:normal; color:var(--accent); margin:0 0 23px; }
#main-content .vz-product form.cart { display:flex; gap:16px; flex-wrap:wrap; align-items:center; margin:0 0 30px; }
#main-content .vz-product form.variations_form { display:block; }
#main-content .vz-product .single_add_to_cart_button { display:inline-flex!important; align-items:center; justify-content:center; color:#fff!important; background:var(--button)!important; border:1px solid var(--accent)!important; border-radius:8px; padding:16px 24px!important; font:400 18px/1.5 "Decimal Mono Pro",monospace!important; flex:1; min-height:58px; }
#main-content .vz-product .single_add_to_cart_button::after { content:''!important; position:static!important; display:block; width:0; height:8px; border:0; opacity:0; margin:0!important; transform:rotate(-45deg); transition:width .2s,margin .2s,opacity .2s; }
#main-content .vz-product .single_add_to_cart_button:hover::after { width:8px; border-right:1.5px solid; border-bottom:1.5px solid; transform:rotate(-45deg); opacity:1; margin-left:14px!important; }
#main-content .vz-range-summus .single_add_to_cart_button { color:#110204!important; }
.vz-product .quantity { display:flex; align-items:center; gap:0; float:none!important; margin:0!important; border:1px solid var(--accent); border-radius:8px; overflow:hidden; flex-shrink:0; background:transparent; }
#main-content .vz-product .quantity input { width:46px; height:56px; min-height:0; padding:0; font:400 14px/1 "Decimal Mono Pro",monospace; text-align:center; background:transparent; color:var(--copy); border:0; border-inline:1px solid color-mix(in srgb,var(--accent) 40%,transparent); border-radius:0; appearance:textfield; -moz-appearance:textfield; box-shadow:none; }
#main-content .vz-product .quantity input::-webkit-inner-spin-button,#main-content .vz-product .quantity input::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
#main-content .vz-product .qty-btn { width:36px; height:56px; min-height:0; padding:0; display:grid; place-items:center; font:400 20px/1 sans-serif; color:var(--accent); background:color-mix(in srgb,var(--accent) 8%,transparent); border:0; border-radius:0; cursor:pointer; transition:background .2s; }
#main-content .vz-product .qty-btn:hover { background:color-mix(in srgb,var(--accent) 22%,transparent); }
#main-content .vz-product .quantity :focus-visible { outline-offset:-4px; }
.vz-product .woocommerce-product-details__short-description { border-top:1px solid var(--accent); padding-top:24px; }
.vz-product .woocommerce-product-details__short-description,.vz-product .woocommerce-product-details__short-description p { font:400 14px/1.7 "Decimal Mono Pro",monospace; color:var(--copy); }
.vz-product .product_meta { font:400 14px/1.6 "Decimal Mono Pro",monospace; margin-top:24px; }
.vz-product .product_meta>span { display:block; }
.vz-product .product_meta a { color:var(--copy); text-decoration:underline; }
.vz-product-summary>.stock { display:none; }
.vz-product-summary-inner { width:100%; max-width:560px; margin:auto; }
.vz-product-summary-inner>.stock { display:none; }
.vz-product-details { background:#f6eee0; color:#202a2c; padding:48px max(24px,7vw); font:400 14px/1.7 "Decimal Mono Pro",monospace; }
.vz-product-details:empty { display:none; }
.vz-product-details h2 { font:400 30px/1.2 "Abril Fatface",Georgia,serif; }
.vz-product select { font-size:14px; max-width:100%; }
.vz-product :focus-visible { outline:2px solid currentColor; outline-offset:4px; }
@keyframes vz-product-stamp { from { opacity:0; transform:translate(18px,-18px) rotate(16deg) scale(.48); } 68% { opacity:1; transform:rotate(-2deg) scale(1.08); } to { opacity:1; transform:none; } }
@media(max-width:980px) { .vz-product-layout { grid-template-columns:1fr; } .vz-product-gallery>a>img { max-height:75svh; object-fit:contain; } #main-content .vz-product-summary { position:static; min-height:0; padding:44px 22px 52px; } #main-content .vz-product h1 { font-size:clamp(36px,9vw,46px); line-height:1; } .vz-product-gallery .vz-product-seal { top:100px; right:20px; } }
@media(prefers-reduced-motion:reduce) { .vz-product-seal { animation:none!important; } }

/* Imported pack details share the established product typography. */
.vz-product-pack { margin:28px 0 30px; }
#main-content .vz-product-pack p { font:400 16px/1.7 "Decimal Mono Pro",monospace; letter-spacing:.07em; text-transform:uppercase; color:var(--copy); margin:0 0 8px; padding:0; }
