@font-face{font-family:Montserrat;font-style:normal;font-weight:400 500;font-display:swap;src:url('montserrat-medium.woff2') format('woff2')}@font-face{font-family:Montserrat;font-style:normal;font-weight:600 800;font-display:swap;src:url('montserrat-bold.woff2') format('woff2')}
:root{--blue:#000000;--ink:#000000;--muted:#625e55;--line:#d8d1c3;--soft:#efe9db}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:Montserrat,Arial,sans-serif;font-size:16px;background:#fffcf1}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #71664d;outline-offset:3px}.announcement{background:var(--blue);color:white;text-align:center;padding:11px;font-size:12px;letter-spacing:1.6px;font-weight:700}.announcement span{font-weight:400;letter-spacing:0;margin-left:20px}header{max-width:1400px;margin:auto;height:96px;display:flex;align-items:center;gap:40px;padding:0 54px;border-bottom:1px solid var(--line)}.logo{display:flex;align-items:center;font-size:36px;letter-spacing:-2.5px;font-weight:800;color:var(--blue)}.logo span{font-size:11px;letter-spacing:2px;align-self:flex-end;margin:0 0 10px 9px}.logo i{font-style:normal;font-size:35px;margin-left:10px;color:#efe9db}nav{display:flex;gap:30px;margin-left:auto;font-size:14px}.preview-tag{padding:8px 10px;background:var(--soft);border-radius:5px;font-size:11px;font-weight:700;letter-spacing:1px}main{max-width:1400px;margin:auto;padding:25px 54px 60px}.breadcrumb{color:var(--muted);font-size:13px;margin-bottom:35px}.breadcrumb a{margin-right:12px}.layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.13fr);gap:74px}.eyebrow{font-weight:700;font-size:11px;letter-spacing:2px;color:var(--blue);margin-bottom:12px}h1,h2,h3{font-family:Montserrat,Arial,sans-serif}h1{font-size:45px;line-height:1.15;letter-spacing:-2px;margin:0 0 16px;font-weight:800}h1 span{color:var(--blue)}.intro{line-height:1.7;color:var(--muted);max-width:410px;margin:0 0 24px}.photo{height:390px;overflow:hidden;border-radius:16px;position:relative;background:#efe9db}.photo img{width:100%;height:100%;object-fit:cover;object-position:center 33%}.photo-label{position:absolute;bottom:15px;left:15px;right:15px;border-radius:7px;background:#fffcf1f2;font-size:12px;padding:12px;text-align:center}.benefits{display:flex;justify-content:space-between;gap:10px;font-size:12px;margin:22px 0 26px}.benefits span::first-letter{color:var(--blue)}details{border-top:1px solid var(--line);padding:18px 0;font-size:14px}summary{cursor:pointer;font-weight:600}details p{line-height:1.65;color:var(--muted)}.builder-title{display:flex;justify-content:space-between;align-items:center}.builder-title h2{font-size:26px;letter-spacing:-1px;margin:0}.price-from{font-size:13px;color:var(--muted)}.price-from strong{font-size:25px;color:var(--ink)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:27px 0 30px}.step{border:0;border-bottom:2px solid var(--line);padding:0 0 14px;background:none;color:var(--muted);text-align:left;font-size:12px}.step span{display:inline-grid;place-items:center;width:23px;height:23px;background:#efe9db;border-radius:50%;margin-right:7px;font-size:11px;font-weight:700}.step.active{color:var(--blue);border-color:var(--blue);font-weight:700}.step.active span,.step.done span{background:var(--blue);color:white}.step:disabled{cursor:default}h3{margin:0 0 6px;font-size:20px;letter-spacing:-.5px}.help{color:var(--muted);font-size:14px;line-height:1.55;margin:7px 0 19px}.label{display:block;font-size:14px;font-weight:700;margin:24px 0 11px}.choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.choice{border:1px solid var(--line);background:white;border-radius:9px;min-height:78px;padding:16px;text-align:left;position:relative;color:var(--ink)}.choice strong{font-size:14px;display:block;padding-right:12px}.choice small{display:block;font-size:12px;color:var(--muted);margin-top:6px;line-height:1.4}.choice.selected{border:1.5px solid var(--blue);background:var(--soft)}.choice.selected:after{content:'✓';position:absolute;right:12px;top:13px;font-size:12px;color:var(--blue);font-weight:bold}.choice:hover{border-color:var(--blue)}.sizes{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.sizes .choice{min-height:64px;padding:12px;text-align:center}.sizes .choice strong{padding:0}.sizes .choice:after{display:none}.notice{background:var(--soft);padding:13px 15px;border-radius:8px;font-size:13px;line-height:1.6;margin:18px 0}.notice.warning{background:#fff4dd;color:#785019}.row{display:flex;align-items:center;justify-content:space-between;gap:15px}.quantity{display:flex;align-items:center;border:1px solid var(--line);border-radius:7px}.quantity button{border:0;background:none;width:40px;height:40px;font-size:22px}.quantity input{border:0;width:50px;text-align:center;appearance:textfield;padding:0}.quantity input::-webkit-inner-spin-button{display:none}.material{font-size:14px;margin-top:22px}.material span{color:var(--muted);font-size:12px;display:block;margin-top:5px}.actions{display:flex;gap:15px;margin-top:27px;align-items:center}.primary{background:var(--blue);color:white;border:0;border-radius:8px;padding:16px 21px;font-weight:600;flex:1;display:flex;justify-content:space-between;gap:15px}.primary:hover{background:#ded5c3}.back{border:0;background:transparent;padding:14px 0;font-size:14px;color:var(--muted)}.order-total{margin-top:26px;background:#f6f1e6;border:1px solid var(--line);border-radius:12px;padding:21px}.total-heading{display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:700}.total-heading button{border:0;background:transparent;font-size:12px;color:var(--muted)}#line-items{font-size:13px;color:var(--muted);padding-top:15px}#line-items .row{margin-bottom:9px}.total{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:15px;margin-top:12px;font-size:14px}.total strong{font-size:25px;color:var(--blue)}.order-total p{font-size:12px;line-height:1.5;color:var(--muted);margin-bottom:0}input:not([type=checkbox]),textarea,select{width:100%;padding:12px 13px;border:1px solid var(--line);border-radius:7px;background:white;color:var(--ink)}.quantity input{width:50px;border:0;padding:0}textarea{resize:vertical;min-height:85px}.upload{display:block;border:1.5px dashed #b1a58e;border-radius:10px;text-align:center;padding:25px 15px;background:#fffcf1;cursor:pointer}.upload strong{display:block;font-size:14px;color:var(--blue);margin:8px 0}.upload small{font-size:12px;color:var(--muted)}.upload input{margin-top:14px;font-size:12px}.file-list{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.file-item{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid var(--line);border-radius:6px;font-size:12px;max-width:100%;overflow-wrap:anywhere}.file-item img{width:42px;height:42px;object-fit:contain}.file-item button{border:0;background:#eee;border-radius:3px}.two{display:grid;grid-template-columns:1fr 1fr;gap:15px}#error{color:#b42318;font-size:14px;line-height:1.5;margin-top:16px}.check{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.6;margin-top:18px}.check input{margin-top:4px;accent-color:var(--blue)}.review-row{padding:14px 0;border-bottom:1px solid var(--line);font-size:14px;display:grid;grid-template-columns:110px 1fr;gap:15px;overflow-wrap:anywhere}.review-row span{color:var(--muted)}.complete{padding:25px;background:var(--soft);border-radius:10px}.complete h3{color:var(--blue)}footer{max-width:1400px;margin:auto;padding:25px 54px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px;color:var(--muted)}footer .logo{font-size:25px}footer .logo span{font-size:9px;margin-bottom:5px}@media(min-width:1100px){.showcase{position:sticky;top:25px;align-self:start}}@media(max-width:1000px){header,main,footer{padding-left:28px;padding-right:28px}.layout{gap:35px}h1{font-size:36px}.photo{height:320px}.step span{display:none}.builder-title h2{font-size:23px}}@media(max-width:720px){header{height:76px;gap:15px}.logo{font-size:30px}nav{display:none}.preview-tag{margin-left:auto;font-size:9px}.announcement{font-size:10px}.announcement span{display:none}main{padding:20px 20px 35px}.breadcrumb{margin-bottom:23px}.layout{display:flex;flex-direction:column;gap:28px}.showcase h1{font-size:34px}.showcase .intro{font-size:14px;margin-bottom:15px}.photo{height:185px}.photo img{object-position:center 38%}.photo-label{font-size:11px;bottom:10px;padding:8px}.benefits{margin:14px 0 0;font-size:11px}.showcase details{display:none}.builder{border-top:1px solid var(--line);padding-top:25px}.steps{margin-top:24px}.step span{display:inline-grid}.choice{padding:14px}.order-total{padding:18px}footer{padding:22px;flex-wrap:wrap}footer>span{display:none}}@media(prefers-reduced-motion:no-preference){button{transition:background .15s,border-color .15s}#panel{animation:enter .2s ease}@keyframes enter{from{opacity:.5;transform:translateY(3px)}to{opacity:1;transform:none}}}

/* Store brand: cream #fffcf1, beige #efe9db, black, original white logo. */
header{background:#000;color:#fffcf1;max-width:none;padding-left:max(28px,calc((100vw - 1292px)/2));padding-right:max(28px,calc((100vw - 1292px)/2));border-bottom:0}header .logo{flex-shrink:0}.logo img{display:block;width:200px;height:auto;object-fit:contain}.announcement{background:#efe9db;color:#000}.preview-tag{background:#272727;color:#fffcf1}.primary{background:#efe9db;color:#000;border:2px solid #000;border-radius:40px}.primary:hover{background:#ded5c3}.choice{background:#fffcf1}.choice.selected{background:#efe9db}.order-total{background:#f6f1e6}input:not([type=checkbox]),textarea,select{background:#fffcf1}.upload{background:#fffcf1}footer{background:#000;color:#fffcf1;max-width:none;padding-left:max(28px,calc((100vw - 1292px)/2));padding-right:max(28px,calc((100vw - 1292px)/2))}footer .logo img{width:160px}h1{letter-spacing:-1.6px}.eyebrow{color:#625e55}@media(max-width:720px){header{padding-left:20px;padding-right:20px}.logo img{width:160px}footer{padding:22px}.preview-tag{font-size:9px}h1{letter-spacing:-1.3px}}

.cart-open{border:1px solid #efe9db;border-radius:22px;background:transparent;color:#fffcf1;padding:10px 16px;white-space:nowrap}.prop-preview-section{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.prop-stage{background:#c9c5bc;border-radius:12px;min-height:180px;display:grid;place-items:center;padding:12px}.prop-stage canvas{width:100%;height:auto;max-height:330px;object-fit:contain}.prop-stage p{padding:20px;text-align:center}.preview-file-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:14px 0}.preview-file-tabs button{font-size:12px;max-width:100%;overflow-wrap:anywhere;padding:8px;border:1px solid var(--line);background:#fffcf1;border-radius:6px}.preview-file-tabs button[aria-pressed=true]{background:#efe9db;border-color:#000}.calendar-head{display:flex;justify-content:space-between;align-items:center;gap:4px;font-size:12px;margin:12px 0}.calendar-head button{background:transparent;border:0;padding:8px;font-size:22px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.calendar-grid small{text-align:center;color:var(--muted);font-size:11px}.calendar-grid button{border:0;border-radius:4px;background:#efe9db;padding:9px 0;font-size:12px}.calendar-grid button:disabled{background:transparent;color:#aaa59a;text-decoration:line-through;cursor:not-allowed}.calendar-grid button.chosen{background:#000;color:#fff}.calendar-head button:disabled{color:#bbb;cursor:not-allowed}dialog{background:#fffcf1;color:#000;border:1px solid #d8d1c3;border-radius:16px;width:min(580px,calc(100% - 32px));max-height:85vh;padding:25px}dialog::backdrop{background:#0008}#cart-close{font-size:25px;border:0;background:none;padding:10px}.cart-item{display:flex;gap:16px;padding:16px 0;border-bottom:1px solid var(--line);font-size:14px}.cart-item img{width:75px;height:90px;object-fit:contain}.cart-item p{font-size:12px;overflow-wrap:anywhere}.cart-item strong{overflow-wrap:anywhere}@media(max-width:720px){.cart-open{margin-left:auto}.prop-preview-section{margin-top:16px}.two{grid-template-columns:1fr}.calendar-grid button{padding:12px 0;font-size:14px}.calendar-head{font-size:14px}}

.prop-stage.party-stage{padding:0;background:#efe9db url('party-scene.png') center/cover no-repeat;aspect-ratio:4/3}.prop-stage.party-stage canvas{max-height:none;width:100%;filter:drop-shadow(2px 5px 3px #0002)}.empty-party-stage{min-height:220px;text-align:center}.empty-party-stage span{background:#fffcf1e6;padding:12px 18px;border-radius:9px;font-size:13px;line-height:1.6}.preview-controls,.image-actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.preview-controls button,.image-actions button{border:1px solid #c7bead;background:#fffcf1;padding:10px 12px;border-radius:20px;font-size:12px;color:#000}.preview-controls button[aria-pressed=true]{background:#000;color:#fffcf1;border-color:#000}.image-actions button:disabled{opacity:.45;cursor:not-allowed}.image-actions button:hover:not(:disabled){background:#efe9db}.image-actions [hidden]{display:none}.image-tools-help{font-size:12px!important}#image-status:empty{display:none}#image-status{font-size:13px;font-weight:600}#prop-preview .preview-file-tabs button{font-size:12px}

.find-design-box{display:flex;align-items:center;justify-content:space-between;gap:15px;background:#efe9db;border-radius:12px;padding:16px;margin-top:22px}.find-design-box strong{font-size:14px}.find-design-box p{font-size:12px;line-height:1.5;margin:5px 0 0}.find-design-box button{border:1px solid #000;border-radius:22px;background:#fffcf1;padding:11px 15px;white-space:nowrap;font-size:13px}#design-dialog{width:min(900px,calc(100% - 24px))}#design-heading{margin:0;font-size:25px}#design-close{font-size:28px;background:none;border:0;padding:10px}#design-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.design-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.design-card img{width:100%;aspect-ratio:1;object-fit:contain;background:#f6f1e6;display:block}.design-card>div{padding:13px}.design-card small{font-size:11px;color:var(--muted)}.design-card h3{font-size:13px;line-height:1.5;margin:7px 0}.design-card a{font-size:12px;display:block;margin-bottom:12px;text-decoration:underline}.design-card button{width:100%;border:1px solid #000;background:#efe9db;border-radius:20px;padding:10px;font-size:12px}.design-suggestions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:12px;margin:13px 0}.design-suggestions button{border:0;border-bottom:1px solid #aaa;background:none;padding:4px;font-size:12px}#design-result-count{font-size:13px;color:var(--muted)}.design-empty{grid-column:1/-1;padding:30px;text-align:center}.design-empty p{line-height:1.6}.design-empty button,#design-confirm button{border:1px solid #000;border-radius:20px;background:#efe9db;padding:12px;font-size:13px}#design-confirm{background:#efe9db;border:1px solid #bbb;padding:18px;border-radius:10px;margin-top:18px}#design-confirm p{font-size:14px;line-height:1.6}#design-confirm button{margin-right:8px;margin-bottom:8px;background:#fffcf1}#design-library-status{font-size:14px}#design-dialog [hidden]{display:none}@media(max-width:600px){#design-results{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.find-design-box{flex-wrap:wrap}#design-heading{font-size:21px}.design-card>div{padding:10px}} 

.find-design-box{display:block}.find-design-box>label{display:block;font-size:14px;font-weight:600;margin-bottom:10px}.artwork-search-row{display:flex;gap:8px;align-items:stretch}.artwork-search-row input{min-width:0;flex:1;margin:0;background:#fffcf1}.find-design-box .artwork-search-row button{background:#000;color:#fffcf1;border-radius:8px;padding:12px 18px}.find-design-box>p{margin-top:9px}.artwork-search-row input:focus-visible{outline:2px solid #000;outline-offset:2px}@media(max-width:420px){.artwork-search-row{flex-wrap:wrap}.artwork-search-row input{flex-basis:100%}.artwork-search-row button{width:100%}}

.prop-stage.size-stage{padding:0;background:#f5f2eb;border:1px solid #e2ddd3;overflow:hidden;aspect-ratio:4/3}.prop-stage.size-stage canvas{max-height:none;width:100%;filter:none}

body.shopify-embedded>header,body.shopify-embedded>footer,body.shopify-embedded>.announcement,body.shopify-embedded .breadcrumb{display:none!important}

.prop-ai-options{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:14px}.prop-ai-options label{display:flex;align-items:center;gap:8px;font-size:13px}.prop-ai-options select{width:auto;padding:8px;border:1px solid #ccc;border-radius:6px}.prop-ai-options input[type=checkbox]{width:auto}

#prop-processing,#prop-error{width:min(430px,92vw);max-height:90vh;overflow:auto;border:1px solid #ddd;border-radius:16px;padding:28px;text-align:center;background:#fffcf3;color:#161616}#prop-processing::backdrop,#prop-error::backdrop{background:#0008}#prop-progress{width:100%;height:12px;accent-color:#111}#prop-processing p,#prop-error p{line-height:1.6}.prop-spinner{font-size:40px;animation:prop-spin 3s linear infinite}@keyframes prop-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.prop-spinner{animation:none}}

html.trazos-autoheight{overflow:hidden;min-height:0}html.trazos-autoheight body{min-height:0}html.trazos-autoheight dialog{position:fixed;top:var(--trazos-dialog-top,16px);bottom:auto;margin-top:0;max-height:calc(var(--trazos-visible-height,90vh) - 32px);overflow-y:auto;overscroll-behavior:contain}body.shopify-embedded{touch-action:pan-y pinch-zoom}

html.trazos-autoheight dialog{box-sizing:border-box;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-y:none;touch-action:pan-y pinch-zoom}html.trazos-autoheight dialog::backdrop{touch-action:none}
