:root{--ink:#29251f;--cream:#f7f0df;--paper:#fffaf0;--red:#e94e38;--yellow:#f7c843;--blue:#79bdd4;--pink:#e9a9ae;--green:#365b4a;--line:2px solid var(--ink);--shadow:7px 7px 0 var(--ink)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif;font-size:16px;overflow-x:hidden}button,input{font:inherit}button,a{color:inherit}.shell{width:min(1160px,calc(100% - 40px));margin:auto}.announcement{background:var(--ink);color:#fff;text-align:center;padding:9px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.announcement span{margin:0 12px}.nav{height:86px;display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:"Paytone One",sans-serif;font-size:21px}.logo-mark{display:grid;place-items:center;background:var(--red);color:white;width:39px;height:39px;border:var(--line);border-radius:48% 52% 50% 45%;transform:rotate(-6deg);box-shadow:3px 3px 0 var(--ink)}nav{display:flex;gap:32px}nav a,.footer-grid a{text-decoration:none;font-weight:700;font-size:14px}nav a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}.cart-button{background:var(--yellow);border:var(--line);padding:10px 11px 10px 18px;border-radius:99px;font-weight:800;cursor:pointer;box-shadow:3px 3px 0 var(--ink)}.cart-button span{display:inline-grid;place-items:center;background:var(--ink);color:white;border-radius:50%;width:25px;height:25px;margin-left:8px;font-size:12px}.hero{min-height:650px;display:grid;grid-template-columns:1.03fr .97fr;align-items:center;padding-top:45px;padding-bottom:70px}.hero-copy{padding-bottom:20px}.eyebrow{display:flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:800}.eyebrow span{display:block;width:24px;border-top:2px solid}.eyebrow.light{color:white}h1,h2{font-family:"Paytone One",sans-serif;line-height:.94;letter-spacing:-.045em;margin:22px 0}h1{font-size:clamp(65px,7vw,100px)}h2{font-size:clamp(48px,5.5vw,72px)}h1 em,h2 em,blockquote em{font-family:Georgia,serif;font-weight:400}.lede{font-size:19px;line-height:1.55;max-width:540px}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:32px}.button{display:inline-flex;justify-content:center;align-items:center;gap:34px;border:var(--line);border-radius:99px;padding:15px 23px;text-decoration:none;font-weight:800;cursor:pointer;transition:.2s}.button:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--ink)}.button-primary{background:var(--red);color:white}.button-yellow{background:var(--yellow);color:var(--ink)}.text-link{font-weight:800;text-underline-offset:5px}.social-proof{display:flex;align-items:center;gap:15px;margin-top:48px}.social-proof strong,.social-proof small{display:block}.social-proof small{font-size:12px;margin-top:2px}.tiny-faces{display:flex}.tiny-faces span{display:grid;place-items:center;background:white;border:2px solid;border-radius:50%;width:38px;height:38px;margin-left:-8px}.tiny-faces span:first-child{margin-left:0}.hero-art{height:530px;position:relative;display:grid;place-items:center}.mug{position:relative;background:#fffdf7;border:3px solid var(--ink);border-radius:20px 22px 54px 48px;z-index:2}.big-mug{width:330px;height:355px;transform:rotate(-4deg);box-shadow:13px 15px 0 rgba(41,37,31,.15)}.handle{position:absolute;right:-104px;top:66px;width:120px;height:170px;border:25px solid #fffdf7;outline:3px solid var(--ink);border-radius:20% 60% 60% 25%;z-index:-1}.mug-art{position:absolute;inset:32px;display:flex;flex-direction:column;align-items:center;justify-content:center}.mug-art strong{font-family:"Paytone One";font-size:27px;letter-spacing:.06em}.mug-art small{font-weight:800;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.pet-face{position:relative;width:142px;height:135px;background:#d59c61;border:3px solid;border-radius:44% 46% 50% 50%;margin-bottom:18px}.ear{position:absolute;width:55px;height:80px;background:#9c663a;border:3px solid;top:-24px;z-index:-1}.ear.left{left:-15px;transform:rotate(-25deg);border-radius:70% 20%}.ear.right{right:-15px;transform:rotate(25deg);border-radius:20% 70%}.eye{position:absolute;width:10px;height:13px;background:var(--ink);border-radius:50%;top:48px}.eye.left{left:38px}.eye.right{right:38px}.snout{position:absolute;left:45px;top:68px;width:52px;height:42px;background:#f2cfac;border:2px solid;border-radius:50%;text-align:center;line-height:20px}.tongue{position:absolute;left:62px;top:100px;width:19px;height:24px;background:#eb7980;border:2px solid;border-radius:0 0 12px 12px}.saucer{position:absolute;width:430px;height:75px;background:var(--blue);border:3px solid;border-radius:50%;bottom:40px;transform:rotate(-2deg)}.quality-sticker{position:absolute;right:5px;top:20px;width:112px;height:112px;background:var(--yellow);border:2px solid;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(10deg);text-align:center;box-shadow:5px 5px 0 var(--ink)}.quality-sticker strong{font-family:"Paytone One";font-size:24px}.quality-sticker span{text-transform:uppercase;font-weight:800;font-size:9px;letter-spacing:.08em}.scribble{position:absolute;top:30px;left:0;font-family:"Paytone One";font-size:18px;transform:rotate(-9deg);line-height:1.05}.scribble:after{content:"";display:block;width:80px;height:28px;border-bottom:3px solid;border-radius:50%;transform:rotate(8deg)}.spark{position:absolute;font-size:38px}.spark-one{left:32px;bottom:125px;color:var(--red)}.spark-two{right:28px;bottom:165px;color:var(--green);font-size:22px}.ticker{background:var(--red);color:white;border-block:var(--line);overflow:hidden;transform:rotate(-1.2deg);width:102%;margin-left:-1%;white-space:nowrap}.ticker div{font-family:"Paytone One";font-size:15px;letter-spacing:.08em;padding:13px;animation:scroll 20s linear infinite}@keyframes scroll{to{transform:translateX(-50%)}}.section{padding-top:120px;padding-bottom:120px}.section-heading h2{margin-bottom:60px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.steps article{position:relative;padding:25px 48px;border-right:2px dashed #9e9484}.steps article:last-child{border:0}.step-number{position:absolute;right:28px;top:0;font-family:"Paytone One";font-size:50px;color:transparent;-webkit-text-stroke:1px #aaa08e}.step-icon{width:145px;height:135px;border:var(--line);display:grid;place-items:center;font-size:53px;margin:0 auto 28px;box-shadow:var(--shadow)}.photo-icon{background:var(--pink);transform:rotate(-5deg);position:relative}.photo-icon i{position:absolute;right:-15px;bottom:-15px;background:var(--yellow);border:2px solid;border-radius:50%;width:43px;height:43px;font-style:normal;font-size:26px;text-align:center}.magic-icon{background:var(--yellow);border-radius:50%;font-size:80px;transform:rotate(5deg)}.box-icon{background:var(--blue);border-radius:10px;transform:rotate(-3deg)}.steps h3,.product-card h3{font-family:"Paytone One";font-size:25px;margin:25px 0 10px}.steps p,.product-card p{line-height:1.55}.builder-section{background:var(--green);color:white;border-block:var(--line);padding:100px 0}.builder-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.builder-copy h2{margin:20px 0 25px}.builder-copy>p{line-height:1.5}.upload-box{margin:30px 0 24px}.upload-box label{display:flex;align-items:center;flex-wrap:wrap;gap:6px 15px;padding:17px;border:2px dashed rgba(255,255,255,.8);border-radius:12px;cursor:pointer;transition:.2s}.upload-box label:hover{background:rgba(255,255,255,.08)}.upload-icon{grid-row:span 2;display:grid;place-items:center;width:48px;height:48px;background:var(--yellow);color:var(--ink);border:2px solid var(--ink);border-radius:50%;font-size:25px}.upload-box strong,.upload-box small{width:calc(100% - 70px)}.upload-box small{font-size:11px;opacity:.75}.style-picker{border:0;padding:0;margin:0 0 24px}.style-picker legend,.name-field{font-size:12px;text-transform:uppercase;font-weight:800;letter-spacing:.1em;margin-bottom:10px}.style-picker label{cursor:pointer}.style-picker input{position:absolute;opacity:0}.style-picker span{display:inline-block;border:1px solid rgba(255,255,255,.5);padding:9px 15px;margin-right:6px;border-radius:99px;font-size:13px;font-weight:700}.style-picker input:checked+span{background:white;color:var(--ink);border-color:white}.name-field{display:block}.text-input{width:100%;background:transparent;border:0;border-bottom:2px solid white;color:white;padding:8px 0 12px;font-family:"Paytone One";font-size:24px;outline:0;margin-bottom:24px}.text-input::placeholder{color:rgba(255,255,255,.35)}.builder-copy .button{width:100%}.microcopy{font-size:10px;text-align:center;opacity:.8}.preview-stage{min-height:570px;background:var(--blue);border:3px solid var(--ink);border-radius:48% 52% 45% 55% / 53% 43% 57% 47%;display:flex;align-items:center;justify-content:center;position:relative}.preview-mug{width:270px;height:310px;transform:rotate(3deg);box-shadow:12px 14px 0 rgba(41,37,31,.2)}.preview-mug .handle{width:100px;height:140px;right:-88px}.photo-preview{width:140px;height:150px;display:grid;place-items:center;overflow:hidden;margin-bottom:10px}.photo-preview img{width:100%;height:100%;object-fit:cover;filter:saturate(.85) contrast(1.05)}.placeholder-pet{transform:scale(.82);margin:0}.preview-mug[data-style="pop"]{background:var(--yellow)}.preview-mug[data-style="pop"] .photo-preview{border-radius:50%;border:5px solid var(--red);transform:rotate(-4deg)}.preview-mug[data-style="memorial"]{background:#f8e8e8}.preview-mug[data-style="memorial"] .photo-preview{border-radius:50% 50% 46% 46%;filter:sepia(.2)}.preview-mug .mug-art strong{font-size:23px}.preview-note{position:absolute;left:5%;top:15%;font-family:"Paytone One";font-size:13px;transform:rotate(-10deg);color:var(--ink)}.preview-caption{position:absolute;bottom:25px;color:var(--ink);font-size:10px;font-weight:700;text-align:center}.preview-shadow{position:absolute;width:270px;height:40px;background:rgba(41,37,31,.25);filter:blur(3px);border-radius:50%;bottom:78px}.centered{text-align:center}.centered .eyebrow{justify-content:center}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.product-card{border:var(--line);padding:20px 20px 28px;position:relative;box-shadow:5px 5px 0 var(--ink)}.product-card.yellow{background:var(--yellow)}.product-card.blue{background:var(--blue)}.product-card.pink{background:var(--pink)}.badge{position:absolute;top:12px;right:10px;border:2px solid;border-radius:99px;padding:6px 10px;font-size:9px;font-weight:900;transform:rotate(4deg)}.mini-mug{width:170px;height:165px;background:white;border:3px solid;border-radius:10px 10px 35px 30px;margin:50px auto 35px;position:relative;display:grid;place-items:center;transform:rotate(-5deg)}.mini-mug i{position:absolute;right:-53px;top:35px;width:60px;height:85px;border:15px solid white;outline:3px solid;border-radius:20% 60% 60% 20%;z-index:-1}.mini-print{text-align:center;font-size:53px}.mini-print strong{display:block;font-family:"Paytone One";font-size:15px}.mini-mug.pop{background:#ffe364;transform:rotate(5deg)}.mini-mug.soft{background:#fff1e8}.price{font-family:"Paytone One";font-size:22px}.product-card button{float:right;background:var(--ink);color:white;border:0;border-radius:99px;padding:10px 15px;font-weight:800;cursor:pointer}.reviews{background:var(--red);color:white;text-align:center;border-block:var(--line)}.reviews .shell{max-width:900px}.giant-quote{font-family:Georgia;font-size:140px;line-height:.3;margin:0}blockquote{font-family:"Paytone One";font-size:clamp(30px,4vw,50px);line-height:1.18;margin:35px auto}.reviewer{display:flex;justify-content:center;align-items:center;gap:12px}.reviewer>span{display:grid;place-items:center;background:var(--yellow);border:2px solid var(--ink);border-radius:50%;width:48px;height:48px}.reviewer strong,.reviewer small{display:block;text-align:left}.reviewer small{font-size:11px}.final-cta{margin-top:110px;margin-bottom:110px;background:var(--ink);color:white;min-height:420px;border-radius:22px;padding:70px;display:flex;align-items:center;justify-content:space-between;overflow:hidden;position:relative}.final-cta h2{margin-top:18px}.cat-doodle{width:270px;height:250px;background:var(--yellow);border:3px solid var(--cream);border-radius:48%;color:var(--ink);display:flex;align-items:center;justify-content:center;font-family:"Paytone One";font-size:60px;position:relative;transform:rotate(5deg)}.cat-doodle>span{position:absolute;top:-35px;font-size:76px}.cat-doodle>span:first-child{left:35px;transform:rotate(-18deg)}.cat-doodle>span:nth-child(2){right:35px;transform:rotate(18deg)}.cat-doodle small{position:absolute;right:-50px;bottom:0;background:var(--red);color:white;border:2px solid white;padding:12px;border-radius:50%;font-size:11px;text-align:center;transform:rotate(-10deg)}footer{background:#e7ddca;border-top:var(--line);padding:45px 0}.footer-grid{display:flex;justify-content:space-between;align-items:center}.footer-grid>div{display:flex;gap:20px}.footer-grid p{font-size:13px}.cart-overlay{position:fixed;inset:0;background:rgba(41,37,31,.45);opacity:0;visibility:hidden;transition:.3s;z-index:9}.cart-drawer{position:fixed;right:0;top:0;height:100%;width:min(430px,100%);background:var(--paper);z-index:10;padding:45px 35px;transform:translateX(105%);transition:.35s cubic-bezier(.2,.8,.2,1);border-left:3px solid;display:flex;flex-direction:column}.cart-open .cart-overlay{opacity:1;visibility:visible}.cart-open .cart-drawer{transform:none}.close-cart{position:absolute;right:25px;top:20px;border:0;background:transparent;font-size:35px;cursor:pointer}.cart-drawer h2{font-size:43px;margin:15px 0 30px}.cart-items{flex:1}.cart-item{display:flex;align-items:center;gap:15px;padding:15px 0;border-bottom:1px solid #cfc7b8}.cart-item-icon{width:58px;height:58px;background:var(--yellow);border:2px solid;display:grid;place-items:center;font-size:27px;border-radius:8px}.cart-item strong,.cart-item small{display:block}.cart-item small{margin-top:4px}.cart-total{display:flex;justify-content:space-between;font-size:20px;font-weight:800;padding:22px 0}.checkout{width:100%}.cart-drawer>small{text-align:center;margin-top:12px}.toast{position:fixed;left:50%;bottom:30px;transform:translate(-50%,120px);background:var(--ink);color:white;border:2px solid white;padding:13px 20px;border-radius:99px;z-index:20;font-weight:700;transition:.35s}.toast.show{transform:translate(-50%,0)}
@media(max-width:850px){nav{display:none}.hero{grid-template-columns:1fr;padding-top:60px}.hero-copy{text-align:center}.hero-copy .eyebrow,.hero-actions,.social-proof{justify-content:center}.hero-art{height:500px}.steps,.product-grid{grid-template-columns:1fr}.steps article{border-right:0;border-bottom:2px dashed #9e9484;padding:30px 10px 60px}.builder-grid{grid-template-columns:1fr;gap:55px}.preview-stage{min-height:520px}.product-card{max-width:460px;width:100%;margin:auto}.final-cta{padding:55px 30px}.cat-doodle{width:210px;height:200px}.footer-grid{flex-direction:column;gap:25px}}
@media(max-width:560px){.shell{width:min(100% - 26px,1160px)}.nav{height:72px}.logo{font-size:17px}.logo-mark{width:34px;height:34px}.hero{padding-top:35px}.hero h1{font-size:55px}.hero-actions{flex-direction:column;gap:18px}.hero-art{transform:scale(.78);margin:-35px -60px}.section{padding-top:80px;padding-bottom:80px}.section-heading h2{font-size:45px}.builder-section{padding:75px 0}.builder-copy h2{font-size:48px}.preview-stage{min-height:440px}.preview-mug{transform:scale(.8) rotate(3deg)}.preview-note{top:8%}.product-grid{gap:28px}.reviews blockquote{font-size:29px}.final-cta{margin-top:70px;margin-bottom:70px;text-align:center;justify-content:center}.cat-doodle{display:none}.footer-grid>div{flex-wrap:wrap;justify-content:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker div{animation:none}.button,.cart-drawer,.cart-overlay,.toast{transition:none}}

/* Hand-painted pet portrait system */
.pet-portrait{display:block;object-fit:contain;filter:drop-shadow(0 3px 1px rgba(41,37,31,.12))}
.hero-pet{width:185px;height:178px;margin:-12px 0 3px}
.photo-preview .preview-pet{object-fit:contain;filter:drop-shadow(0 2px 1px rgba(41,37,31,.12));transform:scale(.98)}
.mini-print img{display:block;width:92px;height:95px;object-fit:contain;margin:-15px auto -2px;filter:drop-shadow(0 2px 1px rgba(41,37,31,.12))}

/* Commerce-led brand refresh */
.brand-logo{width:184px;height:54px;display:block}.brand-logo img{width:100%;height:100%;object-fit:contain;object-position:left center}.nav .brand-logo{margin-right:20px}.nav nav{margin-left:auto;margin-right:38px}.trust-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-top:34px;margin-bottom:15px;border:var(--line);background:var(--paper);box-shadow:5px 5px 0 var(--ink)}.trust-strip div{padding:20px;border-right:1px dashed #a99e8d}.trust-strip div:last-child{border:0}.trust-strip strong,.trust-strip span{display:block}.trust-strip strong{font-family:"Paytone One";font-size:15px}.trust-strip span{font-size:11px;margin-top:4px;color:#6f675d}.builder-product-row{display:flex;align-items:center;justify-content:space-between;border-block:1px solid rgba(255,255,255,.35);padding:13px 0;margin:24px 0}.builder-product-row div{display:flex;align-items:center;gap:10px}.builder-product-row div span,.field-step,.name-field span{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:50%;background:var(--yellow);color:var(--ink);font-size:10px;font-weight:900}.builder-product-row select{max-width:235px;background:var(--paper);color:var(--ink);border:2px solid var(--ink);border-radius:99px;padding:9px 28px 9px 12px;font-weight:700}.upload-box{position:relative}.field-step{position:absolute;right:10px;top:10px}.name-field{display:flex;align-items:center;gap:9px}.quantity-row{display:flex;align-items:center;gap:12px;margin:0 0 18px}.quantity-row button{width:32px;height:32px;border:2px solid var(--paper);border-radius:50%;background:transparent;color:white;font-size:20px;line-height:1;cursor:pointer}.quantity-row small{margin-left:auto;opacity:.8}.bundle-section{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.bundle-art{min-height:520px;background:var(--yellow);border:var(--line);border-radius:48% 52% 46% 54%;position:relative;display:grid;place-items:center;box-shadow:10px 10px 0 var(--ink)}.gift-box{position:relative;width:310px;height:220px;background:var(--red);border:3px solid;border-radius:8px 8px 28px 28px;display:grid;place-items:center}.gift-box:before{content:"";position:absolute;left:-20px;top:-34px;width:350px;height:58px;background:var(--blue);border:3px solid;border-radius:8px}.gift-box:after{content:"";position:absolute;top:-45px;width:52px;height:278px;background:var(--pink);border:3px solid}.gift-box img{position:absolute;width:210px;height:210px;object-fit:contain;top:-188px;z-index:2}.gift-mug{font-size:70px;z-index:1}.bundle-burst{position:absolute;right:25px;top:35px;width:95px;height:95px;background:var(--paper);border:2px solid;border-radius:50%;display:grid;place-items:center;text-align:center;font-family:"Paytone One";line-height:1;transform:rotate(9deg);box-shadow:4px 4px 0 var(--ink)}.bundle-copy>p{font-size:18px;line-height:1.55}.bundle-copy ul{list-style:none;padding:0;margin:28px 0}.bundle-copy li{padding:10px 0;border-bottom:1px solid #c9beaa;font-weight:700}.bundle-copy li:before{content:"✓";display:inline-grid;place-items:center;width:24px;height:24px;background:var(--yellow);border:1px solid;border-radius:50%;margin-right:10px;font-size:12px}.photo-promise{background:var(--ink);color:white;border-block:var(--line);padding:95px 0}.promise-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.promise-grid h2{margin-bottom:0}.promise-copy>p{font-family:Georgia,serif;font-size:24px;line-height:1.45}.promise-points{display:flex;flex-wrap:wrap;gap:10px}.promise-points span{border:1px solid #777064;padding:9px 12px;border-radius:99px;font-size:12px;font-weight:700}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.faq-heading{position:sticky;top:40px;align-self:start}.faq-heading>p:last-child{line-height:1.5;max-width:340px}.accordion details{border-top:2px solid;padding:0}.accordion details:last-child{border-bottom:2px solid}.accordion summary{list-style:none;cursor:pointer;padding:25px 0;font-family:"Paytone One";font-size:19px;display:flex;justify-content:space-between}.accordion summary::-webkit-details-marker{display:none}.accordion summary span{font-size:25px;transition:.2s}.accordion details[open] summary span{transform:rotate(45deg)}.accordion details p{margin:0 45px 24px 0;line-height:1.6;color:#5e574d}.footer-grid .brand-logo{width:165px}.footer-grid>div{flex-wrap:wrap}.cart-item{position:relative}.cart-item-qty{display:inline-block;background:#ded5c5;border-radius:99px;padding:2px 8px;margin-left:6px;font-size:10px}
@media(max-width:1000px){.nav nav{display:none}.trust-strip{grid-template-columns:1fr 1fr}.trust-strip div:nth-child(2){border-right:0}.trust-strip div:nth-child(-n+2){border-bottom:1px dashed #a99e8d}.bundle-section,.promise-grid,.faq{grid-template-columns:1fr;gap:55px}.bundle-art{min-height:470px;max-width:620px;width:100%;margin:auto}.faq-heading{position:static}.bundle-copy{text-align:left}}
@media(max-width:560px){.brand-logo{width:142px;height:44px}.trust-strip{grid-template-columns:1fr;margin-top:5px}.trust-strip div{border-right:0!important;border-bottom:1px dashed #a99e8d!important;padding:14px}.trust-strip div:last-child{border-bottom:0!important}.builder-product-row{display:block}.builder-product-row select{width:100%;max-width:none;margin-top:10px}.quantity-row{flex-wrap:wrap}.quantity-row small{width:100%;margin-left:0}.bundle-section{gap:70px}.bundle-art{min-height:380px}.gift-box{transform:scale(.73)}.bundle-copy h2,.faq h2{font-size:44px}.photo-promise{padding:70px 0}.promise-grid{gap:25px}.promise-copy>p{font-size:20px}.faq{gap:35px}.accordion summary{font-size:16px;gap:20px}.footer-grid .brand-logo{width:150px}}

/* Custom mug selector */
.builder-product-row{position:relative;z-index:20}
.artwork-controls{border:2px solid rgba(255,255,255,.38);border-radius:16px;padding:16px 18px;margin:0 0 22px;background:rgba(20,49,39,.16)}
.photo-quality{display:flex;align-items:center;gap:9px;margin-top:9px;padding:9px 12px;border-radius:10px;background:rgba(255,255,255,.1)}.photo-quality i{width:10px;height:10px;border-radius:50%;background:#d7cdbd;box-shadow:0 0 0 3px rgba(255,255,255,.12)}.photo-quality strong,.photo-quality small{display:block;width:auto}.photo-quality strong{font-size:10px;text-transform:uppercase;letter-spacing:.08em}.photo-quality small{font-size:9px;opacity:.72}.photo-quality.good i{background:#8ee09d}.photo-quality.fair i{background:var(--yellow)}.mini-field{display:flex;justify-content:space-between;font-size:10px;text-transform:uppercase;font-weight:800;letter-spacing:.1em;margin-top:-10px}.mini-field small{font-size:8px;opacity:.65}.caption-input{width:100%;border:0;border-bottom:1px solid rgba(255,255,255,.6);background:transparent;color:white;padding:8px 0 10px;outline:0;margin-bottom:18px}.caption-input::placeholder{color:rgba(255,255,255,.4)}
.product-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 18px}.detail-choice{border:0;padding:0;margin:0}.detail-choice legend{font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:900;margin-bottom:8px}.detail-choice label{display:inline-block;width:50%;cursor:pointer}.detail-choice input{position:absolute;opacity:0}.detail-choice span{display:block;padding:9px 7px;border:1px solid rgba(255,255,255,.4);margin-right:5px;border-radius:9px}.detail-choice strong,.detail-choice small{display:block}.detail-choice strong{font-size:11px}.detail-choice small{font-size:8px;opacity:.68;margin-top:2px}.detail-choice input:checked+span{background:white;color:var(--ink);border-color:white}.order-summary{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center;border-block:1px dashed rgba(255,255,255,.42);padding:12px 2px;margin:-4px 0 16px}.order-summary>span{grid-row:span 2;background:var(--red);color:white;border:2px solid var(--ink);border-radius:8px;padding:7px;font-size:8px;font-weight:900;transform:rotate(-3deg)}.order-summary strong{font-size:12px}.order-summary small{font-size:9px;opacity:.7}
.emoji-picker{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:-7px 0 18px}.emoji-picker>span{font-size:9px;text-transform:uppercase;letter-spacing:.09em;font-weight:900}.emoji-picker>div{display:flex;gap:5px}.emoji-picker button{min-width:32px;height:32px;padding:0 7px;border:1px solid rgba(255,255,255,.5);background:transparent;color:white;border-radius:9px;cursor:pointer;font-size:16px;line-height:1}.emoji-picker button:first-child{font-size:8px;font-weight:900;text-transform:uppercase}.emoji-picker button.active{background:var(--yellow);color:var(--ink);border:2px solid var(--ink);transform:rotate(-4deg);box-shadow:2px 2px 0 var(--ink)}
.control-heading{display:flex;align-items:center;gap:9px;margin-bottom:14px}.control-heading>span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:var(--yellow);color:var(--ink);font-size:10px;font-weight:900}.control-heading strong{font-size:13px;text-transform:uppercase;letter-spacing:.08em}.control-heading small{margin-left:auto;opacity:.68;font-size:10px}
.range-control{display:grid;grid-template-columns:82px 1fr 44px;gap:10px;align-items:center;margin:11px 0;font-size:11px;font-weight:800}.range-control input{accent-color:var(--yellow);width:100%;cursor:pointer}.range-control output{text-align:right;font-variant-numeric:tabular-nums;color:var(--yellow)}
.colour-control{display:flex;align-items:center;gap:9px;margin-top:14px;font-size:11px;font-weight:800}.colour-control>span{margin-right:4px}.colour-control>div{display:flex;gap:7px}.colour-swatch{width:25px;height:25px;border:2px solid var(--ink);border-radius:50%;cursor:pointer;box-shadow:0 0 0 1px rgba(255,255,255,.45)}.colour-swatch.active{outline:2px solid white;outline-offset:2px}.colour-swatch.cream{background:#fffdf7}.colour-swatch.sunshine{background:var(--yellow)}.colour-swatch.blush{background:#f7d7dc}.safe-area-toggle{margin-left:auto;border:1px solid rgba(255,255,255,.55);background:transparent;color:white;border-radius:99px;padding:7px 10px;font-size:10px;font-weight:800;cursor:pointer}.safe-area-toggle[aria-pressed="true"]{background:white;color:var(--ink)}
.preview-stage{perspective:1000px;overflow:hidden;background:radial-gradient(circle at 52% 40%,#bde6f5 0 23%,var(--blue) 55%,#8cc8dc 100%)}
.preview-topline{position:absolute;left:30px;right:30px;top:25px;color:var(--ink);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(41,37,31,.35);padding-bottom:9px;font-size:9px;letter-spacing:.15em}.preview-topline strong{font-family:"Paytone One";font-size:11px;letter-spacing:.04em}
.preview-mug{--photo-scale:1;--photo-x:0px;--photo-y:0px;--mug-turn:0deg;color:var(--ink);transition:transform .25s cubic-bezier(.2,.8,.2,1),background .25s;transform:rotate(3deg) rotateY(var(--mug-turn));transform-style:preserve-3d;overflow:visible;background:linear-gradient(90deg,#e8e4dc 0,#fffdf7 18%,#fff 58%,#e6e1d8 100%)}
.preview-mug:after{content:"";position:absolute;inset:2px 0 0;border-radius:17px 19px 51px 45px;background:linear-gradient(90deg,rgba(0,0,0,.13),transparent 18% 72%,rgba(0,0,0,.12));pointer-events:none;z-index:5}
.preview-mug[data-colour="sunshine"]{background:linear-gradient(90deg,#d9b72c,#ffe364 22% 68%,#d7b32d)}.preview-mug[data-colour="blush"]{background:linear-gradient(90deg,#dcaeb7,#f7d7dc 22% 68%,#d8aab3)}
.preview-mug .mug-art{overflow:hidden;border-radius:8px 8px 35px 32px;z-index:2}.preview-mug .photo-preview{cursor:grab;touch-action:none;user-select:none}.preview-mug .photo-preview:active{cursor:grabbing}.preview-mug .photo-preview img{transform:translate(var(--photo-x),var(--photo-y)) scale(var(--photo-scale));transition:filter .2s;pointer-events:none;user-select:none}
.preview-emoji{position:absolute;right:3px;top:4px;z-index:6;font-size:29px;filter:drop-shadow(1px 2px 0 rgba(41,37,31,.25));transform:rotate(9deg);animation:emoji-pop .25s ease-out}@keyframes emoji-pop{from{transform:rotate(9deg) scale(.3)}to{transform:rotate(9deg) scale(1)}}
.print-safe-area{position:absolute;inset:3px -5px 1px;border:2px dashed var(--red);border-radius:10px 10px 35px 32px;display:none;place-items:start center;padding-top:5px;color:var(--red);font-size:7px;font-weight:900;letter-spacing:.12em;z-index:8;pointer-events:none}.preview-stage.show-safe-area .print-safe-area{display:grid}
.preview-tip{position:absolute;left:28px;bottom:72px;color:var(--ink);display:flex;align-items:center;gap:8px;transform:rotate(-4deg)}.preview-tip>span{display:grid;place-items:center;width:34px;height:34px;background:var(--yellow);border:2px solid;border-radius:50%;font-size:18px}.preview-tip p{margin:0;font-size:9px;line-height:1.25}.preview-tip strong{font-size:10px}.preview-caption{left:20px;right:20px;bottom:20px}.preview-shadow{transition:width .25s,transform .25s}
@media(max-width:560px){.product-details-grid{grid-template-columns:1fr}.control-heading small{display:none}.colour-control,.emoji-picker{flex-wrap:wrap}.safe-area-toggle{margin-left:0}.emoji-picker>div{width:100%;justify-content:space-between}}
.mobile-tools-toggle,.mobile-create-button{display:none}@media(max-width:560px){body{padding-bottom:70px}.mobile-tools-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;margin:2px 0 18px;padding:12px 14px;background:rgba(255,255,255,.08);color:white;border:1px solid rgba(255,255,255,.55);border-radius:12px;font-weight:800;cursor:pointer}.mobile-tools-toggle b{font-size:22px;transition:transform .2s}.mobile-tools-toggle[aria-expanded="true"] b{transform:rotate(45deg)}.builder-copy:not(.mobile-tools-open) .type-tools,.builder-copy:not(.mobile-tools-open) .emoji-picker,.builder-copy:not(.mobile-tools-open) .second-pet-control,.builder-copy:not(.mobile-tools-open) .artwork-controls{display:none}.builder-copy .style-picker span{padding:9px 11px;margin-right:3px;font-size:11px}.builder-copy .upload-box{margin:20px 0}.builder-copy .text-input{margin-bottom:15px}.product-details-grid{gap:8px}.mobile-create-button{position:fixed;left:12px;right:12px;bottom:10px;z-index:850;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;min-height:56px;padding:0 18px;background:var(--yellow);color:var(--ink);border:3px solid var(--ink);border-radius:999px;box-shadow:5px 5px 0 var(--ink);font-family:"Paytone One";text-decoration:none;transition:opacity .2s,transform .2s}.mobile-create-button>span{font-size:20px}.mobile-create-button b{font-size:20px}.mobile-create-button.is-hidden,.cart-open .mobile-create-button{opacity:0;pointer-events:none;transform:translateY(90px)}}
.native-select{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}.pet-select{position:relative;width:min(290px,100%);z-index:6}.builder-product-row .pet-select{display:block}.pet-select-trigger{width:100%;min-height:58px;background:var(--paper);color:var(--ink);border:3px solid var(--ink);border-radius:18px;padding:8px 15px;display:grid;grid-template-columns:1fr auto 16px;align-items:center;gap:10px;text-align:left;cursor:pointer;box-shadow:4px 4px 0 rgba(41,37,31,.28);transition:transform .18s,box-shadow .18s}.pet-select-trigger:hover,.pet-select-trigger:focus-visible{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink);outline:2px solid var(--yellow);outline-offset:3px}.pet-select-trigger span{display:block!important;width:auto!important;height:auto!important;background:none!important;color:inherit!important;border-radius:0!important;font-size:inherit!important;text-align:left!important}.pet-select-trigger small,.pet-select-trigger strong{display:block}.pet-select-trigger small{font-size:8px;letter-spacing:.14em;color:#82796c;margin-bottom:2px}.pet-select-trigger strong{font-family:"Paytone One";font-size:15px}.pet-select-trigger b{font-size:14px}.pet-select-trigger i{width:10px;height:10px;border-right:2px solid;border-bottom:2px solid;transform:rotate(45deg) translateY(-3px);transition:transform .2s}.pet-select.open .pet-select-trigger i{transform:rotate(225deg) translate(-2px,-1px)}.pet-select-menu{position:absolute;left:0;right:0;top:calc(100% + 9px);list-style:none;margin:0;padding:7px;background:var(--paper);color:var(--ink);border:3px solid;border-radius:18px;box-shadow:7px 7px 0 var(--ink);opacity:0;visibility:hidden;transform:translateY(-7px) scale(.98);transform-origin:top;transition:.18s;overflow:hidden}.pet-select.open .pet-select-menu{opacity:1;visibility:visible;transform:none}.pet-select-menu li+li{border-top:1px dashed #c4b9a7}.pet-select-menu button{width:100%;display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:10px;border:0;background:transparent;color:inherit;text-align:left;padding:11px 8px;border-radius:10px;cursor:pointer}.pet-select-menu button:hover,.pet-select-menu button:focus-visible,.pet-select-menu button[aria-selected="true"]{background:#eee3cf;outline:0}.pet-select-menu button[aria-selected="true"]:after{content:"✓";position:absolute;right:12px;margin-top:-33px;font-weight:900}.pet-select-menu button[aria-selected="true"] b{margin-right:18px}.option-dot{display:grid!important;place-items:center!important;width:38px!important;height:38px!important;border:2px solid var(--ink)!important;border-radius:50%!important;color:var(--ink)!important;font-size:16px!important}.classic-dot{background:var(--yellow)!important}.pop-dot{background:var(--blue)!important}.forever-dot{background:var(--pink)!important}.pet-select-menu strong,.pet-select-menu small{display:block}.pet-select-menu strong{font-family:"Paytone One";font-size:13px}.pet-select-menu small{font-size:9px;color:#6f675d;margin-top:2px}.pet-select-menu b{font-size:12px}@media(max-width:560px){.pet-select{width:100%;margin-top:12px}.pet-select-trigger{min-height:62px}.pet-select-menu{position:relative;top:7px;margin-bottom:7px;display:none}.pet-select.open .pet-select-menu{display:block}}
