@font-face{font-family:MSerif;src:url(/fonts/MSerif-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:MSerif;src:url(/fonts/MSerif-Italic.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:MSans;src:url(/fonts/MSans-Regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:MSans;src:url(/fonts/MSans-Medium.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:MSans;src:url(/fonts/MSans-Bold.woff2)format("woff2");font-weight:700;font-display:swap}@font-face{font-family:MScript;src:url(/fonts/MScript-SemiBold.woff2)format("woff2");font-weight:600;font-display:swap}:root{--ink:#1c2b24;--paper:#f6f6f3;--mist:#e7ebe6;--line:#d2d8d1;--slate:#59665f;--red:#a3242b;--gold:#b68a42;--night:#10241b;--candle:#e0b25c;--snow:#f6f6f3;--white:#fff;--serif:"MSerif", Georgia, serif;--sans:"MSans", system-ui, sans-serif;--radius:8px;--gutter:clamp(16px, 4vw, 48px)}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.55}a{color:inherit}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}h1,h2,h3{font-family:var(--serif);margin:0;font-weight:500;line-height:1.06}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.button-primary,.button-secondary,.button-ghost{font:inherit;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;min-height:50px;padding:0 24px;font-size:16px;font-weight:500;text-decoration:none;transition:background-color .15s,transform .15s;display:inline-flex}.button-primary:active,.button-secondary:active,.button-ghost:active{transform:scale(.97)}.button-ghost{color:inherit;background:0 0;border:1.5px solid}.button-ghost:hover{background:#ffffff14}.button-primary{background:var(--red);color:var(--white);border:0}.button-primary:hover{background:#8a1d23}.button-primary:disabled{opacity:.6;cursor:progress}.button-secondary{color:var(--ink);border:1.5px solid var(--ink);background:0 0}.button-secondary:hover{background:var(--white)}.button-secondary.is-busy{opacity:.6;pointer-events:none}.link-button{all:unset;cursor:pointer;color:var(--slate);text-underline-offset:3px;font-size:14px;text-decoration:underline}.link-button:focus-visible{outline:2px solid var(--gold)}.ribbon{background:var(--night);color:var(--candle);text-align:center;padding:9px var(--gutter) 0;margin:0;font-size:14px}.header-wrap{background:var(--night);color:var(--snow)}.site-header{padding:14px var(--gutter) 16px;justify-content:space-between;align-items:center;gap:16px;max-width:1360px;margin:0 auto;display:flex}.wordmark{font-family:var(--serif);font-size:30px;text-decoration:none}.header-nav{align-items:center;gap:26px;font-size:15px;font-weight:500;display:flex}.header-nav a{text-decoration:none}.header-nav a:hover{text-underline-offset:4px;text-decoration:underline}.header-cart{align-items:center;gap:8px;display:inline-flex}.badge{background:var(--red);min-width:22px;height:22px;color:var(--white);border-radius:11px;place-items:center;padding:0 6px;font-size:13px;display:inline-grid}.badge.is-bump{animation:.55s cubic-bezier(.3,1.6,.5,1) bump}@keyframes bump{0%{transform:scale(1)}40%{transform:scale(1.45)}to{transform:scale(1)}}.hero{background:var(--night);color:var(--snow);isolation:isolate;position:relative;overflow:hidden}.snow{z-index:-1;width:100%;height:100%;position:absolute;inset:0}.hero-glow{z-index:-2;background:radial-gradient(closest-side,#e0b25c42,#e0b25c12 55%,#0000);width:75%;height:120%;position:absolute;top:0;right:-10%}.hero-inner{max-width:1360px;padding:clamp(28px, 5vw, 64px) var(--gutter) clamp(48px, 7vw, 96px);grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(24px,4vw,56px);margin:0 auto;display:grid}.hero h1{letter-spacing:-.015em;font-size:clamp(44px,6vw,88px);line-height:1}.hero-line{animation:.9s cubic-bezier(.2,.7,.2,1) both rise;display:block}.hero-family{flex-wrap:wrap;align-items:baseline;column-gap:.28em;animation-delay:.12s;display:flex}.name-slot{align-items:center;display:inline-flex;position:relative}.name-input,.name-measure{letter-spacing:0;font-family:MScript,cursive;font-size:1.22em;font-weight:600;line-height:1.15}.name-input{min-width:2.2em;max-width:100%;color:var(--candle);caret-color:var(--candle);background:0 0;border:0;border-bottom:2px dashed #e0b25c80;border-radius:0;outline:none;padding:0 0 .04em}.name-input::placeholder{color:#e0b25c73}.name-input:focus{border-bottom-style:solid;border-bottom-color:var(--candle)}.name-input:focus-visible{outline:none}.name-measure{visibility:hidden;white-space:pre;position:absolute;top:0;left:0}.caret{background:var(--candle);width:3px;height:.8em;margin-left:2px;animation:1s step-end infinite blink}@keyframes blink{50%{opacity:0}}.hero-lede{color:#c8d3cb;max-width:42ch;margin:26px 0 32px;font-size:18px;animation:.9s cubic-bezier(.2,.7,.2,1) .28s both rise}.hero-actions{flex-wrap:wrap;gap:12px;animation:.9s cubic-bezier(.2,.7,.2,1) .4s both rise;display:flex}.hero-art{color:var(--ink);margin-bottom:26%;text-decoration:none;animation:1.2s cubic-bezier(.2,.7,.2,1) .25s both appear;display:block;position:relative}.hero-mock{animation:7s ease-in-out infinite alternate float}.hero-mock svg{filter:drop-shadow(0 30px 40px #00000059);width:100%;height:auto;display:block}.hero-lens{aspect-ratio:1;border:5px solid var(--candle);border-radius:50%;width:32%;animation:1s cubic-bezier(.2,.9,.3,1.2) .9s both appear;position:absolute;top:74%;left:34%;overflow:hidden;box-shadow:0 24px 50px #00000073,inset 0 0 40px #00000059}.hero-lens svg{display:block}.hero-tag{background:var(--snow);border-radius:999px;padding:7px 14px;font-size:14px;position:absolute;top:-6px;left:8px}.hero-tag strong{color:var(--red);margin-left:6px;font-weight:500}@keyframes rise{0%{opacity:0;transform:translateY(28px)}}@keyframes appear{0%{opacity:0;transform:scale(.94)translateY(16px)}}@keyframes float{0%{transform:translateY(0)rotate(-.4deg)}to{transform:translateY(-10px)rotate(.4deg)}}.shelf{max-width:1360px;padding:clamp(48px, 6vw, 80px) var(--gutter) 72px;margin:0 auto}.shelf h2,.steps h2,.faq h2{margin-bottom:28px;font-size:clamp(32px,4vw,52px)}.extras-heading{margin-top:64px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,3vw,36px);margin:0;padding:0;list-style:none;display:grid}.grid-small{grid-template-columns:repeat(3,minmax(0,1fr))}.card{text-decoration:none;display:block}.card-art{background:var(--mist);aspect-ratio:4/3;border-radius:18px;position:relative;overflow:hidden}.grid-small .card-art{aspect-ratio:1}.card-mock{transition:transform .6s cubic-bezier(.2,.7,.2,1);position:absolute;inset:6%}.card:hover .card-mock{transform:scale(1.035)}.card-mock svg{width:100%;height:100%;display:block}.card-art.is-room .card-mock{inset:0}.card-text{padding:14px 2px 0}.card h3{margin-bottom:4px;font-size:28px}.grid-small .card h3{font-size:24px}.card p{color:var(--slate);max-width:46ch;margin:0 0 6px;font-size:15px}.card-price{font-weight:500}.card:hover h3{text-underline-offset:5px;text-decoration:underline;text-decoration-thickness:1px}.magic{background:var(--night);color:var(--snow);overflow:hidden}.magic-inner{max-width:1360px;padding:clamp(56px, 7vw, 96px) var(--gutter);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(24px,4vw,64px);margin:0 auto;display:grid}.magic h2{font-size:clamp(34px,4.4vw,58px)}.magic p{color:#c8d3cb;max-width:44ch;margin:18px 0 28px}.magic-actions{flex-wrap:wrap;gap:12px;display:flex}.magic-art svg{width:100%;height:auto;display:block}.magic-art .wipe{transition:transform 2.8s cubic-bezier(.45,.05,.25,1) .7s}.magic-art.is-hot .wipe{transform:translateY(-560px)}.magic-art.is-reset .wipe{transition:none}.magic-art .steam{opacity:0}.magic-art.is-hot .steam{animation:3.4s ease-out infinite steam}@keyframes steam{0%{opacity:0;transform:translateY(12px)}30%{opacity:.5}to{opacity:0;transform:translateY(-30px)}}.steps{padding:clamp(56px, 7vw, 88px) var(--gutter) 24px}.steps>*{max-width:calc(1360px - 2 * var(--gutter));margin-left:auto;margin-right:auto}.steps ol{counter-reset:step;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,40px);padding:0;list-style:none;display:grid}.steps li{counter-increment:step;border-top:1px solid var(--line);padding-top:16px}.steps li:before{content:counter(step);font-family:var(--serif);color:var(--gold);font-size:22px}.steps h3{margin:4px 0 6px;font-size:30px}.steps p{color:var(--slate);max-width:36ch;margin:0}.faq{max-width:780px;padding:64px var(--gutter) 72px;margin:0 auto}.faq details{border-top:1px solid var(--line);padding:16px 0}.faq details:last-of-type{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-size:18px;font-weight:500}.faq details p{color:var(--slate);max-width:62ch;margin:10px 0 0}.faq details[open] p{animation:.35s ease-out open}@keyframes open{0%{opacity:0;transform:translateY(-6px)}}@media (prefers-reduced-motion:reduce){.hero-line,.hero-lede,.hero-actions,.hero-art,.hero-mock,.hero-lens,.caret,.badge.is-bump,.faq details[open] p,.magic-art.is-hot .steam{animation:none}.magic-art .wipe,.card-mock{transition:none}}.studio{padding:clamp(20px, 3vw, 40px) var(--gutter) 72px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:clamp(24px,4vw,64px);max-width:1360px;margin:0 auto;display:grid}.stage{background:var(--mist);border-radius:20px;flex-direction:column;align-items:center;gap:10px;padding:24px;display:flex;position:sticky;top:16px}.mockup{--mh:calc(100vh - 140px);aspect-ratio:var(--ar);width:min(100%, calc(var(--mh) * var(--ar)))}.mockup svg{width:100%;height:100%;display:block}.stage-caption{color:var(--slate);margin:0;font-size:13px}.crumb{color:var(--slate);margin:0 0 8px;font-size:14px}.panel h1{letter-spacing:-.01em;font-size:clamp(36px,4.2vw,56px)}.lede{color:var(--slate);max-width:46ch;margin:12px 0 24px;font-size:18px}.variants{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:24px;display:grid}.variant{border:1.5px solid var(--line);border-radius:var(--radius);background:var(--white);cursor:pointer;gap:2px;padding:14px 16px;display:grid;position:relative}.variant input,.chip input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.variant.is-on,.chip.is-on{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}:is(.variant:has(input:focus-visible),.chip:has(input:focus-visible)){outline:2px solid var(--gold);outline-offset:2px}.variant-name{font-weight:500}.variant-price{font-family:var(--serif);font-size:24px}.variant-note{color:var(--slate);font-size:13px}.fields{border-top:1px solid var(--line);gap:18px;padding-top:22px;display:grid}.field-row{grid-template-columns:1fr 7.5em;align-items:end;gap:10px;display:grid}.field-row:has(.field-size){grid-template-columns:1fr 7.5em}.field-row:not(:has(.field-size)){grid-template-columns:1fr 1fr}.field{gap:6px;min-width:0;margin:0;display:grid}fieldset.field{border:0;padding:0}.field>label,.field>.label{padding:0;font-size:15px;font-weight:500}.count{color:var(--slate);margin-left:6px;font-weight:400}.hint{color:var(--slate);font-size:13px}input[type=text],select{font:inherit;color:var(--ink);background:var(--white);border:1.5px solid var(--line);border-radius:var(--radius);width:100%;height:48px;padding:0 12px;font-size:16px}select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--ink) 50%), linear-gradient(135deg, var(--ink) 50%, transparent 50%);background-position:calc(100% - 18px) 21px,calc(100% - 13px) 21px;background-repeat:no-repeat;background-size:5px 5px}input:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:0;border-color:var(--gold)}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1.5px solid var(--line);background:var(--white);cursor:pointer;border-radius:999px;align-items:center;gap:8px;min-height:44px;padding:6px 16px;font-size:15px;display:inline-flex;position:relative}.swatch{border-radius:50%;flex:none;width:22px;height:22px;box-shadow:inset 0 0 0 1px #1c2b2440}.photo-pick{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.crop{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);gap:6px;padding:12px 14px;display:grid}.crop-row{color:var(--slate);grid-template-columns:9em 1fr;align-items:center;gap:12px;font-size:14px;display:grid}.crop-row input{accent-color:var(--ink);width:100%}.slots{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px;margin:4px 0 0;padding:0;list-style:none;display:grid}.slot{all:unset;cursor:pointer;text-align:center;gap:4px;width:100%;display:grid}.slot-img{aspect-ratio:1;background:var(--white) center / cover no-repeat;border:1.5px dashed var(--line);color:var(--slate);border-radius:6px;place-items:center;font-size:22px;display:grid}.slot.is-on .slot-img{border:2px solid var(--ink)}.slot:focus-visible .slot-img{outline:2px solid var(--gold)}.slot-label{color:var(--slate);font-size:12px}.slot-edit{align-items:baseline;gap:12px;margin-top:6px;display:flex}.slot-edit .label{font-size:15px;font-weight:500}.warning{border-left:3px solid var(--gold);background:#fbf1dc;margin:4px 0 0;padding:8px 12px;font-size:14px}.buy{border-top:1px solid var(--line);margin-top:26px;padding-top:24px}.buy-button{width:100%;min-height:58px;font-size:18px}.added{background:var(--white);border:1.5px solid var(--ink);border-radius:14px;gap:12px;padding:18px;display:grid}.added-title{margin:0;font-weight:500}.added-actions{flex-wrap:wrap;gap:10px;display:flex}.upsell{border-radius:var(--radius);background:var(--mist);justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;font-size:15px;text-decoration:none;display:flex}.upsell-go{color:var(--red);flex:none;font-weight:500}.upsell:hover .upsell-go{text-decoration:underline}.facts{color:var(--slate);gap:4px;margin:16px 0 0;padding:0 0 0 18px;font-size:14px;display:grid}.error{color:var(--red);margin:12px 0 0;font-size:15px}.page{max-width:1160px;padding:16px var(--gutter) 80px;margin:0 auto}.page h1{margin-bottom:24px;font-size:clamp(38px,5vw,56px)}.text-page{max-width:760px}.text-page h2{margin:32px 0 8px;font-size:26px}.text-page p{max-width:65ch}.todo{border-left:3px solid var(--gold);background:#fbf1dc;padding:12px 16px;font-size:15px}.cart{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:40px;display:grid}.cart-list{margin:0;padding:0;list-style:none}.cart-line{border-top:1px solid var(--line);grid-template-columns:150px 1fr;gap:20px;padding:18px 0;display:grid}.cart-line:last-child{border-bottom:1px solid var(--line)}.cart-thumb{background:var(--mist);border-radius:10px;align-self:start;padding:8px}.cart-thumb svg{width:100%;height:auto;display:block}.cart-info h2{font-size:24px}.cart-variant{margin:2px 0 0;font-size:15px}.cart-info .hint{margin:4px 0 10px;display:block}.bundle-note{color:var(--red);margin:0 0 10px;font-size:14px}.cart-row{flex-wrap:wrap;align-items:center;gap:12px 18px;display:flex}.cart-price{margin-left:auto;font-weight:500}.qty{border:1.5px solid var(--line);background:var(--white);border-radius:999px;align-items:center;display:inline-flex}.qty button{font:inherit;cursor:pointer;width:38px;height:38px;color:var(--ink);background:0 0;border:0}.qty span{text-align:center;min-width:22px}.cart-upsell{gap:10px;margin-top:28px;display:grid}.cart-upsell h2{font-size:26px}.cart-sum{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:22px;position:sticky;top:16px}.cart-total{font-family:var(--serif);justify-content:space-between;font-size:30px;display:flex}.cart-empty{justify-items:start;gap:12px;display:grid}.site-footer{border-top:1px solid var(--line);padding:32px var(--gutter) 44px;color:var(--slate);flex-wrap:wrap;justify-content:space-between;gap:16px 32px;max-width:1360px;margin:0 auto;font-size:14px;display:flex}.site-footer p{margin:0}.footer-brand{font-family:var(--serif);color:var(--ink);font-size:22px}.site-footer nav{flex-wrap:wrap;align-content:start;gap:8px 20px;display:flex}@media (max-width:900px){.hero-inner,.magic-inner{grid-template-columns:1fr}.hero-glow{width:130%;top:30%;right:-40%}.studio{grid-template-columns:1fr;padding-top:0}.stage{z-index:4;margin:0 calc(-1 * var(--gutter));padding:10px var(--gutter);box-shadow:0 1px 0 var(--line);border-radius:0;top:0}.mockup{--mh:min(34vh, 320px)}.stage-caption{display:none}.cart,.steps ol{grid-template-columns:1fr}.grid-small{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){body{font-size:16px}.ribbon{font-size:13px}.grid,.grid-small{grid-template-columns:1fr}.header-nav a:first-child{display:none}.variants{grid-template-columns:1fr 1fr}.crop-row{grid-template-columns:1fr;gap:2px}.cart-line{grid-template-columns:96px 1fr}.hero-actions .button-primary,.hero-actions .button-ghost,.magic-actions .button-primary,.magic-actions .button-ghost{flex:auto}.hero-lede{font-size:17px}}
