@font-face{font-family:Catalog;src:url('assets/narrow.ttf')}@font-face{font-family:Catalog;src:url('assets/narrow-bold.ttf');font-weight:700}:root{--ink:#303344;--slate:#4e5065;--muted:#777985;--paper:#fafaf9;--line:#e6e6e8;--accent:#d93883}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font:16px Arial,sans-serif}button,input,select{font:inherit}button,a,select{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ce369a;outline-offset:4px}a{color:inherit}header{height:98px;display:flex;align-items:center;gap:34px;padding:0 4%;background:white;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.brand{display:flex;align-items:center;width:195px;text-decoration:none}.brand img{max-height:72px;max-width:195px;object-fit:contain;display:none}#brand-fallback{font:bold 38px Catalog,Arial;letter-spacing:-1px}.dots{display:block;font:9px Arial;letter-spacing:6px;color:#d93883}.edition{font-size:12px;letter-spacing:2px;color:var(--muted);line-height:1.7}.edition b{display:block;color:var(--ink);font-size:17px}.search{display:flex;align-items:center;gap:12px;background:#f5f5f5;border:1px solid #e5e5e7;border-radius:6px;padding:13px 16px;width:min(470px,45%);margin-left:auto}.search input{background:none;border:0;outline:none!important;width:100%;font-size:14px;color:var(--ink)}kbd{border:1px solid #dedee1;border-radius:3px;padding:1px 5px;color:#92929a}.draft{background:#f1eff4;padding:9px 4%;font-size:12px;font-weight:700;letter-spacing:.2px}.draft span{font-weight:400;margin-left:14px;color:#646471}.layout{display:grid;grid-template-columns:245px 1fr;max-width:1700px;margin:auto}aside{padding:35px 24px 0 28px;border-right:1px solid var(--line)}.side-top{font-size:10px;letter-spacing:1.6px;color:#898993;margin-bottom:20px;font-weight:700}nav{display:flex;flex-direction:column;gap:3px}nav button{background:none;border:none;padding:12px 12px;text-align:left;border-radius:5px;display:flex;justify-content:space-between;align-items:center;color:#656571;font-size:13px;line-height:1.4}nav button span{font-size:11px;color:#94949d}nav button:hover{background:#efeff1}nav button.active{background:var(--slate);color:white}nav button.active span{color:#d4d4de}.side-note{margin-top:40px;padding:23px 12px;border-top:1px solid var(--line);font:20px Catalog}.side-note p{font:13px/1.7 Arial;color:var(--muted)}.tiny-waves{display:block;color:#d93883;font-size:50px;line-height:1;margin-bottom:16px}main{padding:39px 4.1% 0;min-width:0}.intro{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:28px;overflow:hidden}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#8c8d96;margin:0 0 14px}h1{font:700 52px/1 Catalog,Arial;margin:0;letter-spacing:-1.2px}h1 span{color:var(--accent)}#subtitle{font-size:14px;color:var(--muted);margin:15px 0 0;line-height:1.6}.intro-mark{display:flex;transform:rotate(-20deg);padding:0 14px;margin-right:30px}.intro-mark i{height:87px;width:26px;border-radius:45%;margin-left:-7px;opacity:.7;background:#e75999}.intro-mark i:nth-child(2){background:#e8b52f}.intro-mark i:nth-child(3){background:#49c8b0}.intro-mark i:nth-child(4){background:#7f79c8}.toolbar{display:flex;justify-content:space-between;align-items:center;padding:19px 0 24px;font-size:12px;color:#7e7f88}.toolbar p{margin:0}.toolbar select{font-size:12px;padding:8px;border:none;background:none;color:var(--ink);margin-left:6px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:25px;row-gap:34px}.card{border:0;background:none;color:inherit;text-align:left;padding:0 0 22px;min-width:0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;width:100%}.visual{position:relative;aspect-ratio:1.17;width:100%;display:flex;align-items:center;justify-content:center;isolation:isolate;overflow:hidden}.visual:before{content:'';position:absolute;width:79%;aspect-ratio:1;border-radius:50%;background:var(--slate);z-index:-1;transition:transform .3s}.visual img{width:84%;height:88%;object-fit:contain;transition:transform .3s}.visual.chart:before{display:none}.visual.chart{background:#f0f0ef;border-radius:5px}.visual.chart img{height:88%;width:88%;object-fit:contain}.tag{font-size:10px;text-transform:uppercase;letter-spacing:1.1px;color:#9999a0;margin:17px 0 8px}.card h2{font:700 21px/1.15 Catalog;margin:0 0 9px;min-height:48px}.card .info{font-size:12px;line-height:1.55;color:#71727d;margin:0 0 17px;min-height:36px}.card .bottom{display:flex;justify-content:space-between;align-items:flex-end;width:100%;margin-top:auto}.price{font:700 25px Catalog;letter-spacing:-.4px}.price.consult{font-size:19px;font-weight:400}.reference{font-size:10px;letter-spacing:.4px;color:#92939b;margin-top:5px}.arrow{border:1px solid #d8d9df;border-radius:50%;width:31px;height:31px;display:grid;place-items:center;font-size:18px;transition:.2s}.card:hover .arrow{background:var(--slate);color:white;border-color:var(--slate)}.more{display:block;margin:35px auto;padding:13px 25px;border:1px solid #bfc0c7;background:none;border-radius:5px;font-size:14px;color:var(--ink)}.more span{margin-left:28px}footer{margin:65px -4.5% 0;padding:35px 5% 0;background:#f2f2f1;position:relative;overflow:hidden}footer b{font:700 28px Catalog}footer p{font:22px Catalog}footer small{font-size:11px;color:var(--muted)}.rainbow{height:70px;margin:25px -7% 0;background:linear-gradient(100deg,#d24c9b,#ec9276,#e8cc4c,#a5d274,#65c4ba,#698ac6,#9978bb);clip-path:polygon(0 55%,15% 70%,30% 95%,45% 75%,65% 15%,83% 0,100% 20%,100% 100%,0 100%)}#mobile-cats{display:none}[hidden]{display:none!important}#empty{text-align:center;padding:70px 15px}#empty h2{font:30px Catalog}#empty button{background:var(--slate);color:white;border:0;padding:12px 20px;border-radius:4px}dialog{padding:0;border:0;border-radius:12px;width:min(930px,94vw);max-height:90vh;color:var(--ink);box-shadow:0 30px 100px #1115}dialog::backdrop{background:#252735b5;backdrop-filter:blur(4px)}.close{position:absolute;right:15px;top:15px;z-index:3;width:35px;height:35px;border:1px solid #dadbe0;border-radius:50%;background:white;font-size:26px;line-height:1;color:var(--ink)}#detail-body{display:grid;grid-template-columns:1fr 1fr}.detail-visual{background:#f4f4f4;padding:45px 25px;display:flex;align-items:center;justify-content:center;min-height:390px}.detail-visual img{width:100%;max-height:470px;object-fit:contain}.detail-copy{padding:48px 30px 35px}.detail-copy h2{font:700 31px/1.12 Catalog;margin:8px 0 15px}.detail-copy .price{font-size:32px;margin:23px 0 10px}.detail-copy .spec{font-size:15px;line-height:1.7;border-top:1px solid var(--line);padding-top:18px}.detail-copy .muted{font-size:12px;line-height:1.6;color:#81818b}.detail-copy details{font-size:13px;line-height:1.7;margin:15px 0}.detail-copy summary{cursor:pointer}.detail-copy .chart-button{background:var(--slate);color:white;border:0;padding:13px 18px;border-radius:4px}.detail-copy .origin{font-size:11px;color:#8b8b95;margin-top:25px;border-top:1px solid var(--line);padding-top:15px}.supplier{font-size:12px;color:#6b6589}#zoom{width:min(1100px,96vw);padding:40px 15px 15px}#zoom img{width:100%;display:block}.error{padding:25px;background:#fff4e5}body:has(dialog[open]){overflow:hidden}@media(min-width:1500px){.grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1100px){.layout{grid-template-columns:205px 1fr}.grid{gap:25px 18px}.card h2{font-size:19px}aside{padding-left:15px;padding-right:15px}.intro-mark{display:none}header{gap:20px}.brand{width:170px}.brand img{max-width:170px}.edition{font-size:10px}.draft span{font-size:11px}}@media(max-width:850px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.layout{grid-template-columns:190px 1fr}h1{font-size:43px}.edition{display:none}.search{width:52%}.draft{line-height:1.6}.draft span{margin-left:5px}.card h2{min-height:44px}.toolbar label{font-size:0}.toolbar select{max-width:170px;margin:0}main{padding-top:30px}}@media(max-width:620px){header{height:auto;min-height:115px;padding:13px 5%;flex-wrap:wrap;gap:12px}.brand{width:140px;height:34px}.brand img{max-width:140px;max-height:42px}#brand-fallback{font-size:30px}.search{order:3;width:100%;padding:10px 12px}.search input{font-size:14px}.edition{display:none}#mobile-cats{display:block;margin-left:auto;background:none;border:1px solid #dddde2;border-radius:4px;padding:8px 10px;font-size:12px}.draft{padding:8px 5%;font-size:10px}.draft span{display:block;font-size:10px;margin:0}.layout{display:block}aside{display:none;padding:18px 5%;border-bottom:1px solid var(--line)}aside.open{display:block}nav{display:grid;grid-template-columns:1fr 1fr;gap:4px}.side-note{display:none}main{padding:27px 5% 0}.eyebrow{font-size:8px;letter-spacing:1.5px}h1{font-size:40px}#subtitle{font-size:12px}.intro{padding-bottom:20px}.toolbar{padding:12px 0 20px;font-size:11px}.toolbar select{font-size:10px;max-width:142px}.grid{column-gap:16px;row-gap:26px}.visual:before{width:88%}.visual img{width:94%;height:90%}.tag{font-size:8px;letter-spacing:.7px}.card h2{font-size:18px;min-height:60px}.card .info{font-size:11px;min-height:48px}.price{font-size:24px}.price.consult{font-size:17px}.reference{font-size:9px}.arrow{width:25px;height:25px;font-size:15px}#detail-body{grid-template-columns:1fr}.detail-visual{min-height:220px;padding:30px}.detail-visual img{max-height:250px}.detail-copy{padding:25px}.detail-copy h2{font-size:30px}footer{margin-top:40px}dialog{border-radius:8px}}

/* Product artwork: a square stage keeps circles complete at every viewport. */
.visual{aspect-ratio:1 / 1;overflow:visible;flex-shrink:0}
.visual:before{width:88%;height:88%;aspect-ratio:1 / 1;left:6%;top:6%;border-radius:50%}
.visual img{position:absolute;width:62%;height:62%;left:19%;top:19%;object-fit:contain;display:block}


.visual.chart{overflow:hidden}
.visual.chart img{width:90%;height:90%;left:5%;top:5%}
.detail-visual img{display:block;object-fit:contain;width:88%;height:auto;max-height:430px}
.rainbow{height:105px;background:none;clip-path:none;margin:25px -7% 0}
.rainbow svg{display:block;width:100%;height:100%}
.arrow svg{width:15px;height:15px;display:block}
@media(max-width:620px){.visual{aspect-ratio:1 / 1}.visual:before{width:88%;height:88%}.visual img{width:62%;height:62%}.visual.chart img{width:90%;height:90%}.detail-visual img{width:85%;max-height:260px}.rainbow{height:90px}}

/* Standard mug artwork uses a shared canvas and optical scale. */
.visual.mug img{width:100%;height:100%;left:0;top:0;object-fit:contain}


/* Keep the photo in place when the product text expands. */
.detail-visual{align-self:start;position:sticky;top:0;aspect-ratio:1;min-height:0;padding:32px;background:var(--slate);overflow:hidden}
.detail-visual img{width:100%;height:100%;max-height:400px;object-fit:contain;flex:none}
.detail-visual.detail-chart{background:#f4f4f4}
.detail-copy{min-width:0}
.product-section h3{font-size:15px;margin:20px 0 8px}
.product-section ul{padding-left:18px;margin:8px 0}
.product-section li{margin:0 0 9px}
.detail-copy .product-details{font-size:14px;line-height:1.65}
.variant-label{display:block;font-size:13px;margin:18px 0 7px}
.variant-select{width:100%;padding:10px 12px;border:1px solid #d8d9df;background:white;border-radius:5px;color:var(--ink)}
.related-charts{display:flex;flex-wrap:wrap;flex-direction:row;gap:7px;margin-top:22px;padding-top:14px;border-top:1px solid var(--line)}
.related-charts p{width:100%;margin:0 0 4px;font-size:12px;color:var(--muted)}
.related-charts button{display:block;padding:8px 10px;border:1px solid #d8d9df;font-size:11px;background:white;border-radius:5px}
.price:empty,.reference:empty{display:none}
.intro-mark{position:relative;display:flex;width:116px;height:96px;flex:none;padding:0;margin-right:22px;transform:none;overflow:visible;align-items:center;justify-content:center}
.intro-mark img{display:block;width:96px;height:96px;max-width:100%;object-fit:contain}
.visual.mug.interior-photo img{width:72%;height:72%;left:14%;top:14%;object-fit:contain}
.visual.shot-glass img{width:50%;height:50%;left:25%;top:25%;object-fit:contain}
@media(max-width:1100px){.intro-mark{display:none}}
@media(max-width:620px){.detail-visual{position:relative;aspect-ratio:auto;height:280px;padding:25px}.detail-visual img{width:100%;height:100%;max-height:230px}}

/* Most product sheets are text-only: this avoids loading a duplicate image. */
#detail-body.info-only{display:block}
#detail-body.info-only .detail-copy{width:min(720px,100%);margin:0 auto;padding:58px 46px 46px}
#detail-body.has-media{display:grid;grid-template-columns:1fr 1fr}
@media(max-width:620px){#detail-body.has-media{grid-template-columns:1fr}#detail-body.info-only .detail-copy{padding:52px 25px 30px}}
.visual.image-failed:after,.detail-visual.image-failed:after{content:'Imagen temporalmente no disponible';position:absolute;inset:auto 10% 12%;padding:8px;text-align:center;border-radius:4px;background:#fff;color:var(--muted);font-size:11px}

/* Cesta y solicitud de pedido */
textarea{font:inherit}
dialog{overflow:auto}
.cart-toggle{display:flex;align-items:center;gap:7px;padding:10px 12px;border:1px solid #d9dae0;border-radius:6px;background:white;color:var(--ink);white-space:nowrap}
.cart-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7}
.cart-toggle b{display:grid;place-items:center;min-width:23px;height:23px;padding:0 6px;border-radius:20px;background:var(--accent);color:white;font-size:12px}
.card-note,.verification-note{margin:0 0 16px;padding:9px 10px;border-left:3px solid #e1b32e;background:#fff8df;color:#6a5b26;font-size:12px;line-height:1.45}
.card-note{min-height:52px}
.verification-note{margin-top:-6px}
.order-box{margin:23px 0 18px;padding:18px;border:1px solid var(--line);border-radius:8px;background:#f7f7f6}
.order-box .variant-label:first-child{margin-top:0}
.variant-input,.quantity-input,.customer-form input,.customer-form textarea{width:100%;padding:11px 12px;border:1px solid #d7d8de;border-radius:5px;background:white;color:var(--ink)}
.quantity-row{display:grid;grid-template-columns:74px auto 1fr;gap:9px;align-items:center}
.quantity-row span{font-size:13px;color:var(--muted)}
.order-box small{display:block;margin-top:10px;color:var(--muted);font-size:11px;line-height:1.45}
.primary-button,.secondary-button{border-radius:5px;padding:11px 16px;font-weight:700}
.primary-button{border:1px solid var(--slate);background:var(--slate);color:white}
.secondary-button{border:1px solid #cfd0d6;background:white;color:var(--ink)}
.primary-button.wide{display:block;width:100%;margin-top:22px}
.order-unavailable{margin:22px 0;padding:14px 16px;border-radius:6px;background:#f1f1f2;color:#666875;font-size:13px;line-height:1.5}
.cart-dialog{width:min(780px,94vw)}
#cart-body{padding:48px 36px 36px}
.cart-heading h2{font:700 34px/1.1 Catalog;margin:0 0 9px}
.cart-heading>p:last-child{color:var(--muted);font-size:14px;line-height:1.5}
.cart-lines{margin-top:25px;border-top:1px solid var(--line)}
.cart-line{display:grid;grid-template-columns:minmax(0,1fr) 86px 58px;gap:15px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}
.cart-line strong,.cart-line span,.cart-line small{display:block}
.cart-line strong{font-size:15px;line-height:1.35}
.cart-line span{margin-top:5px;color:#56586a;font-size:13px}
.cart-line small{margin-top:6px;color:var(--muted);font-size:11px;line-height:1.4}
.cart-line label{font-size:11px;color:var(--muted)}
.cart-qty{width:100%;margin-top:5px;padding:8px;border:1px solid #d7d8de;border-radius:4px}
.remove-item{border:0;background:none;padding:8px 0;color:#9b315e;font-size:12px}
.cart-totals{padding:15px 0 0;margin-left:auto;width:min(350px,100%)}
.cart-totals>div{display:flex;justify-content:space-between;gap:20px;padding:6px 0}
.cart-totals span{font-size:13px;color:var(--muted)}
.cart-totals strong{font-size:14px}
.cart-totals .cart-total{border-top:1px solid var(--line);margin-top:6px;padding-top:12px;align-items:flex-end}
.cart-totals .cart-total strong{font:700 26px Catalog}
.cart-empty{padding:45px 0;text-align:center}
.cart-empty h3{font:700 25px Catalog;margin:0 0 8px}
.cart-empty p{color:var(--muted)}
.customer-form{display:grid;gap:16px;margin-top:25px}
.customer-form label{display:grid;gap:7px;font-size:13px;font-weight:700}
.customer-form textarea{resize:vertical;min-height:90px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.email-note{margin:0;padding:12px 14px;border-radius:5px;background:#f1eff4;color:#606171;font-size:12px;line-height:1.5}
.tax-note{display:block;margin:2px 0 4px;color:#777985;font-size:9px;font-weight:400;letter-spacing:.2px}
.tax-detail{margin:-7px 0 17px;color:#777985;font-size:11px}
.availability-note{margin:18px 0 0;padding:12px 14px;border-left:3px solid #e1b32e;background:#fff8df;color:#645a35;font-size:12px;line-height:1.55}
.confirm-order{grid-template-columns:auto 1fr!important;align-items:start;gap:10px!important;padding:13px;border:1px solid #dedee2;border-radius:6px;background:#fafafa;font-weight:400!important;line-height:1.5}
.confirm-order input{width:18px!important;height:18px;margin:1px 0 0;padding:0}
.remember-data{grid-template-columns:auto 1fr!important;align-items:start;gap:10px!important;padding:13px;border:1px solid #dedee2;border-radius:6px;background:#fafafa;font-weight:400!important;line-height:1.5}
.remember-data input{width:18px!important;height:18px;margin:1px 0 0;padding:0}
.forget-customer{justify-self:start;border:0;background:none;padding:0;color:#8f3159;font-size:12px;text-decoration:underline}
.quote-box p{margin:0 0 14px;color:#666875;font-size:13px;line-height:1.55}
.form-actions{display:flex;justify-content:space-between;gap:12px;margin-top:4px}
.notice{position:fixed;right:24px;bottom:24px;z-index:20;max-width:340px;padding:13px 17px;border-radius:6px;background:var(--ink);color:white;box-shadow:0 12px 35px #1114;font-size:13px}
@media(max-width:620px){
 .cart-toggle{margin-left:auto;padding:8px 9px}.cart-toggle span{display:none}#mobile-cats{margin-left:0}
 #cart-body{padding:48px 20px 25px}.cart-line{grid-template-columns:minmax(0,1fr) 74px}.remove-item{grid-column:2;text-align:left;padding:0}.form-grid{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.form-actions button{width:100%}.quantity-row{grid-template-columns:65px auto 1fr}.primary-button{padding-left:10px;padding-right:10px}.notice{left:16px;right:16px;bottom:16px;max-width:none}
}

.choice-summary{font-size:12px;line-height:1.55;color:#626471;margin:0 0 16px}.choice-price-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 12px}.card .choice-prompt{font:700 25px Catalog,Arial;letter-spacing:-.4px}.shared-price{font:700 21px Catalog,Arial;white-space:nowrap}.choice-price-row + .tax-note{margin-top:4px}@media(max-width:620px){.choice-summary{font-size:11px}.card .choice-prompt{font-size:24px}.shared-price{font-size:20px}}

/* Consistent card typography and compact specification groups. */
.card .price,.card .choice-prompt,.card .shared-price{font:700 21px Catalog,Arial;letter-spacing:-.3px;line-height:1.15}
.card.has-option-summary .info{min-height:0;margin-bottom:4px;line-height:1.4}
.card .choice-summary{margin-top:0;margin-bottom:16px;line-height:1.4}
.card .info{line-height:1.4}
@media(max-width:620px){.card .price,.card .choice-prompt,.card .shared-price{font-size:20px}.card.has-option-summary .info{min-height:0;margin-bottom:4px}}

.image-note{display:block;color:var(--muted,#767683);font-size:.65rem;line-height:1.3;margin:0 0 .5rem}.visual:has(>span:not(.colour-swatches)){border-radius:50%;background:#eeeef1;color:#777;display:flex;align-items:center;justify-content:center;text-align:center;padding:2rem}

/* Colour samples share the existing grey disc, with a clear image lane and an inset sample lane. */
/* Shared optical frame: the visible product and samples, not their source canvases. */
.visual.has-swatches{position:relative;isolation:isolate;overflow:visible;container-type:inline-size}
.colour-swatches{position:absolute;right:16%;top:50%;transform:translateY(-50%);display:grid;grid-template-columns:repeat(2,var(--sample-size,min(6.5cqw,18px)));gap:1.5cqw;z-index:2;padding:0;pointer-events:none}
.colour-swatches--1-col{grid-template-columns:var(--sample-size,min(6.5cqw,18px))}
.colour-swatches--3-col{grid-template-columns:repeat(3,var(--sample-size,min(6.5cqw,18px)))}
.colour-swatches>span{display:flex;align-items:center;justify-content:center;width:var(--sample-size,min(6.5cqw,18px));height:var(--sample-size,min(6.5cqw,18px))}
.colour-swatch{display:block;position:relative;width:100%;height:100%;border-radius:50%;background-color:var(--swatch);border:1px solid #73778155;box-shadow:0 1px 2px #30334418;overflow:hidden}
.swatch--metal{background-image:linear-gradient(120deg,transparent 15%,#fff8 39%,transparent 55%,#0002 85%)}
.swatch--white-panel:after{content:"";position:absolute;inset:24%;border-radius:1px;background:#faf9f4}
.sample--sheet{border-radius:1px;height:72%}
.sample--cushion{border-radius:2px}
.sample--heart{border-radius:0;clip-path:polygon(50% 94%,7% 51%,1% 31%,9% 12%,26% 3%,42% 10%,50% 21%,58% 10%,74% 3%,91% 12%,99% 31%,93% 51%);border:0;box-shadow:none}
.colour-swatch.sample--photo{background:none;border:0;box-shadow:none}
.visual.has-swatches .colour-swatch img{position:static;display:block;width:100%;height:100%;object-fit:cover;transform:none;transition:none;margin:0}
.visual.has-swatches.normalized-photo>img,.visual.mug.has-swatches.normalized-photo>img,.visual.mug.interior-photo.has-swatches.normalized-photo>img{width:var(--photo-width,40%);height:var(--photo-height,54%);left:var(--photo-left,20%);top:var(--photo-top,23%);max-width:none;margin:0;transform:none}


/* Optical sizes measured from cropped product silhouettes; shared mug height. */
.card[data-id="p5-1"] .visual{--photo-width:47.9933%;--photo-height:46.0000%;--photo-left:18.0033%;--photo-top:27.0000%;}
.card[data-id="p5-2"] .visual{--photo-width:49.8333%;--photo-height:46.0000%;--photo-left:17.0833%;--photo-top:27.0000%;}
.card[data-id="p6-6"] .visual{--photo-width:50.2933%;--photo-height:46.0000%;--photo-left:16.8533%;--photo-top:27.0000%;}
.card[data-id="p7-13"] .visual{--photo-width:48.6067%;--photo-height:46.0000%;--photo-left:17.6967%;--photo-top:27.0000%;}
.card[data-id="p8-17"] .visual{--photo-width:48.1467%;--photo-height:46.0000%;--photo-left:17.9267%;--photo-top:27.0000%;}
.card[data-id="p9-24"] .visual{--photo-width:43.2941%;--photo-height:46.0000%;--photo-left:20.3529%;--photo-top:27.0000%;}
.card[data-id="p12-39"] .visual{--photo-width:43.5551%;--photo-height:58.0000%;--photo-left:22.2224%;--photo-top:21.0000%;}
.card[data-id="p13-47"] .visual{--photo-width:33.9200%;--photo-height:48.0000%;--photo-left:27.0400%;--photo-top:26.0000%;}
.card[data-id="p19-71"] .visual{--photo-width:52.0000%;--photo-height:47.4933%;--photo-left:16.0000%;--photo-top:26.2533%;}

/* Cushion and sheet refinements use the same optical frame and photographic sample size. */
.card[data-id="p19-75"] .visual{--photo-width:52.0000%;--photo-height:39.2915%;--photo-left:16.0000%;--photo-top:30.3543%;}
.card[data-id="p20-79"] .visual{--photo-width:52.0000%;--photo-height:49.2891%;--photo-left:16.0000%;--photo-top:25.3555%;}
.card[data-id="p20-80"] .visual{--photo-width:52.0000%;--photo-height:51.5593%;--photo-left:16.0000%;--photo-top:24.2203%;}
.card[data-id="p24-101"] .visual{--photo-width:52.0000%;--photo-height:44.7682%;--photo-left:16.0000%;--photo-top:27.6159%;}
.card[data-id="p25-103"] .visual{--photo-left:24%}
:is(.card[data-id="p20-79"],.card[data-id="p20-80"],.card[data-id="p24-101"],.card[data-id="p25-103"]) .visual{--sample-size:min(8.5cqw,24px)}

/* A single sample column leaves room to centre the product more naturally.
   Preserve the two approved optical reference photographs. */
.card:not([data-id="p6-6"]):not([data-id="p12-39"]) .visual.has-swatches.normalized-photo:has(>.colour-swatches--1-col){--photo-left:calc(46% - var(--photo-width,40%)/2)}

/* Give cushion corners a little more breathing room inside the disc. */
.card[data-category="Cojines"] .visual>img{scale:.92}

/* Multiple actual product photos share the same circular stage. */
.visual .product-gallery{position:absolute;inset:18% 13% 14%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:5%;z-index:1}.visual .product-gallery.items-3{inset:17% 10% 14%;grid-template-columns:repeat(3,minmax(0,1fr));gap:3%}.visual .product-gallery figure{margin:0;min-width:0;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.visual .product-gallery img{position:static!important;width:100%!important;height:76%!important;max-width:100%;object-fit:contain;transform:none!important;filter:none}.visual .product-gallery img.supplier-photo{mix-blend-mode:multiply}.visual .product-gallery figcaption{font-size:10px;line-height:1.3;text-align:center;color:#4e5065}

.visual .product-gallery figcaption{color:white}

/* Grouped keyrings use close, equally sized photo slots with no repeated captions. */
.visual .product-gallery{inset:14% 18%;gap:0;align-items:center}.visual .product-gallery figure{height:100%;gap:0;justify-content:center}.visual .product-gallery img{height:100%!important;max-height:100%;object-fit:contain}.visual .product-gallery.items-3{inset:16% 8%;gap:0}.visual .product-gallery.items-6{inset:13% 17%;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:2% 0}.visual .product-gallery.items-6 figure{min-height:0}.visual .product-gallery.items-6 img{height:100%!important;min-height:0}
.visual .product-gallery.items-6{inset:20% 18%;gap:0}

/* Balanced grouped covers: four colours, and centred natural wooden square. */
.visual .product-gallery.items-4{inset:19% 19%;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:0}.visual .product-gallery.items-4 figure{min-height:0}.card[data-id="p39-184"] .product-gallery.items-3{inset:16% 14%;gap:0}.card[data-id="p39-184"] .product-gallery figure:nth-child(2) img{scale:.88}.card[data-id="p39-184"] .product-gallery figure:nth-child(3) img{translate:22% 0}

/* Retain catalogue garment photos while making room for the merged colour choices. */
.card[data-id="p58-278"] .visual.has-swatches>img,.card[data-id="p58-280"] .visual.has-swatches>img,.card[data-id="p58-281"] .visual.has-swatches>img,.card[data-id="p59-286"] .visual.has-swatches>img{width:46%;height:60%;left:17%;top:20%;transform:none}

/* Delivery choices stay in the basket; product sheets use one short explanation. */
.delivery-options{margin:22px 0;padding:18px;border:1px solid #e4e3ea;border-radius:12px;background:#f7f7fa}.delivery-options h3{margin:0 0 14px;font-size:19px}.delivery-options>label{display:block;margin:12px 0 7px;font-size:13px;font-weight:600}.delivery-options .variant-select{width:100%;margin-bottom:0}.delivery-help,.delivery-product-note{font-size:13px;line-height:1.55;color:#686879}.delivery-help{margin:12px 0 0}.delivery-product-note{margin:14px 0 20px}.delivery-summary{padding:12px 15px;border-radius:10px;background:#f2f1f7;font-size:14px;line-height:1.5}.customer-form [hidden]{display:none!important}

/* New mug product photographs retain the same grey-circle stage and safe margins. */
.card[data-id="zoho-3b08f2aefce159"] .visual>img,
.card[data-id="zoho-02d7cf425796ef"] .visual>img,
.card[data-id="zoho-5cea22cd601aa3"] .visual>img,
.card[data-id="zoho-ebe32d893d660c"] .visual>img{width:68%;height:68%;left:16%;top:16%;object-fit:contain}
.card[data-id="p5-0"] .visual .product-gallery{inset:16% 12%;gap:0;align-items:center}
.card[data-id="p5-0"] .product-gallery figure:first-child{transform:scale(1.2)}
.card[data-id="p5-0"] .product-gallery figure:last-child{transform:scale(.9)}
.card[data-id="zoho-3b08f2aefce159"] .visual>img{width:78%;height:78%;left:11%;top:11%}

/* Two aluminium sizes share one balanced transparent photograph gallery. */
.card[data-id="p11-32"] .visual .product-gallery{inset:14% 18%;gap:2%;align-items:center}
.card[data-id="p11-32"] .product-gallery figure:first-child{transform:scale(.81);transform-origin:center bottom}
.card[data-id="p11-32"] .product-gallery figure:last-child{transform:scale(1);transform-origin:center bottom}
.card[data-id="zoho-4b80abd6fb958f"] .visual>img,
.card[data-id="zoho-d14b94354a3fcf"] .visual>img{width:78%;height:78%;left:11%;top:11%;object-fit:contain}
.card[data-id="p10-26"] .visual>img{width:64%;height:64%;left:18%;top:18%;object-fit:contain}
.card[data-id="p11-32"] .product-gallery figure:first-child{transform:translateY(-6%) scale(.65);transform-origin:center}
.card[data-id="p11-32"] .product-gallery figure:last-child{transform:scale(1.3);transform-origin:center}
/* October review: consistent breathing room and three confirmed bottle sizes. */
.card[data-id="zoho-ebe32d893d660c"] .visual>img{width:60%;height:60%;left:20%;top:20%}
.card[data-id="p11-32"] .visual>img{width:80%;height:80%;left:10%;top:10%;object-fit:contain}
.card[data-id="zoho-69112fa9ea0ade"] .visual>img{width:70%;height:70%;left:15%;top:15%;object-fit:contain}
.card[data-id="zoho-d61816c57e4cf3"] .visual>img,
.card[data-id="zoho-0abd1a32d98e2b"] .visual>img,
.card[data-id="zoho-83ff31dd9a31e1"] .visual>img,
.card[data-id="zoho-6b98ef0f132834"] .visual>img,
.card[data-id="zoho-db72c6341ab998"] .visual>img,
.card[data-id="zoho-91e2f61685d9ff"] .visual>img{width:78%;height:78%;left:11%;top:11%;object-fit:contain}
.card[data-id="zoho-aca2b6ef6571ad"] .visual .product-gallery{inset:12% 15%;gap:0;align-items:center}
.card[data-id="zoho-aca2b6ef6571ad"] .product-gallery figure:first-child{transform:scale(1.4);transform-origin:center}
/* Review 61: optical centring and consistent clear space inside the circles. */
.card[data-id="p5-0"] .visual>img{left:3%}
.card[data-id="zoho-69112fa9ea0ade"] .visual>img{width:58%;height:58%;left:21%;top:21%}
.card[data-id="zoho-02d7cf425796ef"] .visual>img,
.card[data-id="zoho-5cea22cd601aa3"] .visual>img{width:60%;height:60%;left:20%;top:20%}
.card[data-id="p11-32"] .visual>img{width:74%;height:74%;left:13%;top:11%}
.card[data-id="zoho-aca2b6ef6571ad"] .visual .product-gallery{inset:20% 24%;gap:0;grid-template-rows:minmax(0,1fr);min-height:0}
.card[data-id="zoho-aca2b6ef6571ad"] .product-gallery figure{position:relative;transform:none;overflow:visible;min-height:0}
.card[data-id="zoho-aca2b6ef6571ad"] .product-gallery figure:first-child{transform:none}
.card[data-id="zoho-aca2b6ef6571ad"] .product-gallery img{height:100%!important;width:auto!important;max-width:none;flex:none}
.card[data-id="zoho-fe4fa7739db0a6"] .visual>img{width:80%;height:80%;left:10%;top:10%;scale:1}
.card[data-id="cojin-felpa-solapa-20"] .visual>img{width:64%;height:64%;left:18%;top:18%}
.card[data-id="zoho-23baa25fbf7510"] .visual>img,
.card[data-id="p12-42"] .visual>img,
.card[data-id="p13-44"] .visual>img{width:76%;height:76%;left:12%;top:12%;object-fit:contain}
/* Review 62: more margin for the 600 ml bottle and equal infant bottle bodies. */
.card[data-id="p12-42"] .visual>img{width:66%;height:66%;left:17%;top:17%}
.card[data-id="zoho-aca2b6ef6571ad"] .product-gallery figure:last-child img{scale:1.07 .96;translate:0 -1%}
.card[data-id="p8-22"] .visual>img{width:76%;height:76%;left:12%;top:12%;object-fit:contain}
.card[data-id="p15-58"] .visual>img{width:70%;height:70%;left:15%;top:15%;object-fit:contain}

/* Review 63: slightly larger coffee/stein photos and separate kit covers. */
.card[data-id="p8-22"] .visual>img{width:84%;height:84%;left:8%;top:8%;object-fit:contain}
.card[data-id="p9-23"] .visual>img{width:78%;height:78%;left:11%;top:9%;object-fit:contain}
.card[data-id="p10-28"] .visual>img,.card[data-id="p10-29"] .visual>img{transform:scale(1.10)}
.card[data-id="zoho-3b08f2aefce159"] .visual>img{width:66%;height:66%;left:17%;top:16%;object-fit:contain}
.card[data-id="kit-apilable-4-10006361"] .visual>img{width:72%;height:72%;left:14%;top:14%;object-fit:contain}
.card[data-id="taza-cafe-plato-bambu-10006374"] .visual>img{width:72%;height:72%;left:14%;top:11%;object-fit:contain}
.card[data-id="p12-42"] .visual>img,.card[data-id="p11-36"] .visual>img{width:82%;height:82%;left:9%;top:6%;object-fit:contain}
.card[data-id="p13-46"] .visual>img{width:74%;height:74%;left:13%;top:13%;object-fit:contain}

/* Review 64: equal-size infant pair is one composition, independent of source canvas padding. */
.card[data-id="zoho-aca2b6ef6571ad"] .visual>img{width:72%;height:72%;left:14%;top:11%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="zoho-8e5512b9b256e5"] .visual>img{width:74%;height:74%;left:13%;top:13%;object-fit:contain}

/* Review65: steins share the frosted stein visible height, rather than source-canvas size. */
.card[data-id="p10-28"] .visual>img{width:94.1454%;height:94.1454%;left:-0.1285%;top:2.4722%;object-fit:contain;transform:none}
.card[data-id="p10-29"] .visual>img{width:90.8990%;height:90.8990%;left:1.0351%;top:4.4250%;object-fit:contain;transform:none}
.card[data-id="p12-42"] .visual>img{width:68%;height:68%;left:16%;top:13%;object-fit:contain;transform:none}
.card[data-id="p8-20"] .visual>img{width:68%;height:68%;left:16%;top:16%;object-fit:contain;transform:none}
.card[data-id="p7-15"] .visual>img{width:64%;height:64%;left:18%;top:18%;object-fit:contain;transform:none}

/* Review66: composed family covers with safe margins and no side colour chips. */
.card[data-id="p11-36"] .visual>img{width:78%;height:78%;left:11%;top:9%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p13-45"] .visual>img{width:74%;height:74%;left:13%;top:12%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p12-39"] .visual>img{width:78%;height:78%;left:11%;top:11%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p12-40"] .visual>img,.card[data-id="p14-54"] .visual>img{width:68%;height:68%;left:16%;top:16%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="zoho-aca2b6ef6571ad"] .visual>img{width:66%;height:66%;left:17%;top:14%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p15-55"] .visual>img,.card[data-id="p15-56"] .visual>img{width:82%;height:82%;left:9%;top:9%;object-fit:contain;transform:none;scale:1;translate:0}

/* Review67: safe-circle family compositions and larger apron silhouette. */
.card[data-id="p15-57"] .visual>img{width:76%;height:76%;left:12%;top:12%;object-fit:contain;transform:none}
.card[data-id="p15-59"] .visual>img{width:76%;height:76%;left:12%;top:12%;object-fit:contain;transform:none}
.card[data-id="p6-9"] .visual>img{width:80%;height:80%;left:10%;top:10%;object-fit:contain;transform:none}
.card[data-id="p12-39"] .visual>img{width:68%;height:68%;left:16%;top:16%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p15-56"] .visual>img{width:68%;height:68%;left:16%;top:16%;object-fit:contain;transform:none}
.card[data-id="p19-75"] .visual>img{width:76%;height:76%;left:12%;top:12%;object-fit:contain;transform:none}
.card[data-id="zoho-c820776275d73c"] .visual>img{width:66%;height:66%;left:17%;top:17%;object-fit:contain;transform:none}
.card[data-id="p20-77"] .visual>img{width:68%;height:68%;left:16%;top:16%;object-fit:contain;transform:none}
.card[data-id="p19-75"] .visual>img{width:64%;height:64%;left:18%;top:18%}
.card[data-id="p15-57"] .visual>img{width:72%;height:72%;left:14%;top:14%}

/* Review68: modestly larger satin and confirmed red-back heart covers. */
.card[data-id="p19-75"] .visual>img{width:70%;height:70%;left:15%;top:15%}
.card[data-id="p20-77"] .visual>img{width:76%;height:76%;left:12%;top:12%}

/* Review69: restored mug photos and full two-row sequin cover compositions. */
.card[data-id="p6-8"] .visual>img{width:66%;height:66%;left:17%;top:17%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p7-12"] .visual>img{width:76%;height:76%;left:12%;top:12%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p20-79"] .visual>img,.card[data-id="p20-80"] .visual>img{width:76%;height:76%;left:12%;top:12%;object-fit:contain;transform:none;scale:1;translate:0}

.card[data-id="p20-80"] .visual>img{width:72%;height:72%;left:14%;top:14%}

/* Review 70: clean product photographs and contained cushion compositions. */
.card[data-id="p9-24"] .visual>img{width:66%;height:66%;left:17.0%;top:17.0%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p8-17"] .visual>img{width:66%;height:66%;left:17.0%;top:17.0%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p7-16"] .visual>img{width:66%;height:66%;left:17.0%;top:17.0%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p7-14"] .visual>img{width:66%;height:66%;left:17.0%;top:17.0%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p6-10"] .visual>img{width:66%;height:66%;left:17.0%;top:17.0%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p6-11"] .visual>img{width:66%;height:66%;left:17.0%;top:17.0%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p8-19"] .visual>img{width:66%;height:66%;left:17.0%;top:17.0%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p14-49"] .visual>img{width:66%;height:66%;left:17.0%;top:17.0%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p5-0"] .visual>img{width:66%;height:66%;left:17.0%;top:17.0%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p5-3"] .visual>img{width:66%;height:66%;left:17.0%;top:17.0%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p6-6"] .visual>img{width:66%;height:66%;left:17.0%;top:17.0%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p19-71"] .visual>img{width:70%;height:70%;left:15.0%;top:15.0%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p20-79"] .visual>img{width:70%;height:70%;left:15%;top:17%}

.card[data-id="p19-71"] .visual>img{width:64%;height:64%;left:18%;top:18%}

/* Review 71: matched mug scales and clear palette spacing. */
.card[data-id="p5-0"] .visual>img{width:58%;height:58%;left:21%;top:21%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p5-3"] .visual>img{width:58%;height:58%;left:21%;top:21%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p6-11"] .visual>img{width:58%;height:58%;left:21%;top:21%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p8-19"] .visual>img{width:58%;height:58%;left:21%;top:21%;object-fit:contain;transform:none;scale:1;translate:0}

.card[data-id="p6-10"] .visual>img{width:62%;height:62%;left:15%;top:19%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p8-17"] .visual>img,.card[data-id="p9-24"] .visual>img{width:52%;height:52%;left:18%;top:24%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p6-6"] .visual>img{width:78%;height:58%;left:11%;top:21%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="zoho-3b08f2aefce159"] .visual>img{width:58%;height:58%;left:21%;top:21%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="zoho-fe4fa7739db0a6"] .visual>img{width:70%;height:70%;left:15%;top:15%;object-fit:contain;transform:none;scale:1;translate:0}

.card[data-id="p6-11"] .visual>img{width:52%;height:52%;left:24%;top:24%}
.card[data-id="p5-0"] .visual>img,.card[data-id="p5-3"] .visual>img{width:54%;height:54%;left:23%;top:23%}

/* Review 72: optical centering of visible product silhouettes. */
.card[data-id="p5-0"] .visual>img{width:54.0000%;height:54.0000%;left:26.0710%;top:23.1273%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p5-3"] .visual>img{width:54.0000%;height:54.0000%;left:20.5003%;top:23.1745%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p5-4"] .visual>img{width:100.0000%;height:100.0000%;left:3.9063%;top:0.2349%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p5-5"] .visual>img{width:100.0000%;height:100.0000%;left:3.7121%;top:0.2449%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p6-7"] .visual>img{width:100.0000%;height:100.0000%;left:4.4743%;top:0.3576%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p6-8"] .visual>img{width:66.0000%;height:66.0000%;left:19.9421%;top:17.3810%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p6-11"] .visual>img{width:52.0000%;height:52.0000%;left:27.7926%;top:24.2967%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p7-14"] .visual>img{width:66.0000%;height:66.0000%;left:19.9068%;top:19.4784%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p7-15"] .visual>img{width:64.0000%;height:64.0000%;left:19.8407%;top:20.1007%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p8-19"] .visual>img{width:58.0000%;height:58.0000%;left:17.2776%;top:21.3117%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p8-20"] .visual>img{width:58.0000%;height:58.0000%;left:23.2501%;top:20.7139%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="zoho-69112fa9ea0ade"] .visual>img{width:58.0000%;height:58.0000%;left:23.5108%;top:21.5256%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="zoho-5cea22cd601aa3"] .visual>img{width:60.0000%;height:60.0000%;left:17.0749%;top:19.9039%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="zoho-02d7cf425796ef"] .visual>img{width:60.0000%;height:60.0000%;left:16.4432%;top:20.2721%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p10-27"] .visual>img{width:62.0000%;height:62.0000%;left:21.3322%;top:20.2177%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p10-28"] .visual>img{width:94.1454%;height:94.1454%;left:3.1538%;top:3.3030%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p10-29"] .visual>img{width:90.8990%;height:90.8990%;left:4.3066%;top:4.5573%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="p10-30"] .visual>img{width:62.0000%;height:62.0000%;left:17.5034%;top:12.9336%;object-fit:contain;transform:none;scale:1;translate:0}

.card[data-id="p9-24"] .visual>img{width:76%;height:62%;left:12%;top:19%;object-fit:contain;transform:none;scale:1;translate:0}

.card[data-id="p9-25"] .visual>img{width:54%;height:54%;left:24.5960%;top:23.1475%;object-fit:contain;transform:none;scale:1;translate:0}

/* Review 73: a larger red velvet cushion over two smaller formats. */
.card[data-id="p19-71"] .visual>img{width:64%;height:64%;left:18%;top:18%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="iman-aluminio-round"] .visual>img{width:64%;height:64%;left:18%;top:18%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="iman-aluminio-heart"] .visual>img{width:64%;height:64%;left:18%;top:18%;object-fit:contain;transform:none;scale:1;translate:0}

/* Review 74: complete accessory photographs with clear margins inside the disc. */
.card[data-id="zoho-d46bced50cf41a"] .visual>img,
.card[data-id="zoho-ba208563bb526b"] .visual>img,
.card[data-id="zoho-f1bf80f46b6472"] .visual>img,
.card[data-id="zoho-a9c076f6b59022"] .visual>img,
.card[data-id="zoho-2cdc09b2c85fe2"] .visual>img{width:68%;height:68%;left:16%;top:16%;object-fit:contain;transform:none;scale:1;translate:0}
.card[data-id="zoho-fa69bb12205a44"] .visual>img{width:66%;height:66%;left:17%;top:17%;object-fit:contain;transform:none;scale:1;translate:0}

/* Wood keyrings: even spacing and a consistent orientation in the cover. */
.card[data-id="p39-184"] .visual .product-gallery.items-3{inset:16% 9%;gap:2%;grid-template-columns:repeat(3,minmax(0,1fr))}
.card[data-id="p39-184"] .product-gallery.items-3 figure{transform:scale(1.08);overflow:visible}
.card[data-id="p39-184"] .product-gallery.items-3 figure:nth-child(2) img{rotate:43deg;scale:1}

.card[data-id="p39-184"] .product-gallery figure:nth-child(3) img{translate:none}

.chart-scroll{max-height:72vh;overflow:auto;overscroll-behavior:contain}.chart-scroll img{max-width:none}.chart-tools{display:flex;gap:.65rem;align-items:center;margin:0 0 .75rem;flex-wrap:wrap}.chart-tools button{min-width:2.5rem;min-height:2.5rem}.related-charts small{display:block;width:100%}.related-charts a{display:inline-block;margin:.3rem 0}

.sheet-link{padding:.45rem .7rem;border:1px solid var(--line);border-radius:.45rem;color:var(--ink);text-decoration:underline;margin:.2rem}.sheet-list,.material-groups details{width:100%;margin:.4rem 0}.sheet-list summary,.material-groups summary{cursor:pointer;font-weight:700}.material-groups{margin:.6rem 0}.material-groups ul{max-height:16rem;overflow:auto;padding-left:1.4rem}.material-groups li{padding:.15rem 0}#material-text{width:100%;min-height:6rem}

#material-inquiry>button[type="submit"]{margin-top:1rem}

/* Photos for product variants and the three small backpacks. */
.card[data-id="p45-218"] .visual .product-gallery.items-3{inset:19% 12%;gap:0}
.card[data-id="p45-218"] .product-gallery.items-3 figure{transform:scale(1.16);transform-origin:center}
.variant-photo-picker{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.variant-photo-button{display:grid;grid-template-rows:52px auto;align-items:center;gap:5px;width:82px;padding:5px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);cursor:pointer;text-align:center;font:inherit;font-size:11px;line-height:1.15;overflow-wrap:anywhere}
.variant-photo-button[aria-pressed="true"]{border-color:var(--slate);box-shadow:inset 0 0 0 1px var(--slate)}
.variant-photo-button img{width:100%;height:52px;object-fit:contain}

/* Compact native disclosures for charts and formats. */
.catalogue-disclosure{list-style:none;display:inline-flex;align-items:center;max-width:100%;min-height:44px;padding:.3rem .15rem;color:var(--ink)}
.catalogue-disclosure::-webkit-details-marker{display:none}
.catalogue-disclosure:focus-visible{outline:2px solid var(--slate);outline-offset:3px;border-radius:4px}
.disclosure-copy{display:grid;gap:.18rem;min-width:0}
.disclosure-action{display:inline-flex;align-items:center;justify-self:start;gap:.45rem;color:var(--slate);font-size:1.06em;font-weight:700}
.disclosure-expand,.disclosure-collapse{text-decoration:underline;text-underline-offset:.16em}
.catalogue-disclosure:hover .disclosure-action{color:var(--ink)}
.disclosure-collapse,details[open]>.catalogue-disclosure .disclosure-expand{display:none}
details[open]>.catalogue-disclosure .disclosure-collapse{display:inline}
.disclosure-arrow{width:.45rem;height:.45rem;flex:0 0 .45rem;border:solid currentColor;border-width:0 2px 2px 0;transform:translateY(-2px) rotate(45deg)}
details[open]>.catalogue-disclosure .disclosure-arrow{transform:translateY(2px) rotate(225deg)}
.related-charts .sheet-external{display:inline-flex;align-items:baseline;gap:.45rem;max-width:100%}
.sheet-external span:last-child{flex:none}

/* Covers for these two hat families use the full stage without discs or swatches. */
.card[data-id="p45-220"] .visual::before{display:none}
.card:is([data-id="p59-287"],[data-id="zoho-508a74fe11b6d7"]) .visual>img{width:76%;height:76%;left:12%;top:12%;filter:none}
.card[data-id="p45-217"] .visual .product-gallery.items-2{inset:16% 13%;gap:2%}
.card[data-id="p45-220"] .visual>img{width:98%;height:98%;left:1%;top:1%;filter:none}

.card[data-id="p45-217"] .product-gallery figure:nth-child(2) img{scale:1.49}
.puzzle-artwork{margin:1rem 0;text-align:center}
.puzzle-artwork>div{width:min(190px,75%);aspect-ratio:1;margin:0 auto;display:grid;place-items:center;border-radius:50%;background:#e8e8ec}
.puzzle-artwork img{width:72%;height:72%;object-fit:contain}
.puzzle-artwork figcaption{font-size:.75rem;margin-top:.35rem;color:var(--muted)}

/* Product cutouts: maintain the catalogue grey circle. */
.card[data-id="p46-225"] .visual>img{width:98%;height:90%;left:1%;top:5%;object-fit:contain;transform:none;filter:none}
.card[data-category="Maquinaria"] .visual>img{width:88%;height:88%;left:6%;top:6%;object-fit:contain;transform:none;filter:none}

.card[data-id="p46-225"] .visual>img{width:90%;height:90%;left:5%;top:5%}

/* Review105: contained sequin group and larger lunch-bag photo. */
.card[data-id="p46-225"] .visual>img{width:76%;height:76%;left:12%;top:12%;object-fit:contain;transform:none;filter:none}
.card[data-id="p50-243"] .visual>img{width:84%;height:84%;left:8%;top:8%;object-fit:contain;transform:none}
/* Larger front/back comparison in the product sheet. */
.puzzle-artwork:has(img[src*="10001094-front-back"])>div{width:min(300px,90%)}
.puzzle-artwork:has(img[src*="10001094-front-back"]) img{width:92%;height:92%}

/* Review 106: compact consultation covers, with complete product silhouettes. */
.card.materials-tail .visual>img{width:68%!important;height:68%!important;left:16%!important;top:16%!important;object-fit:contain!important;transform:none!important;scale:1!important;translate:0!important}
.card.materials-tail .visual .product-gallery{inset:20%!important;transform:none!important}
.card[data-id="p58-278"] .product-gallery.items-2{inset:7% 6%;gap:0;align-items:center}
.card[data-id="p58-278"] .product-gallery.items-2 figure:first-child{transform:scale(.82)}
.card[data-id="p58-278"] .product-gallery.items-2 figure:last-child{transform:scale(1.08)}
.card[data-id="revision101-88"] .visual>img{width:94%;height:94%;left:3%;top:3%;object-fit:contain;transform:none}

.card[data-id="p59-287"] .visual>img{width:76%;height:76%;left:12%;top:12%;object-fit:contain;transform:none}
.card[data-id="p51-252"] .visual>img{width:120%;height:120%;left:-10%;top:-10%;object-fit:contain;transform:none}
.card[data-id="p51-248"] .product-gallery.items-3{inset:15% 12%;grid-template-columns:repeat(2,1fr);gap:2%}
.card[data-id="p51-248"] .product-gallery.items-3 figure:last-child{grid-column:1/3;width:60%;justify-self:center}
/* Review 107: complete product silhouettes inside the circular catalogue frame. */
.card[data-id="p43-204"] .visual .product-gallery{inset:22% 12%;gap:4%}
.card[data-id="p43-206"] .visual .product-gallery{inset:19% 15%;gap:4%;grid-template-columns:1fr 1fr}
.card[data-id="p43-206"] .product-gallery figure:last-child img{rotate:90deg;scale:.95}
.card[data-id="revision101-48"] .visual .product-gallery{inset:18% 14%;gap:4%;grid-template-columns:1.05fr .9fr}
.card[data-id="revision101-41"] .visual>img{width:72%;height:72%;left:14%;top:14%;object-fit:contain;transform:none}
.card[data-id="p5-1"] .visual>img{width:78%!important;height:78%!important;left:11%!important;top:11%!important;transform:none!important;object-fit:contain}
.card[data-id="revision101-88"] .visual>img{width:76%;height:76%;left:12%;top:12%;object-fit:contain;transform:none}
.card[data-id="p49-238"] .visual .product-gallery.items-3{inset:22% 16%;gap:3%}
.card[data-id="puzzles-con-estuche"] .visual .product-gallery.items-3{inset:18% 14%;grid-template-columns:repeat(3,minmax(0,1fr));gap:4%}
.card[data-id="puzzles-con-estuche"] .product-gallery figure img{rotate:0deg;max-height:100%;object-fit:contain}
.card[data-id="p51-248"] .visual .product-gallery.items-3{inset:23% 16% 20%;gap:0;grid-template-rows:1fr 1fr}
.card[data-id="p58-278"] .visual .product-gallery.items-2{inset:17% 14%;gap:3%}
.card[data-id="p58-278"] .product-gallery.items-2 figure:first-child{transform:scale(.80)}
.card[data-id="p58-278"] .product-gallery.items-2 figure:last-child{transform:none}
.card[data-id="p59-284"] .visual .product-gallery.items-2{inset:17% 16%;gap:5%}
.card[data-id="zoho-3ee4ce2d91cab0"] .visual>img,.card[data-id="zoho-53d8e3d69f2631"] .visual>img,.card[data-id="p46-224"] .visual>img{width:72%;height:72%;left:14%;top:14%;object-fit:contain;transform:none}
.card[data-id="zoho-be7fc6e4074265"] .visual>img{width:74%;height:74%;left:13%;top:13%;object-fit:contain;transform:none}
.card[data-id="p43-204"] .product-gallery figure:first-child img{scale:1.4}
.card[data-id="p43-204"] .product-gallery figure:last-child img{scale:.85}
.card[data-id="p43-206"] .visual .product-gallery{inset:17% 12%;gap:5%;grid-template-columns:1.2fr .8fr}
.card[data-id="p43-206"] .product-gallery figure:first-child img{scale:1.1}
.card[data-id="p43-206"] .product-gallery figure:last-child img{scale:1.6}
.card[data-id="zoho-be7fc6e4074265"] .visual>img{width:68%;height:68%;left:16%;top:16%}

.card[data-id="p43-206"] .visual{overflow:clip}
.card[data-id="puzzles-con-estuche"] .visual .product-gallery.items-3{inset:14% 8%;gap:3%}
body{overflow-x:clip}

/* Review 108: readable groups, larger baby photos, and breathing room inside the circle. */
.card[data-id="p48-231"] .info{white-space:pre-line}
.card[data-id="puzzles-con-estuche"] .visual .product-gallery.items-3{inset:20% 13%;gap:4%;grid-template-columns:repeat(3,minmax(0,1fr))}
.card[data-id="p49-238"] .visual .product-gallery.items-3{inset:19% 13%;gap:3%}
.card[data-id="p59-284"] .visual .product-gallery.items-2{inset:12% 12%;gap:3%}
.card[data-id="p58-278"] .visual>img,.card[data-id="camiseta-sublimacion-hombre"] .visual>img,.card[data-id="zoho-1a83316eb24bd7"] .visual>img{width:74%;height:74%;left:13%;top:13%;object-fit:contain;transform:none;filter:none}
.card[data-id="p50-242"] .visual>img,.card[data-id="p50-244"] .visual>img,.card[data-id="p50-245"] .visual>img,.card[data-id="p50-246"] .visual>img,.card[data-id="p50-247"] .visual>img,.card[data-id="revision101-67"] .visual>img,.card[data-id="revision101-86"] .visual>img,.card[data-id="saco-simil-lino-50x71"] .visual>img{width:78%;height:78%;left:11%;top:11%;object-fit:contain;transform:none;filter:none}
.card[data-id="p51-253"] .visual>img{width:80%;height:80%;left:10%;top:10%;object-fit:contain;transform:none;filter:none}
.size-guides{margin:1rem 0}
/* The original measurement diagram stays intact, with all corners inside the circle. */
.card[data-id="p58-278"] .visual.normalized-photo>img{width:60%;height:60%;left:20%;top:20%;object-fit:contain;transform:none}

/* Review 109: every cover receives the same subtle zoom, including galleries. */
.cover-motion{width:100%;transform-origin:center;transition:scale .3s ease}
.cover-motion .visual:before{transition:scale .3s ease}
@media (hover:hover) and (pointer:fine){
 .card:hover .cover-motion{scale:1.025}
 .card:hover .cover-motion .visual:before{scale:.9756097561}
}
.card:focus-visible .cover-motion{scale:1.025}
.card:focus-visible .cover-motion .visual:before{scale:.9756097561}
@media(prefers-reduced-motion:reduce){.cover-motion,.cover-motion .visual:before{transition:none}}
.card[data-id="p50-246"] .visual>img{width:70%;height:70%;left:15%;top:15%}
.card[data-id="saco-simil-lino-50x71"] .visual>img{width:68%;height:68%;left:16%;top:16%}
.card[data-id="p46-224"] .visual>img{width:66%;height:66%;left:17%;top:17%}
.card[data-id="revision101-83"] .visual>img{width:84%;height:84%;left:8%;top:8%;object-fit:contain;transform:none}
.card[data-id="p51-248"] .visual .product-gallery.items-3{inset:21% 13% 18%;gap:0;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1fr 1fr}
.card[data-id="p51-248"] .product-gallery.items-3 figure:last-child{width:56%;grid-column:1/3;justify-self:center}
.card[data-id="p58-278"] .visual .product-gallery.items-2{inset:18% 10%;gap:3%;grid-template-columns:.8fr 1.4fr}
.card[data-id="p58-278"] .product-gallery.items-2 figure:first-child{transform:none}
.card[data-id="p58-278"] .product-gallery.items-2 figure:last-child img{filter:drop-shadow(0 0 1px white)}
.card[data-id="p44-214"] .visual>img{width:74%;height:74%;left:13%;top:13%;object-fit:contain;transform:none;filter:none}
.card[data-id="p56-275"] .visual>img,.card[data-id="p56-274"] .visual>img,.card[data-id="zoho-0a5282a527f95e"] .visual>img{width:76%;height:76%;left:12%;top:12%;object-fit:contain;transform:none;filter:none}
.card[data-id="p58-278"] .product-gallery.items-2 figure:first-child{transform:scale(1.6)}
.card[data-id="p58-278"] .product-gallery.items-2 figure:last-child{transform:scale(1.05)}
.card[data-id="p58-278"] .product-gallery.items-2 figure:last-child img{filter:none}
.card[data-id="p58-278"] .product-gallery.items-2 figure:first-child{transform:scale(1.4)}
/* Clear next steps after a successful addition, in the same product sheet. */
.cart-added{margin-top:16px;padding-top:15px;border-top:1px solid #d7d8dd}
.cart-added p{margin:0 0 12px;font-size:14px;font-weight:700;color:var(--ink)}
.cart-added-actions{display:flex;flex-wrap:wrap;gap:10px}
.cart-added-actions button{flex:1;min-width:145px}
@media(max-width:420px){.cart-added-actions{flex-direction:column}.cart-added-actions button{width:100%}}
/* Clean original brand artwork with stronger colour, retaining the existing identity. */
.brand img{filter:saturate(1.22) contrast(1.05)}
footer .footer-grid{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:28px;align-items:start;margin-bottom:27px}
footer .footer-brand b{font-size:32px;color:var(--ink)}
footer .footer-brand p{font:22px/1.25 Catalog,Arial;max-width:220px;margin:12px 0 0}
footer h2{font:700 19px Catalog,Arial;margin:3px 0 13px;color:var(--ink)}
footer address{font-style:normal}
footer .footer-address a,footer .footer-contact>a{font:13px/1.85 Arial,sans-serif;color:#555866;text-decoration:none}
footer .footer-contact>a{display:block;overflow-wrap:anywhere}
footer .footer-contact .footer-phone{font-weight:700;font-size:15px}
footer a:hover{text-decoration:underline;text-underline-offset:3px}
footer .footer-socials{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px;margin-top:15px}
footer .footer-socials a{display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid #d5d5dc;border-radius:5px;background:white;font:12px/1.2 Arial,sans-serif;text-decoration:none}
footer .footer-socials a:hover{background:#fff;border-color:currentColor}
footer .social-instagram{color:#b62e79}footer .social-linkedin{color:#0a66a0}footer .social-facebook{color:#225dc6}
footer .footer-catalogue-note{display:block;line-height:1.6}
@media(max-width:1100px){footer .footer-grid{grid-template-columns:1fr 1fr;gap:25px}footer .footer-brand{grid-column:1/-1}footer .footer-brand p{max-width:none;margin-top:7px}}
@media(max-width:620px){footer .footer-grid{grid-template-columns:1fr;gap:24px}footer .footer-brand{grid-column:auto}footer .footer-brand p{font-size:21px}footer .footer-socials{gap:8px}footer .footer-socials a{padding:10px 12px}}

/* Final web review: optical alignment, no unrelated product artwork changes. */
.intro-mark img{filter:saturate(1.22) contrast(1.05)}
.card[data-id="p51-248"] .visual .product-gallery.items-3{inset:24% 13% 17%;gap:0;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1fr 1fr}
.card[data-id="p51-248"] .product-gallery.items-3 figure:last-child{width:59%;grid-column:1/3;justify-self:center}
.card[data-id="p50-246"] .visual>img{width:74%;height:74%;left:13%;top:13%}
.card[data-id="p56-275"] .visual>img{width:96%;height:96%;left:2%;top:2%}
.card[data-id="p56-277"] .visual{overflow:clip}
.card[data-id="p56-277"] .visual>img{width:100%;height:122%;left:0;top:-47%;object-fit:contain;clip-path:inset(45% 0 0);filter:none}
.payment-note{font-size:13px;line-height:1.6;color:var(--ink);background:#f4f0f5;border-radius:6px;padding:14px}
.order-trap{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
#order-status{font-size:14px;line-height:1.6;color:#a52c5c}.order-success p{line-height:1.7}.primary-button:disabled{opacity:.65;cursor:wait}
/* Review 113: balance the photo silhouettes within their existing circles. */
.card[data-id="p50-244"] .visual>img{top:9%}
.card[data-id="p50-246"] .visual>img{top:10.5%}
.card[data-id="p51-248"] .product-gallery.items-3 figure:last-child{width:66%;transform:translateY(-2%)}
.card[data-id="p59-284"] .visual .product-gallery.items-2{inset:10% 10%;gap:0;grid-template-columns:1fr 1fr}
.card[data-id="p59-284"] .product-gallery.items-2 figure:first-child{transform:translateX(3%) scale(1.06)}
.card[data-id="p59-284"] .product-gallery.items-2 figure:last-child{transform:translateX(-3%) scale(1.06)}
.card[data-id="puzzle-madera-infantil-marco"] .visual>img{clip-path:inset(3% 11.2% 3.2% 11.2%)}

/* Keep material inquiry actions separated on desktop and mobile. */
.material-actions{justify-content:flex-start;flex-wrap:wrap;gap:12px;margin-top:12px}

/* Full material lists share the dialog scroll; no hidden inner list. */
.material-groups ul{max-height:none;overflow:visible;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem 2rem;padding-right:.5rem}
.material-groups li{break-inside:avoid;overflow-wrap:anywhere}
#detail,#zoom{scrollbar-gutter:stable;scrollbar-width:auto;scrollbar-color:#777985 #eeedf0}
#detail::-webkit-scrollbar,#zoom::-webkit-scrollbar,.chart-scroll::-webkit-scrollbar{width:12px;height:12px}
#detail::-webkit-scrollbar-thumb,#zoom::-webkit-scrollbar-thumb,.chart-scroll::-webkit-scrollbar-thumb{background:#777985;border:2px solid #eeedf0;border-radius:8px}
#detail::-webkit-scrollbar-track,#zoom::-webkit-scrollbar-track,.chart-scroll::-webkit-scrollbar-track{background:#eeedf0}
#chart-title{font:700 24px Catalog;margin:0 40px 15px 0}
#chart-status{font-size:14px;min-height:1.3em;margin:.5rem 0}
#zoom .chart-scroll{min-height:180px;scrollbar-gutter:stable;scrollbar-color:#777985 #eeedf0}
#chart-code-entry{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:15px 0 0;padding:14px;background:#f2f1f5;border-radius:6px}
#chart-code-entry label,#chart-code-entry small{width:100%;font-size:13px}
#chart-code-entry input{min-width:160px;flex:1;padding:10px;border:1px solid #cacbd2;border-radius:4px}
#chart-code-entry button,#chart-code-list button{padding:10px;border:1px solid #cacbd2;border-radius:4px;background:white;color:var(--ink)}
#chart-use-code{background:var(--slate)!important;color:white!important}
#chart-text-codes{margin-top:15px}#chart-text-codes summary{cursor:pointer}
#chart-code-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;margin-top:10px;user-select:text}
#chart-code-list button{text-align:left;font-size:13px}
@media(max-width:620px){.material-groups ul{grid-template-columns:1fr}#zoom .chart-scroll{max-height:56vh}}

/* Material orders collect multiple products without assigning an unknown price. */
.material-cart-toggle{border:1px solid #bfc0c7;border-radius:6px;background:white;color:var(--ink);padding:11px 12px;font-size:13px;white-space:nowrap}
.material-summary{border-top:1px solid var(--line);margin-top:22px;padding-top:16px}
.material-summary h3{font:700 25px Catalog;margin:0 0 12px}
.material-summary ol{padding-left:22px;margin:12px 0}
.material-summary li{padding:12px 0;border-bottom:1px solid var(--line)}
.material-summary li p{font-size:13px;line-height:1.6;margin:8px 0;overflow-wrap:anywhere}
.material-add-actions,.material-line-actions{display:flex;gap:12px;flex-wrap:wrap}
.material-line-actions button{border:1px solid #bfc0c7;background:white;color:var(--ink);padding:7px 12px;border-radius:4px;font-size:13px}
.material-review{padding:0 32px 32px}.material-review>.secondary-button{margin-top:16px}
#material-added:empty{display:none}#material-added{font-size:13px;line-height:1.5}
#zoom[open]{display:flex;flex-direction:column;height:94dvh;max-height:94dvh;overflow:hidden}
#zoom #chart-title,#zoom .chart-tools,#zoom #chart-code-entry,#zoom #chart-status{flex-shrink:0}
#zoom #chart-code-entry{margin:0 0 10px;padding:10px}
#zoom #chart-code-entry small{display:none}
#zoom #chart-status{min-height:0;margin:0 0 8px}
#zoom .chart-scroll{flex:1;min-height:120px;max-height:none;overflow:auto}
#zoom #chart-text-codes{flex-shrink:0;max-height:28vh;overflow:auto;scrollbar-gutter:stable}
@media(max-width:620px){.material-cart-toggle{font-size:11px;padding:8px}.material-review{padding:0 24px 24px}#zoom #chart-code-entry{gap:6px}#zoom #chart-code-entry button{font-size:12px;padding:8px}#zoom #chart-code-entry input{padding:8px}#zoom #chart-title{font-size:20px;margin-bottom:9px}#zoom .chart-tools{gap:6px;margin-bottom:8px}}

/* Unified basket: materials retain their codes and free-text sale quantities. */
.cart-line-actions{display:flex;flex-direction:column;gap:10px;align-items:flex-end}.edit-material{border:0;background:transparent;color:var(--ink);font:inherit;font-size:12px;text-decoration:underline;cursor:pointer}.pending-prices{font-size:13px;line-height:1.5;background:#f3f1f7;padding:14px;border-radius:10px}.cart-line small:empty{display:none}

.material-groups li:has(.material-choice){list-style:none}.material-choice{width:100%;display:flex;justify-content:space-between;gap:14px;text-align:left;border:0;background:transparent;color:inherit;padding:8px 3px;cursor:pointer;font:inherit}.material-choice:hover,.material-choice:focus-visible{background:#f0eef5;border-radius:6px}.material-choice span{white-space:nowrap;color:#a02469;font-size:11px}.cart-line .line-price-pending{display:inline-block;padding:5px 8px;border-radius:5px;background:#f9e9f1;color:#8b2258;font-weight:700}.pending-price-panel{margin:22px 0;padding:18px;border:1px solid #e6bdd2;border-radius:10px;background:#fcf4f8}.pending-price-panel h3{font-size:16px;margin:0 0 12px;color:#8b2258}.pending-price-panel ul{padding-left:18px;margin:0}.pending-price-panel li{margin:12px 0;font-size:13px;line-height:1.45}.pending-price-panel li span{display:block;color:#56586a}.pending-price-panel p,.partial-total-note{font-size:12px;line-height:1.5;color:#56586a}.cart-totals .partial-total-note{margin-top:10px}

/* Code selection stays beside the entry, above the chart. */
#zoom #chart-text-codes{margin:0 0 10px;overflow:visible;max-height:none}
#chart-text-codes label{display:block;font-size:13px;margin-bottom:5px}
#chart-code-list{display:block;width:100%;margin:0;padding:10px;border:1px solid #cacbd2;border-radius:4px;background:white;color:var(--ink);font:inherit}
#material-pick-code{margin:8px 0}

#chart-chosen-range{width:100%;padding:9px;border:1px solid #cacbd2;border-radius:4px;background:white;color:var(--ink);font:inherit;margin:0 0 8px}
#chart-range-entry{margin-top:8px}#chart-selection-status{font-size:13px;margin:6px 0 0}
#zoom #chart-text-codes{flex-shrink:1;min-height:90px;max-height:36vh;overflow-y:auto}

.official-charts{margin-top:26px;padding-top:22px;border-top:1px solid #e1e1e7}.official-charts h3{margin:0 0 10px;font-size:17px}.official-charts>p{font-size:13px;color:var(--muted);margin-bottom:12px}

/* Keep sections reachable while browsing a long catalogue. */
#sidebar{position:sticky;top:var(--catalog-header-height,98px);align-self:start;max-height:calc(100dvh - var(--catalog-header-height,98px));overflow-y:auto;overscroll-behavior:contain;padding-bottom:24px;scrollbar-gutter:stable}
@media(max-width:620px){
 #sidebar{position:fixed;top:var(--catalog-header-height,115px);left:0;right:0;z-index:6;max-height:calc(100dvh - var(--catalog-header-height,115px));background:var(--paper);box-shadow:0 12px 24px #30334426;border-top:1px solid var(--line)}
 #sidebar.open{display:block}
}

/* Functional storage information; no optional tracking is installed. */
.storage-notice[hidden]{display:none}.storage-notice{position:fixed;z-index:12;bottom:18px;left:18px;right:18px;max-width:820px;margin:auto;display:flex;align-items:center;gap:24px;padding:20px 24px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:16px;box-shadow:0 8px 35px #30334426;font-size:14px;line-height:1.5}.storage-notice strong{font-size:16px}.storage-notice p{margin:6px 0 0}.storage-notice a{text-decoration:underline}.storage-notice button{border:0;border-radius:8px;background:var(--slate);color:#fff;font:700 14px Arial;padding:12px 20px;flex-shrink:0}.footer-cookie-link{font-size:13px;color:var(--muted)}.footer-cookie-link button{border:0;background:none;color:inherit;font:inherit;padding:0;text-decoration:underline;cursor:pointer}@media(max-width:600px){.storage-notice{bottom:10px;left:10px;right:10px;padding:16px;gap:12px;align-items:flex-start;flex-direction:column}.storage-notice button{align-self:flex-end}.storage-notice strong{font-size:15px}.storage-notice p{font-size:13px}}

/* Complete photographed colour families, without the small cover swatches. */
.card[data-id="p5-2"] .visual.normalized-photo>img,.card[data-id="p7-13"] .visual.normalized-photo>img,.card[data-id="p8-17"] .visual.normalized-photo>img,.card[data-id="p13-47"] .visual.normalized-photo>img{width:76%;height:76%;left:12%;top:12%;object-fit:contain;transform:none}

/* Keep all four fluorescent mugs comfortably inside the grey circle. */
.card[data-id="p7-13"] .visual.normalized-photo>img{width:64%;height:64%;left:18%;top:18%;object-fit:contain;transform:none}

/* Only the requested mug-family cover compositions. */
.card[data-id="p5-1"] .visual.normalized-photo>img{width:86%;height:86%;left:7%;top:7%;object-fit:contain;transform:none}
.card[data-id="p5-2"] .visual.normalized-photo>img{width:76%;height:76%;left:13%;top:10%;object-fit:contain;transform:none}

/* Explicit clear control for Safari/iPhone and desktop search. */
.search{position:relative}
.search input{min-width:0;padding-right:30px}
.search>kbd{position:absolute;right:14px;pointer-events:none}
#search::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}
.search-clear{position:absolute;right:5px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:5px;background:transparent;color:var(--ink);flex:none}
.search-clear[hidden]{display:none}
.search-clear:hover{background:#e9e9ee}
.search-clear:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}
@media(hover:none) and (pointer:coarse){.search>kbd{display:none}}
