.app-panel{background:white;border:1px solid var(--line);border-radius:16px;padding:clamp(20px,3vw,36px);box-shadow:0 8px 28px #14252d05}.app-panel h2,.app-panel h3,.app-dialog h2{font:400 36px/1.05 var(--fd);margin:0 0 18px}.app-panel p{margin:0 0 18px}.app-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.app-field{display:flex;flex-direction:column;gap:8px;font-size:15px;font-weight:600;margin:0 0 20px}.app-field input,.app-field select,.app-field textarea{width:100%;border:1px solid #bdccd3;background:#fff;color:var(--txt);border-radius:7px;padding:13px 14px;font:400 16px/1.4 var(--fb);min-width:0}.app-field textarea{min-height:115px;resize:vertical}.app-field small,.app-note{font-size:14px;line-height:1.5;font-weight:400;color:var(--txt-2)}.app-step{display:flex;border:1px solid #bdccd3;border-radius:7px;overflow:hidden}.app-step input{border:0;text-align:center;border-radius:0;appearance:textfield}.app-step button{background:#f1f5f6;border:0;padding:10px 17px;font-size:22px;color:var(--txt);cursor:pointer}.app-step input::-webkit-inner-spin-button{display:none}.app-kicker{font-size:13px!important;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--red-700);margin:10px 0 18px!important}.app-button{display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:50px;padding:12px 24px;border:0;border-radius:8px;background:var(--red-cta);color:#fff;font:400 21px/1.15 var(--fd);letter-spacing:.04em;cursor:pointer;text-transform:uppercase}.app-button:hover{background:#b32924;color:white}.app-button:disabled{background:#c5cdd1;cursor:not-allowed}.app-secondary{background:#edf2f4;color:var(--ink);border:1px solid var(--line)}.app-secondary:hover{background:#dce5e9;color:var(--ink)}.app-drop{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:2px dashed #b9cbd3;border-radius:10px;background:#f5f8fa;min-height:148px;text-align:center;padding:24px;cursor:pointer;font-size:16px;font-weight:600;margin-bottom:20px}.app-drop input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.app-drop:focus-within,.app-drop.dragging{outline:2px solid var(--red);outline-offset:3px}.app-drop small{font-size:14px;font-weight:400;color:var(--txt-2)}.app-drop img{max-height:90px;width:auto;max-width:100%;object-fit:contain}.app-review{background:#f2f6f8;position:sticky;top:90px}.app-review dl{margin:18px 0;display:grid;grid-template-columns:1fr 1fr;gap:12px}.app-review dd{text-align:right;overflow-wrap:anywhere;margin:0}.app-review dt{color:var(--txt-2)}.app-total{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:20px 0;gap:15px}.app-total strong{font:400 40px/1 var(--fd)}.app-preview{height:280px;background:repeating-conic-gradient(#e5ecef 0% 25%,#f7f9fa 0% 50%) 50%/18px 18px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;border-radius:10px;padding:20px}.app-sheet{background:#fff;border:2px solid var(--red);min-width:24px;min-height:24px;max-width:100%;max-height:100%;display:flex;align-items:center;justify-content:center;transition:width .2s,height .2s;overflow:hidden}.app-sheet img{max-width:100%;max-height:100%;object-fit:contain}.app-sizes{border:0;margin:0 0 22px;padding:0}.app-sizes legend{margin-bottom:12px;font-weight:600}.app-size{display:flex;gap:12px;align-items:center;border:1px solid var(--line);padding:14px;margin:0 0 8px;border-radius:8px;cursor:pointer}.app-size:has(input:checked){border-color:var(--red);background:#fff3f2}.app-size input{accent-color:var(--red);width:18px;height:18px}.app-size span{flex:1}.app-size small{display:block;color:var(--txt-2)}.app-size strong{font:400 27px/1 var(--fd)}.app-error{color:#a2211c;font-size:14px}.app-status{font-size:14px;margin-top:14px;line-height:1.5}.app-success{padding:20px;background:#eff7f3;border:1px solid #90b6a3;border-radius:8px}.app-types{display:flex;flex-wrap:wrap;gap:8px;padding:0;border:0;margin:0 0 24px}.app-types legend{margin-bottom:12px;font-weight:600}.app-types label{border:1px solid var(--line);border-radius:6px;padding:10px 12px;font-size:14px;cursor:pointer}.app-types label:has(input:checked){border-color:var(--red);background:#fff2f1}.app-types input{accent-color:var(--red);margin-right:6px}.app-dialog{border:0;border-radius:14px;width:min(620px,calc(100vw - 28px));max-height:90vh;padding:28px;color:var(--txt);background:white;box-shadow:0 24px 100px #14252d33}.app-dialog::backdrop{background:#14252d80}.app-dialog header{display:flex;align-items:center;justify-content:space-between;gap:12px}.app-close{border:1px solid var(--line);background:#f2f6f8;border-radius:6px;width:40px;height:40px;cursor:pointer;font-size:24px}.app-cart-item{border-bottom:1px solid var(--line);padding:20px 0}.app-cart-item h3{font:400 25px/1.15 var(--fd);margin:0 0 8px}.app-cart-item p{font-size:14px;overflow-wrap:anywhere;margin:5px 0}.app-cart-actions{display:flex;align-items:center;gap:12px;margin-top:12px}.app-cart-actions input{width:75px;padding:8px;border:1px solid var(--line);border-radius:6px;font-size:16px}.app-remove{margin-left:auto;border:0;background:none;text-decoration:underline;cursor:pointer;color:#a52620;font-size:14px}.app-nav{position:absolute;top:62px;left:0;right:0;background:white;padding:20px;box-shadow:0 12px 18px #14252d14;border-bottom:1px solid var(--line)}.app-nav a{display:block;padding:13px;font:400 25px/1 var(--fd);color:var(--ink)}.app-badge{position:absolute;right:-5px;top:-5px;border-radius:20px;background:var(--red);color:white;min-width:22px;height:22px;font:700 12px/22px var(--fb);text-align:center}.app-demo{background:#edf3f6;border:1px solid #c6d7e0;padding:14px;border-radius:8px;font-size:14px;color:#344f5d;margin:0 0 20px}.app-checkout{max-width:1150px;margin:45px auto;padding:0 var(--gut)}.app-checkout h1{font:400 clamp(44px,7vw,78px)/1 var(--fd);margin:0 0 30px}.app-fulfilment{display:flex;gap:16px;margin-bottom:20px}.app-fulfilment input{accent-color:var(--red)}[hidden]{display:none!important}@media(max-width:700px){.app-grid{grid-template-columns:1fr}.app-review{position:static}.app-dialog{padding:20px}.app-preview{height:230px}.app-types label{flex:1 1 40%}.app-panel{padding:20px}.app-total strong{font-size:32px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
/* Original CanCorp palette; page colours come directly from the original stylesheet and markup. */

html{scroll-behavior:smooth;scroll-padding-top:90px}[data-reveal]{opacity:1;transform:none}section{scroll-margin-top:88px}
.app-panel,.app-dialog{background:var(--bone);color:var(--txt)}
.app-review{background:var(--ink);color:var(--cream)}
.app-review dt,.app-review .app-note,.app-review .app-status{color:var(--grey-300)}
.app-review .app-kicker{color:var(--red)}
.app-review .app-total,.app-review .app-cart-item{border-color:var(--line-dk)}
.app-review .app-remove{color:var(--red)}
.app-dialog>.app-review{color:var(--txt)}.app-dialog>.app-review dt{color:var(--txt-2)}
.app-field input,.app-field select,.app-field textarea{background:var(--bone);color:var(--txt);border-color:var(--line)}
.app-drop{background:var(--paper);border-color:var(--grey-400)}
.app-step button,.app-secondary,.app-close{background:var(--sand);color:var(--ink)}
.app-size:has(input:checked),.app-types label:has(input:checked){background:var(--red-100)}
.app-preview{background:repeating-conic-gradient(#25343b 0% 25%,#1b272e 0% 50%) 50%/18px 18px;border-color:var(--line-dk)}
.app-nav{background:var(--ink);border-color:var(--line-dk)}.app-nav a{color:var(--cream)}
.app-demo{background:var(--sand);border-color:var(--line);color:var(--txt-2)}
#cc-header .cc-navlink{white-space:nowrap;font-size:17px!important;padding:0 8px!important}
#cc-header [data-desk] .cc-cta{white-space:nowrap;font-size:17px!important;padding:0 16px!important}
#cc-header [data-desk]{gap:4px!important}
@media(min-width:1024px) and (max-width:1199px){#cc-header [data-callnum]{display:none}}

.artwork-sizing{margin:0 0 24px}.artwork-sizing button{font-size:19px}.artwork-sizing button[aria-pressed="true"]{border-color:var(--red);background:var(--red-100);color:var(--red-700)}.artwork-sizing .app-note{margin:12px 0 0}.artwork-sizing [data-original-size]{padding:12px 0 0;border-top:1px solid var(--line)}.artwork-sizing [data-original-size]:empty{display:none}
.app-sheet{min-width:0;min-height:0}
.services-menu{position:relative;display:flex;align-items:stretch}.services-toggle{border:0;background:transparent;color:var(--cream);cursor:pointer;min-width:30px;font-size:21px}.services-toggle:focus-visible{outline:2px solid var(--red);outline-offset:-3px}.services-submenu{position:absolute;top:100%;left:0;min-width:220px;background:var(--ink);border:1px solid var(--line-dk);box-shadow:0 12px 24px #0004;padding:8px;z-index:80}.services-submenu a{display:block;color:var(--cream);padding:16px;font:400 21px/1.2 var(--fd);white-space:nowrap}.services-submenu a:hover,.services-submenu a:focus-visible{background:var(--ink-deep);color:var(--red)}.app-nav .services-menu{display:grid;grid-template-columns:1fr 46px}.app-nav .services-submenu{position:static;grid-column:1/-1;border:0;box-shadow:none;padding-left:18px}

.imprint-methods-trigger{position:relative;display:flex;align-items:center;gap:8px;padding:0 8px;font:400 17px/1 var(--fd);letter-spacing:.06em;color:var(--grey-300);white-space:nowrap}.imprint-methods-trigger::after{content:"⌄";font:400 18px/1 var(--fb)}.imprint-methods-trigger[data-active="true"]{color:#fff}.imprint-methods-trigger[data-active="true"]::before{content:"";position:absolute;left:8px;right:8px;bottom:15px;height:3px;background:var(--red)}.app-nav .services-menu{display:block}.app-nav .imprint-methods-trigger{width:100%;padding:13px;text-align:left;justify-content:space-between;font-size:25px;min-height:48px}.app-nav .imprint-methods-trigger::before{display:none}.services-submenu [aria-current="page"]{color:var(--red)}
@media(min-width:1024px) and (max-width:1440px){#cc-header [data-callnum]{display:none}}@media(min-width:1024px) and (max-width:1199px){#cc-header [data-desk]>.cc-cta{display:none!important}}
 .imprint-methods-trigger::after{display:none}


@media(min-width:1024px) and (max-width:1399px){#cc-header [data-desk]>.cc-cta{display:none!important}}

.imprint-methods-trigger[data-active="true"]::before,.imprint-methods-trigger[aria-expanded="true"]::before{content:"";position:absolute;left:10px;right:10px;bottom:15px;height:3px;background:var(--red);display:block}.app-nav .imprint-methods-trigger[data-active="true"]::before,.app-nav .imprint-methods-trigger[aria-expanded="true"]::before{bottom:3px;right:auto;width:36px}
