:root{--ink:#172c24;--muted:#65736b;--paper:#fff;--cream:#f5f4ef;--sage:#e5ebe1;--lime:#d8ec87;--line:#dce1d9;--radius:8px;--max:1320px;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,summary{touch-action:manipulation}button{cursor:pointer}img{max-width:100%;display:block}p{line-height:1.7}h1,h2,h3{line-height:1.12;letter-spacing:-.035em}h1{font-size:clamp(2.5rem,5vw,4.6rem);margin:20px 0}h2{font-size:clamp(1.9rem,3vw,2.8rem);margin:14px 0}h3{font-size:1.15rem}a:hover{text-decoration:underline;text-underline-offset:4px}:focus-visible{outline:3px solid #4f7628;outline-offset:4px}[hidden]{display:none!important}.container{max-width:var(--max);padding-inline:40px;margin-inline:auto}.section{padding-block:80px}.eyebrow{font-size:.7rem;letter-spacing:.16em;font-weight:700}.muted{color:var(--muted);font-size:.86rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--ink);color:#fff;padding:17px 25px;border:1px solid var(--ink);border-radius:4px;font-size:.9rem;font-weight:600;min-height:48px;text-decoration:none!important}.button:hover{background:#284738}.button:disabled{opacity:.5;cursor:wait}.button-light{background:var(--lime);border-color:var(--lime);color:var(--ink)}.button-light:hover{background:#e5f4b6}.button-outline{background:transparent;color:var(--ink)}.button-outline:hover{background:var(--sage)}.text-link{font-weight:600;font-size:.9rem;text-decoration:underline;text-underline-offset:5px}.button-row{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.skip-link{position:fixed;inset-block-start:10px;inset-inline-start:10px;transform:translateY(-150%);background:var(--ink);color:#fff;padding:12px;z-index:100}.skip-link:focus{transform:none}.utility{background:var(--ink);color:#f6f7ef;font-size:.7rem;letter-spacing:.03em}.utility-inner{display:flex;align-items:center;justify-content:space-between;min-height:33px}.site-header{background:#fff;border-bottom:1px solid var(--line);position:sticky;inset-block-start:0;z-index:20}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:90px}.logo{display:flex;align-items:center;gap:10px;font-size:1.65rem;letter-spacing:-.065em;font-weight:800;text-decoration:none!important;white-space:nowrap}.logo-mark{background:var(--ink);color:var(--lime);font-size:2rem;padding:1px 10px 6px;border-radius:8px;line-height:1}.logo-light{font-weight:400}.logo small{display:block;font-size:.47rem;letter-spacing:.22em;margin-block-start:5px}.main-nav{display:flex;gap:25px;font-size:.84rem;font-weight:600}.header-actions{display:flex;align-items:center;gap:20px;font-size:.8rem}.cart-link{display:flex;align-items:center;gap:7px}.cart-link span{display:inline-grid;place-items:center;background:var(--sage);border-radius:50%;min-width:25px;height:25px}.language-picker{position:relative}.language-picker summary{cursor:pointer;list-style:none;padding:12px 0}.language-list{position:absolute;inset-inline-end:0;inset-block-start:100%;padding:12px;background:#fff;box-shadow:0 8px 30px #172c2420;border:1px solid var(--line);min-width:190px;max-height:70vh;overflow:auto}.language-list a{display:block;padding:10px}.language-list a[aria-current]{background:var(--sage)}.menu-toggle{display:none;background:none;border:0;padding:12px}.preview-banner{background:#fff1cc;padding:12px;text-align:center;font-size:.8rem}.hero{background:var(--cream);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 1fr;min-height:650px;align-items:center}.hero-copy{padding-block:65px;padding-inline-end:20px}.hero-copy p{max-width:460px;color:var(--muted);font-size:1.06rem;margin-block:24px 32px}.hero-proof{display:flex;gap:30px;margin-block-start:55px;font-size:.7rem;color:var(--muted)}.hero-proof b{display:block;color:var(--ink);font-size:1rem;margin-block-end:6px}.hero-visual{position:relative;min-height:590px;display:grid;place-items:center}.hero-circle{position:absolute;width:470px;height:470px;max-width:95%;border-radius:50%;background:#e3e8d8}.hero-product{position:relative;width:90%;height:540px;object-fit:contain;mix-blend-mode:multiply}.hero-tag{position:absolute;inset-block-end:105px;inset-inline-start:5%;display:flex;gap:13px;align-items:center;background:#fff;padding:18px 22px;box-shadow:0 10px 35px #172c2415;border-radius:4px;font-size:.75rem;letter-spacing:.05em;font-weight:700;transform:rotate(-4deg)}.hero-tag small{display:block;font-size:.7rem;font-weight:400;margin-block-start:6px;letter-spacing:0}.tag-dot{width:30px;height:30px;background:var(--lime);border-radius:50%}.hero-caption{position:absolute;inset-block-end:30px;letter-spacing:.15em;font-size:.6rem}.trust-strip{border-block:1px solid var(--line)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding-block:25px;font-size:.75rem}.trust-grid b{color:#74924d;margin-inline-end:10px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-block-end:30px}.section-heading p{color:var(--muted);max-width:590px;margin-block-end:0}.category-row{display:flex;flex-wrap:wrap;gap:10px;margin-block-end:25px}.category-row a{padding:11px 20px;background:var(--cream);border:1px solid var(--line);border-radius:30px;font-size:.8rem}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.product-image{display:block;background:var(--cream);border-radius:var(--radius);padding:20px;overflow:hidden;aspect-ratio:4/5}.product-image img{height:100%;width:100%;object-fit:contain;mix-blend-mode:multiply;transition:transform .2s}.product-image:hover img{transform:scale(1.035)}.product-info{padding:15px 2px}.product-brand{text-transform:uppercase;letter-spacing:.12em;font-size:.6rem;color:var(--muted)}.product-info h3{margin:8px 0 12px;font-size:.92rem;line-height:1.4;letter-spacing:0;font-weight:500;min-height:2.5em}.product-bottom{display:flex;align-items:center;justify-content:space-between;font-size:.8rem;gap:8px}.product-bottom strong{font-size:.95rem}.article-number{font-size:.65rem;color:var(--muted)}.craft-section{background:var(--cream)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.service-card{background:white;border-radius:var(--radius);padding:25px;text-decoration:none!important}.service-number{font-size:.65rem;letter-spacing:.12em;color:var(--muted)}.service-card h3{font-size:1.45rem}.service-card p{color:var(--muted);font-size:.87rem;min-height:5em}.service-art{height:200px;display:grid;place-items:center;margin-block:20px;position:relative;overflow:hidden}.transfer-art{background:#e6e9df}.transfer-art span{font-weight:900;font-size:3rem;line-height:.9;letter-spacing:-.06em;color:#3b5b40;transform:rotate(-10deg);z-index:1}.transfer-art i{width:120px;height:120px;background:var(--lime);position:absolute;inset-inline-end:15px;border-radius:50%}.screen-art{background:#f0ede4}.screen-art span{color:#e66440;border:8px solid #e66440;padding:10px;font-size:3rem;font-weight:900;transform:rotate(8deg)}.stitch-art{background:#e8edf2}.stitch-art span{font-weight:700;font-size:3.5rem;color:#405c82;text-shadow:1px 1px #fff,-1px -1px #1b385f;transform:rotate(-8deg);font-family:Georgia,serif}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.story-art{background:var(--sage);padding:45px;min-height:330px;border-radius:var(--radius)}.story-art strong{display:block;font-size:5.5rem;letter-spacing:-.07em;margin-block:30px 20px}.story-art strong span{display:block;font-size:1.2rem;font-weight:400;letter-spacing:0}.story-art p{font-size:.85rem}.story-copy p{color:var(--muted)}.contact-band{background:var(--ink);color:#fff;padding-block:60px}.contact-band-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.contact-band p{font-size:.9rem;color:#c4d1c7}.contact-band .eyebrow{color:var(--lime)}.site-footer{background:var(--cream);padding-block:60px 25px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1.3fr 1fr;gap:35px}.footer-grid p{color:var(--muted);font-size:.8rem}.footer-grid h3{font-size:.85rem;letter-spacing:0;margin-block:8px 20px}.footer-grid>div>a:not(.logo){display:block;font-size:.8rem;margin-block:11px}.social-links{display:flex;gap:15px;font-size:.75rem}.footer-bottom{border-top:1px solid var(--line);margin-block-start:45px;padding-block-start:23px;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:.65rem}.page-intro{background:var(--cream);padding-block:50px}.page-intro h1{font-size:clamp(2.3rem,4vw,3.6rem)}.page-intro p{color:var(--muted);max-width:800px}.breadcrumbs{font-size:.75rem;color:var(--muted);margin-block:0 25px}.filter-bar{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:15px;align-items:end;margin-block-end:25px}.filter-bar label span,.field span{display:block;font-size:.75rem;font-weight:600;margin-block-end:8px}input,select,textarea{border:1px solid #bfc9bf;border-radius:4px;background:white;min-height:48px;padding:12px;width:100%;color:var(--ink)}.load-more{text-align:center;margin-block-start:40px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.detail-image{background:var(--cream);border-radius:var(--radius);padding:40px;position:sticky;inset-block-start:120px}.detail-image img{width:100%;height:570px;object-fit:contain;mix-blend-mode:multiply}.detail-copy h1{font-size:2.6rem;margin-block:18px}.detail-copy>p{color:var(--muted);font-size:.9rem}.detail-price{font-size:1.8rem!important;color:var(--ink)!important;font-weight:700}.detail-price small{display:block;font-size:.7rem;font-weight:400;margin-block-start:5px}.field{display:block;margin-block:18px}.size-matrix{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-block:20px}.size-cell{background:var(--cream);padding:10px;border-radius:4px}.size-cell label{font-size:.8rem;display:block;margin-block-end:6px}.size-cell small{display:block;font-size:.65rem;color:var(--muted);margin-block-end:8px}.size-cell input{min-height:40px;padding:8px}.model-rule{background:var(--sage);padding:14px;font-size:.8rem}.product-details{margin-block:25px;border-block:1px solid var(--line);padding-block:15px}.product-details summary{cursor:pointer;font-weight:600}.product-details p{font-size:.85rem}.cart-layout{display:grid;grid-template-columns:1.7fr 1fr;gap:50px;align-items:start}.cart-item{display:grid;grid-template-columns:90px 1fr auto;gap:20px;border-bottom:1px solid var(--line);padding-block:20px}.cart-item img{width:90px;height:105px;object-fit:contain;background:var(--cream)}.cart-item h3{margin:0 0 8px;font-size:1rem}.cart-item p{font-size:.75rem;margin:4px 0;color:var(--muted)}.cart-item input{width:85px;margin-block:10px}.remove-button{background:none;border:0;color:var(--muted);padding:10px 0;font-size:.75rem;text-decoration:underline}.summary-card{background:var(--cream);padding:30px;border-radius:var(--radius);position:sticky;inset-block-start:120px}.summary-card h2{font-size:1.3rem;margin-block:0 22px}.summary-card p{color:var(--muted);font-size:.78rem}.summary-card .button{width:100%;margin-block:20px}.summary-row{display:flex;justify-content:space-between;gap:20px;margin-block:13px;font-size:.9rem}.summary-total{border-top:1px solid var(--line);padding-block-start:18px;font-weight:700;font-size:1.2rem}.checkout-form h2{font-size:1.3rem;margin-block:30px 15px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.checkbox-field{display:flex;gap:12px;align-items:start;margin-block:25px;font-size:.8rem;line-height:1.6}.checkbox-field input{width:20px;min-height:20px;flex-shrink:0}.checkbox-field a,.prose a,.checkout-form p a{text-decoration:underline}.honeypot{position:absolute;inset-inline-start:-10000px}.error-message{background:#ffe9e5;color:#892819;padding:15px;margin-block:15px}.prose{max-width:900px}.prose h2{font-size:1.4rem;margin-block:35px 15px}.prose h3{margin-block:25px 10px}.prose p,.prose li{font-size:.95rem;line-height:1.8}.prose ul{padding-inline-start:22px}.dtf-display{background:var(--sage);padding:45px;min-height:400px;border-radius:var(--radius)}.dtf-display .service-art{height:300px}.dtf-display .service-art span{font-size:5rem}.dtf-display>p{text-align:center;font-size:.7rem;letter-spacing:.15em}.toast{position:fixed;inset-block-end:25px;inset-inline-end:25px;z-index:50;background:var(--ink);color:white;padding:20px 25px;border-radius:4px;box-shadow:0 8px 30px #0002;font-size:.9rem}.order-success{background:var(--sage);padding:35px;border-radius:8px}.order-success h2{margin-block-start:0}.bank-data dt{font-size:.75rem;color:var(--muted);margin-block-start:15px}.bank-data dd{margin-inline-start:0;font-weight:600;overflow-wrap:anywhere}.empty-state{padding:50px;background:var(--cream);text-align:center}.summary-line-item{border-bottom:1px solid var(--line);padding-block:10px;font-size:.8rem}.summary-line-item strong{display:block;margin-block-end:5px}
@media(min-width:1600px){.hero-grid{min-height:720px}.hero-product{height:620px}.hero-visual{min-height:660px}}
@media(max-width:1100px){.container{padding-inline:25px}.header-inner{gap:20px}.main-nav{gap:15px}.header-actions{gap:12px}.logo{font-size:1.4rem}.hero-visual{min-height:510px}.hero-product{height:450px}.hero-circle{width:390px;height:390px}.hero-grid{min-height:550px}.story-grid{gap:40px}.detail-grid{gap:30px}.product-grid{gap:15px}}
@media(max-width:850px){.header-inner{min-height:76px;flex-wrap:wrap;padding-block:12px;gap:12px}.menu-toggle{display:block;margin-inline-start:auto}.header-actions{gap:15px}.main-nav{display:none;order:4;width:100%;padding:15px 0;border-top:1px solid var(--line)}.main-nav.is-open{display:flex;flex-wrap:wrap}.hero-grid{grid-template-columns:1fr 1fr}.hero-copy h1{font-size:2.7rem}.hero-proof{gap:20px;margin-block-start:35px}.hero-tag{inset-block-end:70px;padding:12px}.hero-product{height:370px}.hero-visual{min-height:440px}.hero-circle{width:300px;height:300px}.trust-grid{grid-template-columns:1fr 1fr;gap:18px}.section{padding-block:55px}.service-grid{gap:15px}.service-card{padding:18px}.service-card p{min-height:8em}.product-grid{grid-template-columns:repeat(3,1fr)}.filter-bar{grid-template-columns:1fr 1fr}.search-field{grid-column:1/-1}.footer-grid{grid-template-columns:1fr 1fr}.cart-layout{grid-template-columns:1fr;gap:30px}.summary-card{position:static}.detail-grid{grid-template-columns:1fr 1fr}.detail-image{position:static;padding:20px}.detail-image img{height:400px}.size-matrix{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.container{padding-inline:20px}.utility-inner{justify-content:center}.utility-inner span:last-child{display:none}.utility-inner a{margin-inline-start:20px}.logo{font-size:1.35rem}.logo small{font-size:.42rem}.logo-mark{font-size:1.8rem}.menu-toggle{font-size:.75rem;padding:8px}.header-actions{width:100%;justify-content:space-between;border-top:1px solid var(--line);padding-block-start:5px}.main-nav.is-open{gap:22px}.hero-grid{grid-template-columns:1fr}.hero-copy{padding-block:42px 20px;padding-inline-end:0}.hero-copy h1{font-size:3rem;max-width:390px}.hero-copy p{font-size:.95rem}.hero-visual{min-height:390px}.hero-product{height:380px;max-width:90%}.hero-circle{width:310px;height:310px}.hero-caption{inset-block-end:10px}.hero-tag{inset-block-end:55px}.hero-proof{margin-block-start:30px}.trust-grid{font-size:.68rem;gap:15px}.trust-grid b{display:block;margin-block-end:5px}.section-heading{display:block}.section-heading>a{display:inline-block;margin-block-start:20px}.category-row{gap:8px}.category-row a{padding:9px 13px;font-size:.73rem}.product-grid{grid-template-columns:1fr 1fr;gap:15px}.product-image{padding:12px}.product-info h3{font-size:.8rem}.product-bottom{font-size:.7rem}.product-bottom strong{font-size:.8rem}.service-grid{grid-template-columns:1fr}.service-card{padding:25px}.service-art{height:200px}.service-card p{min-height:auto}.story-grid{grid-template-columns:1fr;gap:25px}.story-art{min-height:280px;padding:30px}.story-art strong{font-size:4.5rem}.contact-band-inner{display:block}.contact-band-inner .button{margin-block-start:20px}.footer-grid{gap:30px 20px}.footer-grid .logo{font-size:1.15rem}.footer-bottom{display:block;line-height:1.8}.footer-bottom span{display:block}.filter-bar{gap:12px}.filter-bar label span{font-size:.65rem}.detail-grid{grid-template-columns:1fr}.detail-image img{height:400px}.detail-copy h1{font-size:2rem}.size-matrix{grid-template-columns:repeat(4,1fr)}.cart-item{grid-template-columns:65px 1fr auto;gap:12px}.cart-item img{width:65px;height:80px}.cart-item h3{font-size:.85rem}.cart-item>strong{font-size:.8rem}.summary-card{padding:25px}.page-intro{padding-block:35px}.dtf-display{min-height:300px;padding:25px}.dtf-display .service-art{height:240px}.form-grid{gap:12px}.toast{inset-inline:20px;inset-block-end:20px}.prose p,.prose li{font-size:.9rem}}
.advanced-filters{grid-column:1/-1;border:1px solid var(--line);border-radius:8px;padding:18px}.advanced-filters summary{cursor:pointer;font-size:.85rem;font-weight:600}.advanced-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-block:18px}.active-filters{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}.filter-chip{background:var(--sage);border:1px solid var(--line);border-radius:25px;padding:9px 13px;font-size:.75rem}.cart-print-config{margin-block-start:35px;border-top:2px solid var(--ink);padding-block-start:25px}.cart-print-config h2{font-size:1.7rem}.cart-print-config>p{font-size:.9rem;color:var(--muted)}.decoration-choice{border:1px solid var(--line);border-radius:8px;padding:20px;margin-block:20px}.decoration-choice legend,.print-position legend{font-weight:700;font-size:.9rem}.decoration-choice label{display:inline-flex;align-items:center;gap:8px;margin-inline-end:20px;font-size:.85rem}.decoration-choice input,.position-tile input{width:18px;min-height:18px;flex-shrink:0}.print-position{border:1px solid var(--line);border-radius:8px;background:var(--cream);padding:20px;margin-block:25px}.position-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-block:15px}.position-tile{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:6px;background:white;padding:12px;font-size:.7rem;cursor:pointer}.position-tile:has(input:checked){border-color:var(--ink);background:var(--sage)}.position-icon{font-size:1.3rem}.calculation-box{margin-block:25px;padding:20px;background:var(--sage);border-radius:8px}.calculation-box:empty{display:none}.calculation-box h3{margin-block-start:0}
@media(max-width:600px){.advanced-filter-grid{grid-template-columns:1fr 1fr}.position-tiles{grid-template-columns:1fr 1fr}.print-position{padding:15px}.decoration-choice label{display:flex;margin-block:10px}.position-tile{padding:10px}.position-icon{display:none}}
.cart-size-list{display:flex;flex-wrap:wrap;gap:10px;margin-block:16px}.cart-size-entry{display:grid;grid-template-columns:auto 70px;align-items:center;gap:6px 10px;border:1px solid var(--line);border-radius:6px;padding:10px;background:var(--cream);font-size:.8rem}.cart-size-entry input{width:70px;margin:0;min-height:40px;padding:8px}.cart-size-entry small{grid-column:1/-1;color:var(--muted);font-size:.7rem}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.dtf-shop-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr);gap:35px;align-items:start}.dtf-steps{display:grid;gap:25px}.dtf-step{border:1px solid var(--line);border-radius:10px;padding:28px}.dtf-step-title{display:flex;gap:15px;margin-block-end:20px}.step-number{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:var(--ink);color:var(--lime);font-weight:700;flex-shrink:0}.dtf-step-title h2{font-size:1.3rem;margin:4px 0 8px}.dtf-step-title p{font-size:.85rem;color:var(--muted);margin:0}.dtf-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;border:0;margin:0;padding:0}.dtf-option{display:flex;align-items:start;gap:10px;padding:18px;border:1px solid var(--line);border-radius:8px;cursor:pointer}.dtf-option:has(input:checked){background:var(--sage);border-color:var(--ink)}.dtf-option input{min-height:18px;width:18px;flex-shrink:0;margin-block-start:3px}.dtf-option strong{font-size:.85rem}.dtf-option small{display:block;font-size:.75rem;line-height:1.6;margin-block-start:8px;color:var(--muted)}.adhesive-options{grid-template-columns:1fr}.dtf-dropzone{display:flex;flex-direction:column;align-items:center;gap:12px;border:2px dashed #8fa384;border-radius:10px;background:var(--cream);padding:35px 20px;text-align:center;cursor:pointer}.dtf-dropzone small{font-size:.7rem;color:var(--muted)}.dtf-dropzone input{max-width:100%;font-size:.8rem;background:white}.dtf-dropzone.drag-active{background:var(--sage);border-color:var(--ink)}.dtf-file-card{border:1px solid var(--line);border-radius:8px;padding:20px;margin-block:15px;background:var(--cream)}.dtf-file-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;overflow-wrap:anywhere;font-size:.85rem}.dtf-dimensions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dtf-price-box{position:sticky;inset-block-start:120px}.dtf-price-box h2{margin-block-start:14px}.dtf-price-notes{padding-inline-start:18px;font-size:.75rem;color:var(--muted);line-height:1.9}.dtf-price-box details{border-top:1px solid var(--line);padding-block-start:15px;font-size:.8rem}.dtf-price-box summary{cursor:pointer;font-weight:600}.dtf-price-item{border-bottom:1px solid var(--line);padding-block:12px;font-size:.82rem}.dtf-price-item p{font-size:.75rem;overflow-wrap:anywhere}
@media(max-width:850px){.dtf-shop-grid{grid-template-columns:1fr}.dtf-price-box{position:static}.dtf-step{padding:22px}}
@media(max-width:600px){.dtf-options{grid-template-columns:1fr}.dtf-dimensions{grid-template-columns:1fr 1fr}.dtf-step{padding:18px}.dtf-intro h1{font-size:2.5rem}.dtf-dropzone{padding:22px 12px}}
.dtf-premium-hero{background:radial-gradient(ellipse at 90% 15%,#d8ec8760,transparent 45%),linear-gradient(110deg,#edf0e6,#faf9f4);padding-block:70px}.dtf-premium-hero .container{position:relative}.dtf-premium-hero h1{max-width:850px;font-size:clamp(2.7rem,5.3vw,4.5rem);letter-spacing:-.055em}.dtf-premium-hero p{max-width:650px;font-size:1.05rem}.dtf-premium-grid{gap:40px}.dtf-premium-grid .dtf-step{border:0;box-shadow:0 1px 0 var(--line);background:#fafbf8;padding:32px;border-radius:14px}.dtf-premium-grid .step-number{background:#e3eacb;color:#284738;border-radius:10px;width:40px;height:40px}.dtf-premium-grid .dtf-step-title h2{font-size:1.45rem}.dtf-premium-grid .dtf-option{background:#fff;border-radius:10px;padding:21px}.dtf-premium-grid .dtf-option:has(input:checked){background:#edf3df;border:2px solid #66833e;padding:20px}.dtf-premium-grid .dtf-price-box{background:#172c24;color:#fff;border-radius:16px;padding:30px;box-shadow:0 18px 50px #172c2417}.dtf-premium-grid .dtf-price-box .eyebrow{color:#d8ec87}.dtf-premium-grid .dtf-price-box .muted,.dtf-premium-grid .dtf-price-notes,.dtf-premium-grid .dtf-price-box p{color:#c7d2c9}.dtf-premium-grid .dtf-price-box .dtf-price-item,.dtf-premium-grid .dtf-price-box details{border-color:#ffffff25}.dtf-premium-grid .dtf-price-box .summary-row{font-size:.8rem}.dtf-total{background:#d8ec87;color:#172c24;border-radius:10px;padding:22px;margin-block:22px;display:grid;gap:10px}.dtf-total strong{font-size:2.3rem;letter-spacing:-.05em}.dtf-total small{font-size:.75rem;font-weight:600}.dtf-total span{font-size:.65rem}.dtf-price-empty{text-align:center;padding:35px 5px}.dtf-price-empty>span{display:grid;place-items:center;font-size:2rem;border:1px dashed #809478;border-radius:50%;width:60px;height:60px;margin:0 auto 20px;color:#d8ec87}.dtf-price-empty small{color:#a6b9a9;line-height:1.6}.dtf-dropzone{background:#fff;border-color:#b5c6a5;padding:35px;border-radius:12px}.upload-list-toolbar{display:flex;justify-content:space-between;gap:15px;font-size:.65rem;font-weight:700;letter-spacing:.1em;margin-block:25px 15px;color:#65736b}.dtf-file-card{background:#fff;border:1px solid #dde4d7;border-radius:12px;padding:22px;box-shadow:0 4px 16px #172c2405}.dtf-file-layout{display:grid;grid-template-columns:110px minmax(0,1fr);gap:20px}.dtf-preview{border:1px solid #e0e5dc;border-radius:8px;width:110px;height:130px;padding:10px;display:flex;flex-direction:column;justify-content:center;align-items:center;background-color:#f8f9f5;background-image:linear-gradient(45deg,#e8eae5 25%,transparent 25%),linear-gradient(-45deg,#e8eae5 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e8eae5 75%),linear-gradient(-45deg,transparent 75%,#e8eae5 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0}.dtf-preview img{width:100%;height:100%;object-fit:contain}.dtf-preview small{font-size:.6rem}.file-format{font-size:1.5rem;font-weight:700}.dtf-file-heading{align-items:start}.dtf-file-heading strong{display:block;line-height:1.4;overflow-wrap:anywhere}.file-label{display:block;font-size:.6rem;letter-spacing:.09em;color:var(--muted);margin-block-end:6px}.file-metadata{display:flex;flex-wrap:wrap;gap:5px 12px;font-size:.67rem;color:var(--muted);line-height:1.8;margin-block:12px}.dimension-source{font-size:.65rem;color:var(--muted);margin-block:4px 12px}.file-quality{margin-block:12px}.quality-badge{display:inline-block;padding:7px 10px;border-radius:6px;font-size:.7rem;font-weight:600;line-height:1.5}.quality-good{background:#e3f1d8;color:#31551d}.quality-medium{background:#fff0cf;color:#79520a}.quality-low{background:#ffe5de;color:#8a2e1b}.quality-unknown{background:#eef1f3;color:#52636e}.quality-warning{background:#fff0cf;color:#79520a!important;padding:13px;border-radius:8px;font-size:.75rem;line-height:1.6}.roll-file-controls{display:flex;gap:20px;align-items:center}.roll-file-controls .field{max-width:200px}.analysis-button{background:none;border:0;color:var(--ink);padding:12px 0}.dtf-upload-progress{background:white;border:1px solid var(--line);border-radius:8px;padding:15px;margin-block:10px}.dtf-upload-progress>div{display:flex;justify-content:space-between;gap:20px;font-size:.75rem;overflow-wrap:anywhere}.dtf-upload-progress progress{width:100%;height:7px;accent-color:#66833e;margin-block:10px}.dtf-upload-progress small{color:var(--muted);font-size:.7rem}.upload-failed{border-color:#cf8e79}.dtf-dialog{border:0;border-radius:16px;padding:30px;width:min(640px,calc(100vw - 30px));max-height:90vh;overflow:auto;color:var(--ink);box-shadow:0 25px 100px #0003}.dtf-dialog::backdrop{background:#0b211bb0;backdrop-filter:blur(4px)}.dialog-heading{display:flex;align-items:start;justify-content:space-between;gap:20px}.dialog-heading h2{font-size:1.25rem;overflow-wrap:anywhere}.dialog-close{border:0;background:var(--cream);border-radius:50%;width:35px;height:35px;font-size:1.6rem;flex-shrink:0}.analysis-preview{height:190px;background:var(--cream);border-radius:8px;display:grid;place-items:center;margin-block:20px}.analysis-preview img{max-height:170px;max-width:90%;object-fit:contain}.analysis-measurements{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-block:20px}.analysis-measurements>div{background:var(--sage);padding:18px;border-radius:8px}.analysis-measurements small{display:block;color:var(--muted);font-size:.7rem;margin-block-end:8px}.analysis-measurements strong{font-size:1.1rem}.large-logo-preview{background:var(--cream);padding:20px;border-radius:8px}.large-logo-preview img{width:100%;height:55vh;object-fit:contain}
@media(max-width:600px){.dtf-premium-hero{padding-block:45px}.dtf-premium-grid .dtf-step{padding:20px}.dtf-file-layout{grid-template-columns:1fr;gap:15px}.dtf-preview{width:100%;height:170px}.dtf-file-card{padding:18px}.roll-file-controls{display:block}.dtf-dialog{padding:22px}.dtf-premium-grid .dtf-price-box{padding:25px}.dtf-dropzone{padding:24px 14px}}
.product-swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(105px,1fr));gap:13px;margin-block:20px 30px}.color-swatch{border:0;background:none;text-align:start;padding:0;color:var(--ink);font-size:.65rem;line-height:1.5}.color-swatch img,.unknown-swatch{display:block;width:100%;height:30px;border:1px solid #bfc9bf;margin-block-end:7px;object-fit:cover}.color-swatch[aria-pressed=true] img,.color-swatch[aria-pressed=true] .unknown-swatch{outline:3px solid #c5a038;outline-offset:2px}.unknown-swatch{background:repeating-linear-gradient(45deg,#eee,#eee 5px,#fff 5px,#fff 10px);font-size:.65rem;color:#65736b;text-align:center;padding:5px}.sizes-heading{font-weight:700;font-size:.9rem}.size-matrix.size-table{display:block;border-top:1px solid var(--line);margin-block:15px 25px}.size-table .size-table-row{display:grid;grid-template-columns:1fr 1fr 150px;align-items:center;gap:20px;padding:12px 15px;border-bottom:1px solid var(--line);border-radius:0;background:#f6f7f4}.size-table .size-table-row:nth-child(even){background:#fff}.size-table-row label,.size-table-row small{margin:0}.quantity-stepper{display:flex;align-items:center}.quantity-stepper input{width:65px;text-align:center;margin:0;border-radius:0}.quantity-stepper button{width:36px;min-height:40px;border:1px solid var(--line);background:#e9ede5;font-size:1.25rem}.screen-step h2{font-size:1.5rem}.screen-step{margin-block-end:30px}
@media(max-width:850px){body.shop-theme .dtf-premium-grid{grid-template-columns:1fr}.main-nav{gap:13px;font-size:.78rem}}
@media(max-width:600px){.size-table .size-table-row{grid-template-columns:1fr 1fr 135px;gap:10px;padding-inline:8px}.product-swatches{grid-template-columns:repeat(3,1fr)}body.shop-theme .dtf-premium-grid .dtf-step{padding:20px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* One light theme shared by every shop page. */
body.shop-theme{background:#fff;color:#202736;--ink:#202736;--muted:#637083;--paper:#fff;--cream:#f7f8fb;--sage:#eff2f8;--line:#dfe4ed;--lime:#fae3ee;color-scheme:light}
body.shop-theme :focus-visible{outline-color:#b32772}
body.shop-theme .utility{background:#f0f2f7;color:#475268;border-bottom:1px solid var(--line)}
body.shop-theme .site-header{background:#fffffff2;backdrop-filter:blur(14px);border-color:var(--line)}
body.shop-theme .logo-mark{background:linear-gradient(135deg,#cf2778,#7053c4);color:white}
body.shop-theme .language-list{background:white}
body.shop-theme .page-intro,body.shop-theme .hero,body.shop-theme .dtf-premium-hero{background:radial-gradient(ellipse at 90% 0,#ece5fb80,transparent 65%),#f7f8fb}
body.shop-theme .hero-circle{background:linear-gradient(135deg,#ded7f6,#f8deeb)}
body.shop-theme .hero-product{mix-blend-mode:multiply;border-radius:16px}
body.shop-theme .hero-tag{background:white;border:1px solid var(--line)}
body.shop-theme .tag-dot{background:linear-gradient(135deg,#cf2778,#7053c4)}
body.shop-theme .eyebrow{color:#9c2562}
body.shop-theme .button{background:linear-gradient(135deg,#be246c,#6850b7);border:1px solid transparent;color:white;border-radius:8px}
body.shop-theme .button:hover{filter:brightness(1.08)}
body.shop-theme .button-outline{background:white;border:1px solid #c4cbd8;color:#30394c}
body.shop-theme .button-light{background:white;border:1px solid #d8c1e4;color:#642b7c}
body.shop-theme .category-row a,body.shop-theme .summary-card,body.shop-theme .service-card,body.shop-theme .story-art,body.shop-theme .advanced-filters,body.shop-theme .print-position,body.shop-theme .decoration-choice,body.shop-theme .dtf-step{background:#fff;border:1px solid var(--line);border-radius:12px}
body.shop-theme .summary-card{background:#f8f9fc}
body.shop-theme .product-image,body.shop-theme .detail-image{background:#f5f6f7;border:1px solid #e3e5e9}
body.shop-theme .product-image img,body.shop-theme .detail-image img{mix-blend-mode:multiply}
body.shop-theme .transfer-art{background:#eee9f6}
body.shop-theme .transfer-art span{color:#824068}
body.shop-theme .transfer-art i{background:#ddd1ee}
body.shop-theme .screen-art{background:#f7eaf0}
body.shop-theme .screen-art span{color:#b52d74;border-color:#b52d74}
body.shop-theme .stitch-art{background:#eaf0f8}
body.shop-theme .stitch-art span{color:#526ba0;text-shadow:none}
body.shop-theme .story-art{background:#f0ebf7}
body.shop-theme .story-art strong{color:#765097}
body.shop-theme .contact-band{background:#f4edf8;color:#202736;border-block:1px solid #e3d8ee}
body.shop-theme .contact-band p{color:#636b7d}
body.shop-theme .site-footer{background:#f8f9fc}
body.shop-theme .filter-chip,body.shop-theme .model-rule,body.shop-theme .calculation-box{background:#f0ebf7;color:#30394c;border-color:#dfd3ed}
body.shop-theme .position-tile{background:#fff;border-color:#d5dce7}
body.shop-theme .position-tile:has(input:checked){background:#f9eaf1;border-color:#bc3279}
body.shop-theme .size-table .size-table-row{background:#f6f7fa}
body.shop-theme .size-table .size-table-row:nth-child(even){background:white}
body.shop-theme .size-cell,body.shop-theme .cart-size-entry{background:#f6f7fa;border-color:#dfe4ed}
body.shop-theme .quantity-stepper button{background:#e9edf4;color:#30394c;border-color:#d5dce7}
body.shop-theme .color-swatch[aria-pressed=true] img,body.shop-theme .color-swatch[aria-pressed=true] .unknown-swatch{outline-color:#b32772}
body.shop-theme .color-swatch img{border-color:#bbc3cf;box-shadow:0 2px 5px #0000000a}
body.shop-theme .cart-link span{background:#f2e7f2;color:#8d2b71}
body.shop-theme .cart-item>img{background:#f1f2ef;border-radius:6px}
body.shop-theme .order-success{background:#eff6f0;color:#23462b}
body.shop-theme .empty-state{background:#f7f8fb;border-radius:12px}
body.shop-theme .toast{background:#fff;color:#30394c;border:1px solid #a57ec6;box-shadow:0 8px 30px #0002}
body.shop-theme .skip-link{background:#7053c4;color:white}
body.shop-theme .preview-banner{background:#fff4d8;color:#785a14}
body.shop-theme .quality-warning{color:#79520a!important}
body.shop-theme .main-nav a:hover{color:#ad286d}
body.shop-theme .demo-banner{border:1px solid #d7acc7;background:#fff1f8;color:#6e2550;padding:20px;border-radius:10px;margin-block-end:25px}
.demo-banner p{font-size:.85rem;margin-block-end:0}
body.shop-theme .dtf-premium-grid .dtf-step{background:#fff;border-color:#dfe4ed;box-shadow:0 6px 25px #27354905}
body.shop-theme .step-number{background:linear-gradient(135deg,#be246c,#6850b7);color:white}
body.shop-theme .dtf-premium-grid .dtf-option{background:#fafbfe;border:1px solid #d8deea}
body.shop-theme .dtf-premium-grid .dtf-option:has(input:checked){background:#faf0f6;border-color:#be246c;box-shadow:0 0 0 2px #be246c0c}
body.shop-theme input[type=radio]{accent-color:#be246c}
body.shop-theme .dtf-dropzone{background:#faf9fd;border-color:#bda5d4}
body.shop-theme .dtf-dropzone.drag-active{background:#f3e9fa}
body.shop-theme input,body.shop-theme select,body.shop-theme textarea{background:white;border-color:#c8d0dd;color:#30394c}
body.shop-theme .dtf-file-card,body.shop-theme .dtf-upload-progress{background:white;border-color:#dfe4ed}
body.shop-theme .dtf-premium-grid .dtf-price-box{background:#faf9fd;color:#30394c;border:1px solid #ddd4e8;box-shadow:0 12px 40px #30204008}
body.shop-theme .dtf-premium-grid .dtf-price-box p,body.shop-theme .dtf-price-notes{color:#637083}
body.shop-theme .dtf-premium-grid .dtf-price-box .eyebrow{color:#9c2562}
body.shop-theme .dtf-premium-grid .dtf-price-box .dtf-price-item,body.shop-theme .dtf-premium-grid .dtf-price-box details{border-color:#ded8e7}
body.shop-theme .dtf-total{background:linear-gradient(135deg,#be246c,#6850b7);color:white}
body.shop-theme .dtf-price-empty>span{color:#a04783;border-color:#cab5d7}
body.shop-theme .dtf-price-empty small{color:#637083}
.customer-choice{border:0;padding:0;margin:0 0 25px;display:flex;gap:12px}
.customer-choice legend{font-weight:600;font-size:.85rem;margin-block-end:12px}
.customer-option{flex:1;display:flex;align-items:center;gap:12px;padding:18px;border:1px solid #d5dce7;border-radius:8px;background:#fff;cursor:pointer}
.customer-option input{width:18px;min-height:18px;margin:0}
.customer-option:has(input:checked){background:#faf0f6;border-color:#bc3279}
#company-fields{border:1px solid #dfe4ed;border-radius:10px;padding:5px 20px 15px;background:#f8f9fc}
.vat-valid{color:#256839}.vat-invalid{color:#a62828}.vat-unknown{color:#875d17}
.pdf-link{margin-block:15px}
.withdrawal-form{background:#f8f9fc;border:1px solid #dfe4ed;border-radius:10px;padding:25px}.withdrawal-form p{line-height:2.2}.fill-line{display:inline-block;min-width:240px;border-bottom:1px solid #637083}.withdrawal-form .button{margin-block-start:15px}
.consent{position:fixed;inset-block-end:0;inset-inline:0;z-index:60;background:#fff;border-top:1px solid #dfe4ed;box-shadow:0 -8px 30px #00000012}.consent-inner{max-width:1320px;margin-inline:auto;padding:20px 40px;display:flex;gap:30px;align-items:center;justify-content:space-between;flex-wrap:wrap}.consent-text{max-width:720px}.consent-text h2{font-size:1.1rem;margin-block-end:8px}.consent-text p{font-size:.85rem;color:#4a5568;margin:0}.consent-text a{text-decoration:underline}.consent-actions{display:flex;gap:12px;flex-wrap:wrap}.consent-details{max-width:1320px;margin-inline:auto;padding:0 40px 20px;display:grid;gap:12px}.consent-option{display:flex;gap:12px;align-items:flex-start;border:1px solid #dfe4ed;border-radius:8px;padding:14px;font-size:.85rem;background:#f8f9fc}.consent-option input{width:18px;min-height:18px;margin:4px 0 0}.consent-option em{margin-inline-start:auto;font-style:normal;color:#256839;font-size:.7rem;font-weight:600;white-space:nowrap}.consent-details-actions{display:flex;justify-content:flex-end}
@media(max-width:600px){.consent-inner{padding-inline:20px;flex-direction:column;align-items:stretch}.consent-details{padding-inline:20px}.consent-actions .button{flex:1}}
.screen-logo-analysis{display:grid;grid-template-columns:110px minmax(0,1fr);gap:20px;margin-block:20px;align-items:start}.screen-logo-analysis strong{overflow-wrap:anywhere}.screen-dropzone{padding:20px}.screen-logo-analysis .dtf-preview{width:110px;height:110px}
@media(max-width:600px){.screen-logo-analysis{grid-template-columns:1fr}.screen-logo-analysis .dtf-preview{width:100%;height:160px}}
.textile-search-results{max-height:360px;overflow:auto;display:grid;gap:8px}.textile-search-result{display:flex;align-items:center;gap:15px;text-align:start;background:#fff;border:1px solid #dfe4ed;border-radius:8px;padding:10px;color:#30394c;width:100%}.textile-search-result img{object-fit:contain;background:#f7f8fb}.textile-search-result small{display:block;color:#637083;margin-top:6px}.selected-textile{background:#f5f3fa;border:1px solid #ded4ed;border-radius:8px;padding:15px;margin-block:12px}.selected-textile p{font-size:.85rem;margin:8px 0}.selected-textile button{margin-inline-end:18px}.picker-size-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:10px;border-bottom:1px solid #dfe4ed}.picker-size-row input{width:100px}.customer-option small{display:block;font-size:.7rem;margin-top:6px}.customer-option:has(input:disabled){opacity:.6}
@media(min-width:851px) and (max-width:1100px){body.shop-theme .header-inner{flex-wrap:wrap;padding-block:15px}body.shop-theme .main-nav{order:3;justify-content:center;width:100%}}

/* Disabled is a validation state; only an actual request uses the wait cursor. */
.button:disabled{cursor:not-allowed}
.button[aria-busy=true]{cursor:wait}
.dtf-order-action{border-block:1px solid var(--line);padding-block:18px;margin-block:20px}
.dtf-order-action h3{margin-block-start:0}
.dtf-order-action .button{width:100%;gap:10px}
.action-help{font-size:.9rem;line-height:1.6;overflow-wrap:anywhere}
body.shop-theme .dtf-price-box .minimum-notice{background:#fff4db;border:1px solid #dba73e;border-inline-start:4px solid #b7770e;color:#704708;padding:14px;border-radius:8px;font-weight:600}
.detail-grid>*,.cart-layout>*,.dtf-shop-grid>*,.dtf-file-layout>*,.screen-logo-analysis>*{min-width:0}
.color-swatch{padding:8px;border:1px solid transparent;border-radius:8px;font-size:.75rem;overflow-wrap:anywhere;min-height:72px}
body.shop-theme .color-swatch[aria-pressed=true]{border-color:#b32772;background:#faf0f6}
.selected-color{font-size:.9rem;line-height:1.6;overflow-wrap:anywhere}
.product-swatches{margin-block:12px 20px;gap:8px}
.dtf-dialog{max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);overflow:auto}
.dialog-heading h2{overflow-wrap:anywhere;min-width:0}
.consent{max-height:85dvh;overflow:auto;padding-block-end:env(safe-area-inset-bottom)}
.dtf-mobile-summary{display:none}
.header-inner{flex-wrap:wrap}
.header-search{display:flex;order:5;width:100%;gap:0;margin-block-end:12px}
.header-search input{min-width:0;flex:1;min-height:44px;margin:0;border-radius:8px 0 0 8px}
.header-search button{min-width:48px;border:1px solid #c8d0dd;border-inline-start:0;border-radius:0 8px 8px 0;background:#f5f3fa;color:#642b7c;font-size:1.5rem}
.header-search{position:relative}
.search-suggest{position:absolute;inset-inline:0;top:calc(100% + 6px);z-index:40;background:#fff;border:1px solid #dfe4ed;border-radius:10px;box-shadow:0 18px 40px #00000014;overflow:hidden}
.search-suggest-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:white;border:0;border-block-start:1px solid #eef1f6;color:#30394c;text-align:start}
.search-suggest-item:first-child{border-block-start:0}
.search-suggest-item[aria-selected=true]{background:#faf0f6}
.search-suggest-item img{width:44px;height:44px;object-fit:contain;background:#f7f8fb;border-radius:6px;flex-shrink:0}
.search-suggest-item span{flex:1;min-width:0}
.search-suggest-item strong{display:block;font-size:.85rem;overflow-wrap:anywhere}
.search-suggest-item small{display:block;color:#637083}
.search-suggest-item b{color:#9c2562;white-space:nowrap}
.search-suggest-empty{padding:14px;color:#637083;margin:0}
.category-links{display:flex;flex-wrap:wrap;gap:10px}
.guide-links{display:flex;gap:12px 28px;flex-wrap:wrap;padding-block:20px;font-size:.9rem}
.guide-links a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline}
.category-links a,.catalog-pagination a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;background:#f5f3fa;border:1px solid #dfe4ed;border-radius:8px;font-size:.9rem}
.catalog-pagination{display:flex;gap:8px;flex-wrap:wrap;margin-block:28px}
.catalog-pagination [aria-current=page]{background:#7053c4;color:#fff}
.category-page .prose{max-width:var(--max)}
.category-page .product-grid{margin-block:30px}
.product-info h3{overflow-wrap:anywhere}
.summary-line-item{overflow-wrap:anywhere;min-width:0}
.summary-line-item>strong,.summary-line-item>span{display:block}
.summary-line-item p{margin-block:8px;font-size:.8rem}
.shipping-hint{font-size:.82rem;color:var(--muted);max-width:46em;margin-block:10px 16px}
.shipping-hint a{text-decoration:underline;text-underline-offset:3px}
.cart-logo-analysis{margin-block:12px}
.position-silhouette{width:60px;height:70px;display:block}
.position-tile{position:relative;flex-direction:column;align-items:center;gap:6px;text-align:center;padding:12px 2px}
.position-tile .sr-only-radio{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none;margin:0}
.position-tile:has(.sr-only-radio:focus-visible){outline:3px solid #4f7628;outline-offset:2px}
.position-tile .position-label{font-size:.68rem;line-height:1.3;overflow-wrap:anywhere}
.position-tile:has(input:checked) .position-silhouette{color:#bc3279}
body.shop-theme .position-icon{display:block}
@media(max-width:600px){body.shop-theme .position-icon{display:block}.position-silhouette{width:50px;height:58px}.position-tile{padding:9px 2px}}
.screen-position-view{display:flex;gap:18px;align-items:center;margin-block:12px}
.screen-position-view>.position-silhouette{width:74px;height:86px}
.screen-position-view .form-grid{flex:1;min-width:0}
@media(max-width:600px){.screen-position-view{flex-direction:column;align-items:stretch}.screen-position-view>.position-silhouette{align-self:center;margin-inline:auto}.position-tile{flex-direction:row;align-items:center}.position-icon svg{width:38px;height:44px}}
#dtf-summary{scroll-margin-top:150px}
.product-description{margin-block:20px}
.product-description summary{cursor:pointer;font-size:.9rem;font-weight:600;min-height:44px;display:list-item;padding-block:12px}
.product-description p{font-size:.9rem;color:var(--muted)}
@media(max-width:850px){
  .header-search{display:none}
  .site-header:has(.main-nav.is-open) .header-search{display:flex}
  .main-nav.is-open{max-height:45dvh;overflow:auto}
  .dtf-mobile-summary{position:fixed;inset-inline:0;inset-block-end:0;z-index:25;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px calc(14px + env(safe-area-inset-bottom));min-height:64px;background:#fff;border-top:1px solid #dfe4ed;box-shadow:0 -4px 20px #0001;font-size:.85rem;text-decoration:none}
  .dtf-mobile-summary>span{min-width:0;overflow-wrap:anywhere}
  .dtf-mobile-summary>strong{white-space:nowrap;color:#9c2562}
  body.has-dtf-mobile-summary{padding-block-end:calc(72px + env(safe-area-inset-bottom))}
  .main-nav.is-open{display:grid;grid-template-columns:1fr 1fr;gap:6px}
  .main-nav a{display:flex;align-items:center;min-height:44px;padding:10px;border-radius:6px}
  .menu-toggle,.language-picker summary,.cart-link{min-height:44px;display:inline-flex;align-items:center}
  .language-list a{display:block;min-height:44px;padding:12px}
  .detail-grid{grid-template-columns:1fr}
  .detail-image{max-width:520px;width:100%;margin-inline:auto}
  .dtf-price-box{position:static}
  #dtf-konfigurator{scroll-margin-top:145px}
}
@media(max-width:600px){
  .product-info h3{font-size:.9rem;line-height:1.4}
  .product-bottom{flex-wrap:wrap;gap:6px}
  .category-row a{min-height:44px;display:inline-flex;align-items:center}
  .advanced-filters summary,.product-details summary{min-height:44px;padding-block:12px}
  .checkout-form>.button{width:100%}
  .checkbox-field{padding-block:12px;min-height:48px}
  .position-tile{min-height:48px;overflow-wrap:anywhere}
  .footer-grid>div:not(:first-child){display:grid;grid-template-columns:1fr 1fr;gap:4px 16px}
  .footer-grid>div>h3,.footer-grid>div>p{grid-column:1/-1}
  .container{padding-inline:16px}
  .section{padding-block:36px}
  .header-inner{gap:8px;padding-block:8px;min-height:64px}
  .header-actions{padding-block-start:2px;gap:12px}
  .hero-copy h1{font-size:clamp(2.1rem,9vw,3rem)}
  .hero-visual{min-height:300px}
  .hero-product{height:290px}
  .hero-circle{width:260px;height:260px}
  .hero-tag{inset-block-end:40px;max-width:90%}
  .hero-proof{gap:16px;font-size:.75rem}
  .dtf-premium-hero{padding-block:28px}
  .dtf-premium-hero h1,.dtf-intro h1{font-size:clamp(2rem,8vw,2.7rem)}
  .dtf-premium-hero p{font-size:1rem}
  .button-row{gap:14px}
  .button-row .button{width:100%}
  .page-intro{padding-block:30px}
  .page-intro h1{font-size:2.2rem;overflow-wrap:anywhere}
  body.shop-theme .dtf-premium-grid .dtf-step{padding:16px}
  .dtf-premium-grid{gap:20px}
  body.shop-theme .dtf-premium-grid .dtf-price-box{padding:18px}
  .dtf-step-title{gap:10px}
  .dtf-step-title h2{font-size:1.2rem!important}
  .dtf-file-card{padding:12px}
  .dtf-file-heading{align-items:flex-start;gap:8px}
  .dtf-file-heading>div{min-width:0}
  .dtf-dimensions{grid-template-columns:1fr 1fr;gap:10px}
  .dtf-dimensions .field:last-child{grid-column:1/-1}
  .dtf-file-content .field span{font-size:.8rem;line-height:1.4}
  input:not([type=radio]):not([type=checkbox]),select,textarea{font-size:16px!important;min-height:48px;min-width:0;max-width:100%}
  .dtf-dropzone input{width:100%}
  .remove-button,.dialog-close{min-height:44px;min-width:44px}
  .summary-row{gap:12px;align-items:flex-start}
  .summary-row>span:first-child{min-width:0;overflow-wrap:anywhere}
  .summary-row>strong,.summary-row>span:last-child{flex-shrink:0}
  .detail-image{padding:16px}
  .detail-image img{height:300px;object-fit:contain}
  .detail-copy h1{font-size:1.75rem;overflow-wrap:anywhere}
  .detail-copy>p{font-size:.95rem}
  #variant-form>button{width:100%}
  .product-swatches{grid-template-columns:repeat(2,minmax(0,1fr))}
  .size-table .size-table-row{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:12px 8px}
  .size-table-row label{overflow-wrap:anywhere;line-height:1.4}
  .size-table-row small{grid-column:1;grid-row:2}
  .quantity-stepper{grid-column:2;grid-row:1/3}
  .quantity-stepper button{min-width:44px;min-height:48px}
  .quantity-stepper input{width:56px;padding-inline:4px}
  .filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}
  .filter-bar>.button{grid-column:1/-1;width:100%}
   .advanced-filter-grid{grid-template-columns:minmax(0,1fr)}
  .filter-bar label span{font-size:.8rem}
  .cart-item{grid-template-columns:56px minmax(0,1fr);gap:12px}
  .cart-item>strong{grid-column:2}
  .cart-item h3{overflow-wrap:anywhere}
  .cart-size-entry{grid-template-columns:auto 76px;min-width:0}
  .customer-choice{flex-direction:column}
  .form-grid{grid-template-columns:minmax(0,1fr)}
  .customer-option{min-height:56px;padding:14px}
  .picker-size-row{gap:10px;align-items:flex-start}
  .picker-size-row>span{min-width:0;overflow-wrap:anywhere}
  .picker-size-row input{flex-shrink:0;width:88px}
  .textile-search-result>span{min-width:0;overflow-wrap:anywhere}
  .consent-inner{padding:16px;gap:16px}
  .consent-details{padding:0 16px 16px}
  .consent-actions{display:grid;grid-template-columns:1fr;gap:8px}
  .consent-actions .button{width:100%;padding:12px}
  .consent-option{flex-wrap:wrap}
  .consent-option>span{flex:1;min-width:0}
  .consent-option em{white-space:normal}
  .footer-grid{grid-template-columns:1fr;gap:24px}
  .footer-grid a:not(.logo){display:inline-flex;align-items:center;min-height:44px}
  .footer-grid>div:first-child{max-width:100%}
  .fill-line{min-width:min(240px,100%)}
}

/* Knowledge / guide articles */
body.shop-theme .prose table{width:100%;border-collapse:collapse;margin-block:24px;font-size:.9rem}
body.shop-theme .prose th,body.shop-theme .prose td{border:1px solid var(--line);padding:12px 14px;text-align:start;vertical-align:top}
body.shop-theme .prose thead th{background:#f8f9fc;font-weight:700}
body.shop-theme .prose tbody tr:nth-child(even){background:#fbfbfd}
body.shop-theme .knowledge-list{list-style:none;padding-inline-start:0;display:grid;gap:18px;margin-block:30px}
body.shop-theme .knowledge-list li{border:1px solid var(--line);border-radius:12px;padding:20px;background:#fff}
body.shop-theme .knowledge-list a{text-decoration:none}
body.shop-theme .knowledge-list a:hover strong{text-decoration:underline;text-underline-offset:4px}
@media(max-width:700px){body.shop-theme .prose table{display:block;overflow-x:auto;white-space:nowrap}}

/* Logo-Editor (geschnittene Logos) */
.edit-button{min-height:36px;padding:6px 12px;border:1px solid #c8d0dd;border-radius:8px;background:#fff;color:#30394c;font-size:.78rem;cursor:pointer;margin-inline-end:8px}
.edit-button:hover{background:#f5f3fa}
.logo-editor{border:0;border-radius:16px;padding:0;max-width:min(960px,96vw);width:100%;background:#fff;box-shadow:0 30px 80px #0003}
.logo-editor::backdrop{background:#172c2466}
.logo-editor__surface{display:flex;flex-direction:column;max-height:92dvh}
.logo-editor__head{display:flex;justify-content:space-between;gap:16px;padding:18px 22px;border-bottom:1px solid #dfe4ed}
.logo-editor__head h2{margin:0 0 4px;font-size:1.2rem}
.logo-editor__head p{margin:0;font-size:.82rem;max-width:60ch}
.logo-editor__body{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:20px;padding:20px 22px;overflow:auto}
.logo-editor__preview{position:relative;border:1px solid #dfe4ed;border-radius:10px;min-height:240px;display:flex;align-items:center;justify-content:center;padding:12px;background-color:#fff;background-image:linear-gradient(45deg,#eef1f6 25%,transparent 25%),linear-gradient(-45deg,#eef1f6 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#eef1f6 75%),linear-gradient(-45deg,transparent 75%,#eef1f6 75%);background-size:18px 18px;background-position:0 0,0 9px,9px -9px,-9px 0}
.logo-editor__preview[data-bg=white]{background:#fff}
.logo-editor__preview[data-bg=gray]{background:#e5e7eb}
.logo-editor__preview[data-bg=black]{background:#111}
.logo-editor__preview canvas{max-width:100%;max-height:46vh;height:auto;display:block;touch-action:none}
.logo-editor__bg{position:absolute;inset-block-start:8px;inset-inline-end:8px;display:flex;gap:4px;align-items:center;background:#fffffff0;border:1px solid #dfe4ed;border-radius:8px;padding:4px 6px;font-size:.7rem}
.logo-editor__bg button{min-width:26px;min-height:26px;border:1px solid #dfe4ed;background:#fff;border-radius:6px;font-size:.7rem;cursor:pointer}
.logo-editor__bg button[aria-pressed=true]{background:#faf0f6;border-color:#be246c;color:#9c2562}
.logo-editor__controls{display:grid;gap:12px;align-content:start}
.logo-editor__tools{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.logo-editor__tools button{min-height:42px;border:1px solid #dfe4ed;background:#fff;border-radius:8px;font-size:.78rem;cursor:pointer;padding:8px}
.logo-editor__tools button.is-active{background:#faf0f6;border-color:#be246c}
.logo-editor__colors{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-items:end}
.logo-editor__colors .field{margin:0}
.logo-editor__colors button{min-height:42px;border:1px solid #dfe4ed;background:#fff;border-radius:8px;font-size:.78rem;cursor:pointer}
.logo-editor__swatch{display:block;width:100%;height:34px;border:1px solid #dfe4ed;border-radius:6px;background:#fff}
.logo-editor input[type=color]{width:100%;height:34px;padding:2px;border:1px solid #dfe4ed;border-radius:6px;background:#fff}
.logo-editor__status{font-size:.8rem;color:#637083;margin:0;min-height:1.2em}
.logo-editor__foot{display:flex;justify-content:flex-end;gap:10px;padding:14px 22px;border-top:1px solid #dfe4ed}
@media(max-width:760px){.logo-editor__body{grid-template-columns:1fr}.logo-editor__preview canvas{max-height:38vh}}

/* Logo-Editor v2: Icons, Pantone, Farbslots */
.logo-editor__tools{grid-template-columns:repeat(4,minmax(0,1fr))}
.logo-editor__tools button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:60px;padding:8px 4px}
.logo-editor__tools svg{width:22px;height:22px}
.logo-editor__tip{font-size:.6rem;line-height:1.15;color:#637083;text-align:center}
.logo-editor__colors{grid-template-columns:1fr 1fr;gap:10px;align-items:stretch}
.logo-editor__color-row{display:flex;gap:8px;align-items:center;border:1px solid #dfe4ed;border-radius:8px;padding:6px;min-width:0}
.logo-editor__color-row>input[type=color]{width:42px;height:38px;padding:2px;border:1px solid #dfe4ed;border-radius:6px;background:#fff;flex-shrink:0}
.logo-editor__swatch{width:42px;height:38px;border:1px solid #dfe4ed;border-radius:6px;flex-shrink:0}
.logo-editor__color-meta{min-width:0;display:flex;flex-direction:column;gap:2px}
.logo-editor__color-meta span{font-size:.62rem;color:#637083;text-transform:uppercase;letter-spacing:.06em}
.logo-editor__color-meta small{font-size:.72rem;overflow-wrap:anywhere}
.logo-editor__colors>button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:58px}
.logo-editor__colors svg{width:20px;height:20px}
.logo-editor__pantone-results{max-height:190px;overflow:auto;border:1px solid #dfe4ed;border-radius:8px;display:grid;gap:2px;padding:4px;background:#fff}
.logo-editor__pantone-item{display:flex;align-items:center;gap:8px;min-height:38px;border:0;background:#fff;border-radius:6px;padding:4px 8px;text-align:start;font-size:.78rem;cursor:pointer}
.logo-editor__pantone-item:hover{background:#f7f8fb}
.logo-editor__pantone-item span{width:20px;height:20px;border-radius:4px;border:1px solid #dfe4ed;flex-shrink:0}
.logo-editor__pantone-item em{margin-inline-start:auto;font-style:normal;color:#637083;font-size:.68rem}
.logo-editor__slots{display:flex;flex-wrap:wrap;gap:6px}
.logo-editor__slot{display:flex;align-items:center;gap:6px;border:1px solid #dfe4ed;border-radius:20px;background:#fff;padding:4px 10px 4px 4px;font-size:.68rem;cursor:pointer;max-width:100%}
.logo-editor__slot span{width:22px;height:22px;border-radius:50%;border:1px solid #dfe4ed;flex-shrink:0}
.logo-editor__slot small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
[data-apply] svg{width:18px;height:18px}
@media(max-width:520px){.logo-editor__tools{grid-template-columns:repeat(3,minmax(0,1fr))}.logo-editor__colors{grid-template-columns:1fr}}

/* Logo-Editor v3: rahmenlose Icons, gemeinsamer Farbblock */
.logo-editor__head{padding:16px 20px;align-items:center}
.logo-editor__head h2{margin:0}
.logo-editor__toolbar-gap{display:none}
.logo-editor__tools{gap:4px;padding:4px 0}
.logo-editor__tools button{min-height:44px;border:0;background:transparent;border-radius:10px;color:#30394c}
.logo-editor__tools button:hover{background:#f1ecf7}
.logo-editor__tools button.is-active{background:#faf0f6;color:#9c2562}
.logo-editor__tools svg{width:24px;height:24px}
.logo-editor__color-panel{border:1px solid #e4dff0;border-radius:14px;padding:14px;background:#fbf9fe;display:grid;gap:12px}
.logo-editor__flow{display:flex;align-items:stretch;gap:8px}
.logo-editor__chip{flex:1;min-width:0;display:flex;align-items:center;gap:10px;border:1px solid #dfe4ed;border-radius:10px;background:#fff;padding:8px;cursor:default;text-align:start}
.logo-editor__chip--target{cursor:pointer}
.logo-editor__chip--target:hover{border-color:#be246c}
.logo-editor__chip .logo-editor__swatch{width:38px;height:38px;border-radius:9px;border:1px solid #cfd6e2;flex-shrink:0}
.logo-editor__chip input[type=color]{width:38px;height:38px;padding:0;border:1px solid #cfd6e2;border-radius:9px;background:#fff;flex-shrink:0;cursor:pointer}
.logo-editor__chip-text{min-width:0;display:flex;flex-direction:column;gap:2px}
.logo-editor__chip-text small{font-size:.58rem;letter-spacing:.07em;text-transform:uppercase;color:#637083}
.logo-editor__chip-text em{font-style:normal;font-size:.73rem;color:#202736;overflow-wrap:anywhere}
.logo-editor__arrow{align-self:center;color:#be246c;font-size:1.1rem;font-weight:700}
.logo-editor__color-actions{display:flex;align-items:center;gap:4px}
.logo-editor__color-actions button{min-width:40px;min-height:40px;border:0;background:transparent;border-radius:10px;color:#30394c}
.logo-editor__color-actions button:hover{background:#f1ecf7}
.logo-editor__color-actions svg{width:22px;height:22px}
.logo-editor__hint{font-size:.68rem;color:#637083}
.logo-editor__pantone-results{margin-top:-4px}
.logo-editor__tolerance{margin:0}
.logo-editor__slots{padding:2px 0}
.logo-editor__status{margin:0}
.logo-editor__body{padding:16px 20px}
.logo-editor__foot{padding:12px 20px}
@media(max-width:520px){.logo-editor__flow{flex-direction:column}.logo-editor__arrow{transform:rotate(90deg)}}

/* Logo-Editor v4: Zielblock, Icon-Labels, Crop-Best�tigung, Edit-Button */
.edit-button{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:7px 12px;border:1px solid #d9b6cd;border-radius:9px;background:#fdf3f8;color:#8d2b71;font-size:.78rem;font-weight:600;cursor:pointer;margin-inline-end:8px}
.edit-button:hover{background:#fae6f1;border-color:#be246c}
.edit-button svg{width:16px;height:16px}
.edit-button:disabled{opacity:.55;cursor:not-allowed;background:#f7f8fb;border-color:#dfe4ed;color:#637083}
.logo-editor__tip{display:block;font-size:.6rem;line-height:1.1;color:#637083;text-align:center}
.logo-editor__tools{gap:2px}
.logo-editor__tools button{min-height:58px;gap:4px;padding:6px 2px}
.logo-editor__target-tools{display:grid;gap:8px;background:#fff;border:1px solid #e6e2ee;border-radius:12px;padding:10px}
.logo-editor__target-tools .field{margin:0}
.logo-editor__tolerance{gap:4px}
.logo-editor__crop-confirm{position:absolute;inset-block-end:12px;inset-inline-end:12px;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:8px 14px;border:0;border-radius:10px;background:#be246c;color:#fff;font-size:.8rem;font-weight:600;cursor:pointer;box-shadow:0 8px 20px #0002;z-index:5}
.logo-editor__crop-confirm svg{width:18px;height:18px}
.logo-editor__crop-confirm[hidden]{display:none}
.logo-editor__pantone-item small em{font-style:normal;color:#637083;font-size:.68rem}
.cart-logo-notes p{margin:4px 0;font-size:.78rem;color:#637083}
@media(max-width:520px){.logo-editor__crop-confirm{inset-block-end:8px;inset-inline-end:8px}}

/* Dateikopf: Aktionen gruppiert, kein Umbruch im Button */
.dtf-file-heading{align-items:flex-start;gap:10px}
.dtf-file-heading .file-name{flex:1 1 240px;min-width:0}
.dtf-file-heading .file-actions{display:flex;gap:6px;flex-wrap:wrap;margin-inline-start:auto;justify-content:flex-end}
.dtf-file-heading .edit-button{margin-inline-end:0;white-space:nowrap}
@media(max-width:600px){.dtf-file-heading .file-name{flex-basis:100%}.dtf-file-heading .file-actions{width:100%}.dtf-file-heading .file-actions .edit-button,.dtf-file-heading .file-actions .remove-button{flex:1}}

/* Dateikopf umbrechen */
.dtf-file-heading{flex-wrap:wrap}

/* Logo-Editor v5: kompakter Farbblock mit gestapelten Aktionen */
.logo-editor__flow{gap:6px;align-items:stretch}
.logo-editor__chip{padding:6px;gap:7px;border-radius:9px;min-width:0}
.logo-editor__chip .logo-editor__swatch,.logo-editor__chip input[type=color]{width:28px;height:28px;border-radius:7px}
.logo-editor__chip-text small{font-size:.52rem;letter-spacing:.05em}
.logo-editor__chip-text em{font-size:.64rem;line-height:1.25;overflow-wrap:anywhere}
.logo-editor__chip--source{cursor:pointer;border:1px solid #dfe4ed;background:#fff;font:inherit;color:inherit;text-align:start}
.logo-editor__chip--source:hover{border-color:#be246c}
.logo-editor__chip--source.is-active{border-color:#be246c;background:#fdf3f8;box-shadow:0 0 0 2px #be246c1a}
.logo-editor__flow-actions{display:flex;flex-direction:column;gap:4px;flex:0 0 40px}
.logo-editor__flow-actions button{width:40px;height:30px;border:1px solid #e6e2ee;border-radius:8px;background:#fff;display:grid;place-items:center;color:#30394c;cursor:pointer;padding:0}
.logo-editor__flow-actions button:hover{background:#f1ecf7}
.logo-editor__flow-actions svg{width:18px;height:18px}
.logo-editor__arrow{font-size:.9rem}
@media(max-width:420px){.logo-editor__chip-text small{display:none}}

/* Zielfarbfeld: Farbe sichtbar machen */
.logo-editor__chip input[type=color]{-webkit-appearance:none;appearance:none;background:transparent;padding:0;overflow:hidden}
.logo-editor__chip input[type=color]::-webkit-color-swatch-wrapper{padding:0}
.logo-editor__chip input[type=color]::-webkit-color-swatch{border:0;border-radius:6px}
.logo-editor__chip input[type=color]::-moz-color-swatch{border:0;border-radius:6px}

/* Mobil: Farbblock bleibt in einer Zeile */
@media(max-width:520px){.logo-editor__flow{flex-direction:row}.logo-editor__arrow{transform:none}.logo-editor__chip-text small{display:none}}

/* Sprachmen� liegt �ber der Suche */
.language-picker{z-index:60}
.language-list{z-index:70}

/* Sprachmen� mobil nicht aus dem Bild schieben */
@media(max-width:850px){.language-list{inset-inline-start:0;inset-inline-end:auto;max-width:calc(100vw - 32px)}}

/* Hinweis bei CMYK-Dateien im Logo-Editor */
.logo-editor__profile{background:#fff4d8;border:1px solid #dba73e;border-inline-start:4px solid #b7770e;border-radius:8px;padding:10px 12px;font-size:.75rem;line-height:1.5;color:#5f4508;margin:0}
