:root{--bg: #fbf7f1;--card: #ffffff;--ink: #4a2c20;--ink-soft: #6e5142;--muted: #8a7366;--rose: #c47a6e;--rose-deep: #a65d52;--blush: #f7ebe5;--gold: #b8935a;--gold-soft: #e9dcc4;--line: #ece2d4;--ok: #4f7a4a;--err: #a8332a;--radius: 18px;--shadow: 0 1px 2px rgba(74, 44, 32, .05), 0 8px 24px rgba(74, 44, 32, .06);--display: "Frank Ruhl Libre", "David Libre", serif;--body: "Assistant", system-ui, -apple-system, sans-serif;--top: 60px;--bar: 76px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.55 var(--body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}img,svg{display:block;max-width:100%}a{color:inherit}h1,h2{font-family:var(--display);font-weight:400;line-height:1.15;margin:0 0 .4em;letter-spacing:.01em}h1{font-size:clamp(28px,6vw,40px)}h2{font-size:22px}button,input,textarea,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--rose);outline-offset:3px;border-radius:6px}.muted{color:var(--muted)}.small{font-size:14px}.skip{position:absolute;inset-inline-start:12px;top:-60px;z-index:50;background:var(--ink);color:#fff;padding:8px 14px;border-radius:10px}.skip:focus{top:10px}main:focus{outline:none}.btn,button.primary,button.ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;cursor:pointer}.primary{min-height:52px;padding:0 26px;border-radius:999px;border:0;background:var(--ink);color:#fbf7f1;font-weight:600;letter-spacing:.02em;box-shadow:0 6px 16px #4a2c202e;transition:transform .15s,opacity .15s,background .2s}.primary:active{transform:scale(.98)}.primary:disabled{background:#cdbfb3;box-shadow:none;cursor:not-allowed}.primary.wide{width:100%}.ghost{min-height:48px;padding:0 20px;border-radius:999px;background:transparent;border:1px solid var(--gold-soft);color:var(--ink);font-weight:600}.link{background:none;border:0;padding:0;color:var(--rose-deep);text-decoration:underline;text-underline-offset:3px;cursor:pointer;font-weight:600}.top{position:sticky;top:0;z-index:20;height:var(--top);display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:#fbf7f1eb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.brand img{height:38px;width:auto}.cart-link{position:relative;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;color:var(--ink)}.badge{position:absolute;top:4px;inset-inline-end:2px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--rose);color:#fff;font-size:12px;font-weight:700;display:grid;place-items:center}.band{max-width:760px;margin:0 auto;padding:0 16px}.page{padding-top:28px;padding-bottom:48px}.hero{text-align:center;padding:18px 16px 8px;max-width:760px;margin:0 auto}.hero-scene{width:100%;max-width:620px;margin:0 auto -6px}.hero h1{margin-top:4px}.lead{color:var(--ink-soft);max-width:30em;margin:0 auto 22px}.facts{list-style:none;padding:0;margin:26px auto 8px;max-width:760px;display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line)}.facts li{padding:14px 6px;text-align:center;display:grid;gap:2px}.facts li+li{border-inline-start:1px solid var(--line)}.facts b{font-weight:600;font-size:15px}.facts small{color:var(--muted);font-size:13px}.products{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding-top:22px;padding-bottom:40px}.product{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:10px 14px 18px;text-decoration:none;display:grid;gap:4px;align-content:start;transition:transform .2s,box-shadow .2s}.product:hover{transform:translateY(-2px)}.product b{font-family:var(--display);font-size:22px;font-weight:400}.product small{color:var(--muted);font-size:14px}.price{color:var(--rose-deep);font-weight:700}.designing+.foot{display:none}.designer{max-width:1100px;margin:0 auto;padding-bottom:calc(var(--bar) + env(safe-area-inset-bottom) + 12px)}.stage{position:sticky;top:var(--top);z-index:5;background:linear-gradient(var(--bg) 85%,rgba(251,247,241,0));padding:4px 12px 2px}.scene{width:100%;max-width:640px;margin:0 auto}.stage-meta{margin:0;text-align:center;font-size:14px;color:var(--muted)}.stage-meta b{color:var(--ink)}.panel{max-width:640px;margin:0 auto;padding:10px 16px 8px}.panel h1{font-size:clamp(26px,6vw,34px);margin:4px 0 2px}.hint{color:var(--ink-soft);margin:0 0 14px;font-size:15.5px}.progress{display:flex;align-items:center;gap:8px}.dot{width:9px;height:9px;border-radius:50%;border:1px solid var(--gold);background:transparent;padding:0;cursor:pointer;position:relative}.dot:after{content:"";position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px}.dot.done{background:var(--gold)}.dot.on{background:var(--rose);border-color:var(--rose);width:26px;border-radius:5px}.dot:disabled{opacity:.4;cursor:default}.progress-text{margin-inline-start:auto;font-size:13px;color:var(--muted)}.bar{position:fixed;bottom:0;inset-inline:0;z-index:20;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fffffff5;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--line)}.bar-price{text-align:center;display:grid;line-height:1.2}.bar-price small{color:var(--muted);font-size:12px}.bar-price b{font-size:20px;font-weight:700;font-variant-numeric:tabular-nums}.date-field{display:grid;gap:6px;font-weight:600}.date-field input{min-height:54px;padding:0 16px;border-radius:14px;border:1px solid var(--gold-soft);background:var(--card);font-size:18px;width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:start}.chosen{font-family:var(--display);font-size:22px;margin:12px 0 0;color:var(--rose-deep)}.alert{background:#fbecea;color:var(--err);border-radius:12px;padding:10px 14px;font-size:15px}.alert a{color:inherit;font-weight:700}.alert-text{color:var(--err);font-size:14px}.ruler{padding:34px 22px 0;user-select:none;-webkit-user-select:none}.ruler-track{position:relative;height:64px;touch-action:none;cursor:grab}.ruler-track:active{cursor:grabbing}.ruler-tape{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:12px;background:linear-gradient(#fffdf8,#f6eddc);border:1px solid var(--gold-soft);box-shadow:inset 0 1px #fff,0 2px 6px #b8935a26}.ruler-fill{position:absolute;inset-block:0;right:0;border-radius:0 12px 12px 0;background:linear-gradient(#c47a6e2e,#c47a6e1a);border-left:1px solid var(--rose)}.tick{position:absolute;top:0;width:1px;height:12px;background:#c9b089;transform:translate(50%)}.tick.half{height:20px;background:#b8935a}.tick.whole{height:28px;width:1.5px;background:var(--ink-soft)}.tick b{position:absolute;top:30px;left:50%;transform:translate(-50%);font-size:14px;font-weight:600;color:var(--ink-soft)}.tick:first-child{transform:none}.tick:last-child{transform:translate(100%)}.ruler-knob{position:absolute;top:50%;width:40px;height:40px;margin-top:-20px;transform:translate(50%);border-radius:50%;background:var(--card);border:2px solid var(--rose);box-shadow:0 4px 12px #4a2c2038;pointer-events:none;transition:right .12s ease-out}.ruler-knob:before{content:"";position:absolute;top:12px;right:12px;bottom:12px;left:12px;border-radius:50%;background:var(--rose)}.ruler-bubble{position:absolute;bottom:48px;left:50%;transform:translate(-50%);white-space:nowrap;background:var(--ink);color:#fff;font-weight:700;font-size:15px;padding:3px 10px;border-radius:999px}.ruler-track:focus-visible{outline-offset:6px;border-radius:14px}.ruler-ends{display:flex;justify-content:space-between;color:var(--muted);font-size:13px;padding-top:6px}.length-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px}.length-facts div{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:10px 6px;text-align:center;display:grid}.length-facts b{font-size:18px;font-variant-numeric:tabular-nums}.length-facts small{color:var(--muted);font-size:13px}.choices.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.choice{background:var(--card);border:1.5px solid var(--line);border-radius:var(--radius);padding:14px 10px;cursor:pointer;display:grid;justify-items:center;gap:4px;text-align:center;transition:border-color .2s,background .2s}.choice svg{width:90px}.choice b{font-family:var(--display);font-size:22px;font-weight:400}.choice small{color:var(--muted);font-size:13px}.choice.on,.swatch.on,.fruit.on{border-color:var(--rose);background:var(--blush)}.swatches{display:flex;justify-content:center;gap:28px;padding:6px 0}.swatch{background:none;border:1.5px solid transparent;border-radius:20px;padding:10px 14px 8px;display:grid;justify-items:center;gap:8px;cursor:pointer}.swatch-dot{width:86px;height:86px;border-radius:50%;border:1px solid #e3d6c3;box-shadow:inset 0 -6px 14px #785a3c1f,0 4px 12px #4a2c2014;position:relative}.swatch.on .swatch-dot{box-shadow:0 0 0 4px var(--bg),0 0 0 6px var(--rose)}.swatch.on .swatch-dot:after{content:"✓";position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--ink);font-size:26px}.swatch b{font-weight:600}.fruits{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.fruit{position:relative;background:var(--card);border:1.5px solid var(--line);border-radius:16px;padding:8px 4px;display:grid;justify-items:center;gap:1px;cursor:pointer;text-align:center;transition:border-color .2s,background .2s,transform .15s}.fruit:active:not(:disabled){transform:scale(.97)}.fruit-art{width:68px;height:68px;border-radius:50%;background:radial-gradient(circle at 50% 40%,#fff,#f6efe5);display:grid;place-items:center;overflow:hidden}.fruit-art svg{width:60px;height:60px;filter:drop-shadow(0 3px 4px rgba(74,44,32,.18))}.fruit b{font-size:14.5px;font-weight:600;line-height:1.25;margin-top:4px}.fruit small{font-size:13px;color:var(--rose-deep);font-weight:600}.fruit .tag{position:absolute;top:6px;inset-inline-start:6px;font-size:11px;color:var(--ok);background:#eef4ea;border-radius:999px;padding:0 7px}.fruit.off{cursor:not-allowed;background:#f5f1ec}.fruit.off .fruit-art{filter:grayscale(1);opacity:.45}.fruit.off b{color:var(--muted)}.fruit .season-off{color:var(--muted);font-weight:400;font-size:12px}.kit{display:grid;grid-template-columns:1fr auto;grid-template-areas:"art art" "text plus";align-items:center;gap:6px 12px;background:var(--card);border:1.5px solid var(--line);border-radius:var(--radius);padding:10px 16px 16px;transition:border-color .2s,background .2s}.kit.on{border-color:var(--rose);background:var(--blush)}.kit-art{grid-area:art;width:100%;max-width:300px;margin:0 auto}.kit-text{grid-area:text;display:grid}.kit-text small{color:var(--muted)}.plus{grid-area:plus;min-height:46px;padding:0 18px;border-radius:999px;cursor:pointer;background:var(--card);border:1.5px solid var(--rose);color:var(--rose-deep);font-weight:700;display:inline-flex;gap:6px;align-items:center}.plus span{font-size:22px;line-height:1}.plus.on{background:var(--rose);color:#fff}.kit+.link{margin-top:10px}.summary{margin:0 0 12px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:4px 16px}.summary div{display:grid;grid-template-columns:70px 1fr auto;gap:8px;align-items:baseline;padding:10px 0}.summary div+div{border-top:1px solid var(--line)}.summary dt{color:var(--muted);font-size:14px}.summary dd{margin:0;font-weight:600}.lines{list-style:none;margin:0;padding:0}.lines li{display:flex;justify-content:space-between;gap:12px;padding:6px 0;font-variant-numeric:tabular-nums}.share{margin-top:14px;display:grid;justify-items:center;gap:6px}.share-btn{gap:8px}.added{color:var(--ok);font-weight:600;margin:0 0 8px}.items{list-style:none;padding:0;margin:0 0 6px;display:grid;gap:12px}.item{display:grid;grid-template-columns:130px 1fr;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:10px;box-shadow:var(--shadow)}.item-pic{align-self:center}.item-body{display:grid;gap:2px;font-size:15px}.item-body>b{font-family:var(--display);font-size:21px;font-weight:400}.item-body ul{margin:2px 0;padding-inline-start:18px;color:var(--ink-soft)}.item-foot{display:flex;align-items:center;gap:14px;margin-top:4px}.item-foot .price{margin-inline-end:auto}.more{margin:8px 0 22px}fieldset{border:0;margin:0 0 22px;padding:0}legend{font-family:var(--display);font-size:24px;margin-bottom:4px;padding:0}.zones{display:grid;gap:8px}.zone{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;cursor:pointer;background:var(--card);border:1.5px solid var(--line);border-radius:14px;padding:10px 14px}.zone.on{border-color:var(--rose);background:var(--blush)}.zone input{accent-color:var(--rose);width:18px;height:18px;margin:0}.zone-name{display:grid;line-height:1.3}.zone-name small{color:var(--muted);font-size:13px}.zone-price{font-weight:700;color:var(--rose-deep);white-space:nowrap}.details{display:grid;gap:12px}.field{display:grid;gap:4px;font-weight:600;font-size:15px}.field small{font-weight:400;color:var(--muted)}.field input,.field textarea{min-height:50px;padding:10px 14px;border-radius:12px;border:1px solid var(--gold-soft);background:var(--card);font-size:17px;width:100%}.field textarea{min-height:70px;resize:vertical}.field.invalid input{border-color:var(--err)}.totals{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:12px 16px;margin-bottom:14px}.total{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--gold-soft);margin:8px 0 4px;padding-top:10px}.total b{font-size:24px;font-variant-numeric:tabular-nums}.included{margin:4px 0;color:var(--ok);font-weight:600}.agree{display:flex;gap:10px;align-items:flex-start;margin:4px 0 14px;cursor:pointer}.agree input{accent-color:var(--rose);width:20px;height:20px;margin-top:3px;flex:none}.agree.invalid span{color:var(--err)}.cart-empty,.sent{text-align:center}.cta-row{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:16px}.sent-mark{margin:0 auto 6px}.next-steps{text-align:start;max-width:300px;margin:18px auto 22px;color:var(--ink-soft)}.sent .link{display:block;margin:16px auto 0}.faq details{border-bottom:1px solid var(--line);padding:12px 0}.faq summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:12px}.faq summary:after{content:"+";color:var(--gold);font-size:22px;line-height:1}.faq details[open] summary:after{content:"–"}.faq p{margin:8px 0 0;color:var(--ink-soft)}.legal section{margin-top:22px}.legal ul{padding-inline-start:20px}.legal li{margin-bottom:6px}.legal-nav{display:flex;gap:16px;margin-top:30px;padding-top:16px;border-top:1px solid var(--line)}.foot{text-align:center;padding:30px 16px calc(30px + env(safe-area-inset-bottom));border-top:1px solid var(--line);color:var(--ink-soft);font-size:15px}.foot-logo{height:54px;width:auto;margin:0 auto 8px}.foot p{margin:4px 0}.foot a{text-decoration:none}.foot-legal{font-size:13px;color:var(--muted)}@media(max-width:420px){.facts{grid-template-columns:repeat(2,1fr)}.facts li:nth-child(3){border-inline-start:0}.facts li:nth-child(n+3){border-top:1px solid var(--line)}.products{grid-template-columns:1fr}.item{grid-template-columns:96px 1fr}}@media(min-width:900px){.designer{display:grid;grid-template-columns:1.3fr 1fr;gap:24px;align-items:start;padding:24px 24px calc(var(--bar) + 24px)}.stage{top:calc(var(--top) + 24px);background:var(--card);border:1px solid var(--line);border-radius:24px;padding:24px 16px 16px;box-shadow:var(--shadow)}.panel{padding-top:0}.bar{inset-inline:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}.scene-wrap{position:relative}.scene-wrap>svg{width:100%;height:auto}.scene-wrap.has-kit{display:flex;align-items:flex-end;gap:4px}.scene-wrap.has-kit>svg{flex:1;min-width:0}.scene-kit{flex:none;width:19%;max-width:120px;margin-bottom:8%;animation:kit-in .35s ease-out}@keyframes kit-in{0%{opacity:0;transform:translateY(-6px) scale(.9)}}.scene>svg{max-height:30vh;margin:0 auto}@media(min-width:900px){.scene>svg{max-height:none}}.dev-fruit{width:180px;height:180px}.item-pic .scene-wrap.has-kit{display:block}.item-pic .scene-kit{display:none}.scene-3d{aspect-ratio:640 / 340;width:100%}.scene-3d canvas,.scene-3d img{display:block;width:100%;height:100%;object-fit:contain}.stage .scene-3d{max-height:34vh;margin:0 auto}.stage{background:radial-gradient(120% 90% at 50% 35%,#fff,#fbf7f1 55%,#f3ebdf)}.hero .scene-3d{max-width:760px;margin:0 auto}@media(min-width:900px){.stage .scene-3d{max-height:none}}.fruit-pick{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:8px 12px;margin:0 0 10px;font-size:15px}.plus.small-plus{min-height:38px;padding:0 14px;font-size:14.5px;flex:none}.plus.small-plus span{font-size:18px}.fruit-note{margin:-4px 0 10px}.fruits.adding .fruit:not(:disabled){border-style:dashed;border-color:var(--rose)}
