/* Impimagen presentation layer. Existing layouts, controls and breakpoints remain. */
:root { --lime:#d90819; --accent:#d90819; --bg:#fff; --border:#dedede; color-scheme:light; }
.brand-art { width:148px; height:70px; aspect-ratio:auto; overflow:visible; }
.brand-art img { position:static; width:100%; height:100%; max-width:100%; object-fit:contain; mix-blend-mode:normal; }
.commerce-header .brand-art { width:140px; height:74px; }
.topbar .brand,.wordmark { display:flex; align-items:center; flex-shrink:0; letter-spacing:normal; }
.topbar .brand img,.wordmark img { display:block; width:104px; height:56px; object-fit:contain; }
.site-header,.commerce-header { background:#fff; }
.desktop-hero { background:#fafafa; }
.hero-copy,.mobile-copy { color:#171717; }
.hero-copy em,.mobile-copy em { color:var(--accent); }
.hero-copy p,.mobile-copy p { color:#525252; }
.hero-cta,.solid-button { background:var(--accent); color:#fff; border-color:var(--accent); }
.hero-cta:hover,.solid-button:hover { background:#b90013; border-color:#b90013; color:#fff; }
.hero-prev,.hero-next { background:#fff; border-color:#ddd; color:#242424; }
.pagination-dot[aria-current=true]::after { background:var(--accent); }
.stkr-footer { background:#fafafa; }
.stkr-footer .brand-art { width:144px; height:78px; }
.stkr-footer-email,.stkr-footer-address { color:#303030; }
.product-mobile-purchase { background:#fff; }
.product-mobile-purchase .solid-button { color:#fff; }
.preview-primary,.btn-primary,.button-primary,button.primary { background:var(--accent); border-color:var(--accent); color:#fff; }
input[type=checkbox],input[type=radio] { accent-color:var(--accent); }
.brand-art img,.topbar .brand img { user-select:none; }
@media(max-width:760px) {
 .brand-art { width:108px; height:58px; }
 .commerce-header .brand-art { width:108px; height:58px; }
 .mobile-hero,.mobile-product-photo { background:#fafafa; }
 .mobile-product-photo::after { box-shadow:inset 0 16px 18px -12px #fafafa,inset 0 -18px 18px -12px #fafafa; }
 .topbar .brand img { width:82px; height:48px; }
}

#product-page .product-add-cart,#checkout-pay[aria-busy="true"] { color:#fff; }
.gallery-zoom-icon img,.product-delivery-note img,.shape-type-icon { filter:brightness(0); }
.cart-edit-form input:not([type=checkbox]),.cart-edit-form select { color:#1e1e1e; }

.checkout-payment-logo { filter:brightness(0); }

.whatsapp,.whatsapp:hover { color:#fff; }

/* Brand controls use red/white; state messages retain their semantic colors. */
:root {
 --control-line:#8a8a8a; --control-hover:#5c5c5c;
 --control-disabled:#e9e9e9; --control-disabled-text:#626262;
 --status-success:#257045; --status-warning:#805416;
 --status-error:#ad2532; --status-info:#245a93;
}
#product-page .shape-choice>span { border-color:var(--control-line); background:#fff; }
#product-page .shape-choice:hover>span { border-color:var(--control-hover); background:#f5f5f5; }
#product-page .shape-choice input:checked+span { border-color:var(--accent); background:#fff3f4; }
#product-page .shape-choice:has(input:checked):hover>span { border-color:var(--accent); background:#fbe8eb; }
#product-page .shape-choice input:disabled+span,
#product-page .shape-choice:hover input:disabled+span {
 border-color:#b0b0b0; background:var(--control-disabled); color:var(--control-disabled-text); box-shadow:none; cursor:default;
}
#product-page .shape-choice input:disabled+span .shape-type-icon { opacity:.55; }
#product-page .shape-choice input:disabled+span small { color:var(--control-disabled-text); }

/* Keep the existing field geometry and make boundaries visible on light surfaces. */
#product-page :is(input[type=number],input[type=text],select),
:is(.workspace,.operations,.mfa-panel,.page,.cart-edit-form,.commerce-form,.checkout-customer) :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]) {
 border-color:var(--control-line); background:#fff; color:#1e1e1e;
}
#product-page .length-control { border-color:var(--control-line); }
#product-page :is(input[type=number],input[type=text],select):hover:not(:disabled),
:is(.workspace,.operations,.mfa-panel,.page,.cart-edit-form,.commerce-form,.checkout-customer) :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):hover:not(:disabled) { border-color:var(--control-hover); }
#product-page :is(input[type=number],input[type=text],select):focus-visible,
:is(.workspace,.operations,.mfa-panel,.page,.cart-edit-form,.commerce-form,.checkout-customer) :is(input,select,textarea):focus-visible {
 outline:2px solid var(--accent); outline-offset:3px;
}
#product-page :is(input[type=number],input[type=text],select):disabled,
:is(.workspace,.operations,.mfa-panel,.page,.cart-edit-form,.commerce-form,.checkout-customer) :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):disabled {
 border-color:#b0b0b0; background:var(--control-disabled); color:var(--control-disabled-text); opacity:1;
}
.commerce-form .commerce-options label { border-color:var(--control-line); background:#fff; }
.commerce-form .commerce-options label:hover { border-color:var(--control-hover); }
.commerce-form .commerce-options label:has(:checked) { border-color:var(--accent); background:#fff3f4; }
.commerce-form .commerce-options label:has(:focus-visible) { outline:2px solid var(--accent); outline-offset:3px; }
.commerce-form .commerce-options label:has(:disabled) { border-color:#b0b0b0; background:var(--control-disabled); color:var(--control-disabled-text); }

#product-page .product-add-cart,
.checkout-payment .solid-button,
.mfa-panel button,
.button.primary,
button.primary,
.btn.primary { background:var(--accent); border-color:var(--accent); color:#fff; }
#product-page .product-add-cart:hover:not(:disabled):not([aria-busy=true]),
.checkout-payment .solid-button:hover:not(:disabled):not([aria-busy=true]),
.mfa-panel button:hover:not(:disabled),
.button.primary:hover:not(:disabled),
button.primary:hover:not(:disabled),
.btn.primary:hover:not(:disabled) { background:#b90013; border-color:#b90013; color:#fff; }
#product-page .product-add-cart:disabled,
.checkout-payment .solid-button:disabled,
.mfa-panel button:disabled,
.button.primary:disabled,
button.primary:disabled,
.btn.primary:disabled,
.commerce-form .solid-button:disabled,
.solid-button:disabled { background:var(--control-disabled); border-color:#b0b0b0; color:var(--control-disabled-text); opacity:1; }
.media-position.is-main { color:#fff; }

.commerce-message[data-success=true],.payment-feedback--approved,
.checkout-validation[data-state=ready],.operations .success,.operations .badge.good,
.product-added,#product-page .file-drop.has-file small,
.summary-file strong[data-ready=true]::after { color:var(--status-success); }
.operations .badge.good { border-color:#25704550; background:#f0f7f2; }
.field-error,#product-page .field-error,#editor-error,
.checkout-validation[data-state=error],.operations .error { color:var(--status-error); }
.operations .error { border-color:#ad253250; background:#ad253210; }
.status.green { color:var(--status-success); }
.status.amber { color:var(--status-warning); }
.status.red { color:var(--status-error); }
.status.blue { color:var(--status-info); }

/* Approved compact design-help checkbox, shared by every product material. */
#product-page[data-material] .artwork-choice-row {
 display:flex; flex-wrap:wrap; align-items:center; gap:12px 24px;
}
#product-page .artwork-choice-row>.field-hint { flex:1 1 210px; margin:0; }
#product-page[data-material] .design-addon {
 display:block; flex:0 1 auto; align-self:center; min-width:0; min-height:0; max-width:100%;
 margin:0; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none;
}
#product-page[data-material] .design-addon:is(:hover,:has(input:checked),:has(input:disabled)) {
 border:0; background:transparent; box-shadow:none;
}
#product-page[data-material] .design-addon>label {
 display:flex; align-items:flex-start; gap:12px; min-width:0; min-height:44px; margin:0;
 font-size:15px; font-weight:500; line-height:1.35; color:#1e1e1e; cursor:pointer;
}
#product-page[data-material] .design-addon input[type=checkbox] {
 appearance:auto; flex:0 0 20px; width:20px; height:20px; margin:0; float:none; accent-color:var(--accent);
}
#product-page[data-material] .design-addon label>span { display:block; min-width:0; }
#product-page[data-material] .design-addon small {
 display:block; margin:3px 0 0; font-size:13px; font-weight:400; line-height:1.35; color:#5c5c5c;
}
#product-page[data-material] .design-addon>label:has(input:disabled) { color:var(--control-disabled-text); cursor:default; }

/* Remove redundant framing while preserving the STKR page structure. */
#product-page .product-editorial-heading>h2 { margin-top:0; }
#product-page .product-editorial { max-width:1040px; }
#product-page .product-key-facts { display:flex;flex-wrap:wrap;gap:8px 32px;margin:20px 0;padding-left:18px; }
#product-page .product-key-facts li { margin:0; }
#product-page .product-inclusions { display:grid;gap:10px;margin:0 0 24px;font-size:14px;line-height:1.65; }
#product-page .product-inclusions>div { display:grid;grid-template-columns:120px minmax(0,1fr);gap:8px; }
#product-page .product-inclusions dt { font-weight:600;color:#1e1e1e; }
#product-page .product-inclusions dd { margin:0;color:#5c5c5c;white-space:pre-line;overflow-wrap:anywhere; }
#product-page .product-detail-disclosures>details { border-top:1px solid #17171735; }
#product-page .product-detail-disclosures>details:last-child { border-bottom:1px solid #17171735; }
#product-page .product-detail-disclosures summary { padding:17px 4px;min-height:56px;cursor:pointer;font-size:16px;font-weight:600;line-height:1.5; }
#product-page .product-detail-disclosures summary::marker { color:#c90018; }
#product-page .product-detail-disclosures summary:focus-visible { outline:2px solid #c90018;outline-offset:2px; }
#product-page .product-disclosure-copy { display:grid;gap:12px;padding:0 4px 20px;max-width:90ch; }
#product-page .product-catalog-questions { display:grid;gap:16px;margin:0;font-size:14px;line-height:1.75; }
#product-page .product-catalog-questions dt { font-weight:600; }
#product-page .product-catalog-questions dd { margin:4px 0 0;color:#5c5c5c;white-space:pre-line;overflow-wrap:anywhere; }
@media(max-width:760px) {
 #product-page .product-key-facts { display:grid;gap:6px;margin:16px 0; }
 #product-page .product-inclusions>div { grid-template-columns:1fr;gap:2px; }
}
#product-page .product-related>h2 { margin-bottom:20px; }
#product-preview-summary { display:flex; flex-direction:column; align-items:flex-start; gap:16px; }
#product-preview-summary>p { margin:0; }
.skip:focus { color:#fff; }
body[data-commerce-page=checkout] .commerce-header .brand { width:auto; height:auto; }
body[data-commerce-page=checkout] .commerce-header .brand-art { width:110px; height:54px; }
.operations .save-bar { background:#fff; }
.operations .connection-list { gap:0 24px; margin:16px 0 24px; }
.operations .connection-list li { padding:10px 0; border-bottom:1px solid #dedede; border-radius:0; }
.operations .connection-list small { margin-top:4px; }
#save-caption:empty { display:none; }
@media(max-width:760px) {
 .mobile-hero { min-height:0; }
 .mobile-product-photo { flex:none; height:clamp(230px,71vw,390px); margin:20px 0 16px; }
 body[data-page=product] .whatsapp { top:auto; right:12px; bottom:calc(16px + env(safe-area-inset-bottom)); width:44px; height:44px; }
 body[data-page=product]:has(#product-page[data-available=true]) .whatsapp { bottom:calc(112px + env(safe-area-inset-bottom)); }
 .workspace .save-bar { padding:10px 16px; gap:8px; }
 .workspace .save-actions .button { min-height:44px; }
 .diagnostics { gap:10px; margin-bottom:18px; }
 .diagnostic { padding-top:8px; }
 .diagnostic-row { padding:4px 0; }
}
