:root{--paper:#fcf9f7;--white:#fff;--ink:#352c3a;--muted:#807480;--pink:#b93674;--pink-dark:#99295e;--line:#eae2e7;--soft:#faf0f5;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,input,label,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.35}a{color:inherit}button,input,textarea,select{outline-offset:4px}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--pink);outline-offset:5px}[hidden]{display:none!important}.wrap{width:min(1180px,calc(100% - 88px));margin-inline:auto}.icon-defs{position:absolute;width:0;height:0;overflow:hidden}.icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.sr-only,.variant-option>input,.swatch>input,.nfc-option>input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100px;left:15px;padding:14px;background:white;z-index:99}.skip-link:focus{top:10px}.site-header{height:100px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;text-decoration:none;font-size:29px;letter-spacing:-1.4px;font-weight:800}.brand-dot{color:var(--pink)}.brand-mark{position:relative;width:38px;height:36px;margin-right:9px;color:var(--pink)}.brand-mark svg{width:29px;height:29px;fill:currentColor;position:absolute;left:0;top:5px}.brand-mark>span{font-size:16px;position:absolute;right:0;top:-4px}.header-right{display:flex;gap:28px;align-items:center}.header-caption{font-size:9px;letter-spacing:1.7px;color:var(--muted)}.private-badge{display:flex;align-items:center;gap:7px;font-size:11px;border:1px solid var(--line);padding:9px 12px;border-radius:30px;background:#fff8}.private-badge .icon{width:13px;height:13px}.intro{padding:53px 0 40px;display:grid;grid-template-columns:1.05fr 1fr;gap:60px;align-items:end}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:600;color:var(--pink);margin:0 0 16px;display:flex;align-items:center;gap:9px}.eyebrow>span{width:5px;height:5px;border-radius:50%;background:currentColor}h1{position:relative;font-size:65px;font-weight:400;font-family:var(--serif);letter-spacing:-2.6px;line-height:1.04;margin:0;width:fit-content}h1 em{font-weight:400;color:var(--pink)}.title-sparkle{fill:#cf8baf;width:33px;height:33px;position:absolute;right:-51px;top:34px;transform:rotate(13deg)}.intro-copy{padding-bottom:6px}.intro-copy>p{font-size:15px;line-height:1.8;color:#786e7b;margin:0 0 22px}.intro-copy strong{font-weight:600;color:var(--ink)}.intro-note{display:flex;align-items:center;gap:7px;font-size:11px;color:#786e7b}.intro-note .icon{width:16px;height:16px;color:var(--pink)}.workspace{display:grid;grid-template-columns:1.05fr 1fr;gap:34px;align-items:start}.preview-sticky{position:sticky;top:24px}.preview-column{align-self:stretch}.preview-card{border-radius:20px;background:#f6eaf0;border:1px solid #ecdbe5;position:relative;overflow:hidden}.preview-header{display:flex;justify-content:space-between;align-items:center;padding:23px 25px;font-size:11px;color:#756779}.preview-header>span:first-child{display:flex;align-items:center;gap:7px}.preview-header i{height:6px;width:6px;border-radius:50%;background:#bc698e;box-shadow:0 0 0 4px #bc698e14}.preview-tag{font-size:8px;letter-spacing:1.5px;background:#fff7;padding:7px 9px;border:1px solid #fff9;border-radius:20px}.preview-art{position:relative;aspect-ratio:1.35;background:radial-gradient(ellipse at 48% 48%,#fff7 0%,#fff0 68%)}.preview-art:before{content:'';position:absolute;inset:0;background-image:radial-gradient(#d9b6c9 0.7px,transparent 0.7px);background-size:20px 20px;opacity:.45;mask-image:radial-gradient(ellipse,#000 0%,transparent 75%)}#keychain-preview{width:100%;height:100%;display:block;position:relative}.floating-star{position:absolute;color:#c38eaa}.star-one{font-size:24px;left:12%;top:15%;transform:rotate(15deg)}.star-two{font-size:41px;right:12%;bottom:16%;transform:rotate(-10deg)}.star-three{font-size:20px;left:19%;bottom:18%;font-weight:300;color:#cbafbe}.preview-bottom{padding:19px 25px 24px;display:flex;align-items:center;justify-content:space-between;font-size:11px}.preview-bottom>span{background:#fff8;border:1px solid #fff;padding:8px 12px;border-radius:20px}.preview-bottom>div{display:flex;align-items:center;gap:5px;color:#7c6e7a}.preview-bottom>div>span:last-child{margin-left:5px;font-size:10px}.mini-dot{width:12px;height:12px;border-radius:50%;border:1px solid #0001;display:inline-block}.nfc-preview-badge{position:absolute;right:23px;top:10px;border-radius:15px;background:#fff9;color:var(--pink);display:flex;align-items:center;gap:4px;padding:6px 9px;font-size:10px}.nfc-preview-badge .icon{width:14px;height:14px}.preview-disclaimer{font-size:10px;line-height:1.7;color:#8b7e8b;text-align:center;margin:14px 14px 30px}.live-summary{padding:26px 27px 18px;background:#fff9;border:1px solid var(--line);border-radius:16px}.summary-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.summary-heading h2{font-size:15px;letter-spacing:-.2px;margin:0;font-weight:600}.summary-heading .icon{width:17px;height:17px;color:#bc7296;fill:none;stroke-width:1}.live-summary dl{margin:0;display:grid;gap:14px}.live-summary dl>div{display:flex;align-items:baseline;gap:20px;justify-content:space-between}.live-summary dt{font-size:12px;color:#847683;flex-shrink:0}.live-summary dd{font-size:12px;margin:0;text-align:right;overflow-wrap:anywhere;max-width:70%;line-height:1.4}.muted{color:#958a94}.live-summary>p{border-top:1px dashed var(--line);padding-top:16px;margin:20px 0 0;font-size:10px;color:#8a7d87;line-height:1.6}.config-card{border:1px solid var(--line);border-radius:20px;background:#fff;padding:29px 30px 21px;box-shadow:0 6px 22px #352c3a02}.form-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.form-heading .eyebrow{font-size:8px;letter-spacing:1.5px;color:#a88a9e;margin-bottom:9px}.form-heading h2{font-family:var(--serif);font-size:30px;font-weight:400;letter-spacing:-.6px;margin:0}.little-star{font-size:32px;color:#e2b6ce;transform:rotate(13deg)}fieldset{min-width:0;border:0;padding:0;margin:0}.form-step{border-bottom:1px solid #f0e9ee;margin-bottom:24px;padding-bottom:24px}.form-step>legend,.form-step>h3{font-size:13px;font-weight:600;display:flex;gap:11px;align-items:center;margin:0 0 17px;padding:0;float:none}.form-step>legend{float:left;width:100%}.form-step>legend+*{clear:both}.step-number{font-size:9px;color:#ac7a96;background:#faf0f5;border:1px solid #f2e2eb;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-weight:500;flex-shrink:0}.variant-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.variant-option{cursor:pointer;position:relative}.variant-card{border:1px solid var(--line);background:#fff;border-radius:10px;display:flex;flex-direction:column;gap:9px;padding:14px 8px 12px;align-items:center;font-size:11px;transition:background .15s,border .15s}.variant-card>svg{width:63px;height:40px;fill:#faf7f9;stroke:#ae9ca8;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.variant-option input:checked+.variant-card{border-color:var(--pink);background:#fcf3f7;box-shadow:0 0 0 1px #b936740c;color:var(--pink);font-weight:600}.variant-option input:checked+.variant-card svg{fill:#f7ddeb;stroke:#b05b85}.variant-option input:focus-visible+.variant-card,.swatch input:focus-visible+.swatch-circle,.nfc-option input:focus-visible+.switch{outline:3px solid var(--ink);outline-offset:4px}.color-field+.color-field{margin-top:19px}.color-field legend{display:flex;gap:10px;font-size:11px;padding:0;margin-bottom:12px;color:#514551}.color-field legend span{color:#998692;font-weight:400}.swatches{display:flex;gap:12px;flex-wrap:wrap}.swatch{display:inline-flex;cursor:pointer;position:relative}.swatch-circle{display:flex;align-items:center;justify-content:center;width:29px;height:29px;background:var(--swatch);border-radius:50%;border:1px solid #00000017;position:relative}.swatch-circle .icon{width:15px;height:15px;color:var(--tick);stroke-width:2.6;visibility:hidden}.swatch input:checked+.swatch-circle:after{content:'';position:absolute;inset:-5px;border:1.4px solid var(--pink);border-radius:50%}.swatch input:checked+.swatch-circle .icon{visibility:visible}.label-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.label-row label,label[for=quantity]{font-size:11px;font-weight:500}.label-row>span{font-size:10px;color:#93848f}.required{color:var(--pink)}input[type=text],input[type=url],input[type=tel],input[type=number],textarea,select{width:100%;border:1px solid #e5dce3;background:#fefcfd;border-radius:8px;padding:12px 13px;color:var(--ink);font-size:13px;line-height:1.4;transition:border-color .15s}input::placeholder,textarea::placeholder{color:#a494a0;opacity:1;font-size:12px}input:focus,textarea:focus,select:focus{border-color:var(--pink);outline:2px solid #b936741a;outline-offset:0}input[aria-invalid=true]{border-color:#b62547;background:#fff9fa}.field-hint{font-size:10px;color:#958692;line-height:1.6;margin:7px 0 0}.field-error{font-size:11px;line-height:1.5;color:#b02547;margin:10px 0 0}.nfc-option{display:flex;gap:11px;align-items:center;padding:14px 13px;background:#fbf8fa;border:1px solid var(--line);border-radius:10px;cursor:pointer;position:relative}.nfc-option:has(input:checked){border-color:#db9eba;background:#fdf3f8}.nfc-icon{width:32px;height:34px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#f2e7ed;border-radius:8px;color:#a36a89}.nfc-copy{flex:1;display:flex;flex-direction:column;gap:6px}.nfc-copy strong{font-size:12px;font-weight:600}.nfc-copy>span{font-size:9px;color:#8b7c87;line-height:1.5;max-width:215px}.switch{width:34px;height:20px;background:#dfd6dd;display:inline-block;border-radius:20px;position:relative;flex-shrink:0;transition:background .2s}.switch:after{position:absolute;content:'';width:14px;height:14px;top:3px;left:3px;border-radius:50%;background:white;box-shadow:0 1px 3px #0001;transition:transform .2s}.nfc-option input:checked+.switch{background:var(--pink)}.nfc-option input:checked+.switch:after{transform:translateX(14px)}#nfc-fields{margin-top:18px}#nfc-fields label{display:block;font-size:11px;margin:14px 0 9px}.nfc-note{font-size:10px;line-height:1.6;color:#958692;margin:12px 0 0}.quantity-row{display:flex;align-items:center;justify-content:space-between;gap:20px}.quantity-control{display:flex;align-items:center;border:1px solid var(--line);border-radius:8px;overflow:hidden;height:39px}.quantity-control button{background:#fff;border:0;width:36px;height:100%;color:#8f6980;font-size:19px}.quantity-control button:hover{background:#fcf1f7}.quantity-control input{border:0;border-radius:0;padding:8px 0;width:54px;min-width:0;text-align:center;background:#fff;appearance:textfield;-moz-appearance:textfield}.quantity-control input::-webkit-inner-spin-button,.quantity-control input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.quantity-control input:focus{outline-offset:-2px}.quantity-row .field-hint{margin-top:5px}.notes-details{margin-top:20px}.notes-details summary{list-style:none;display:flex;align-items:center;gap:7px;font-size:11px;color:#6e5d6b;cursor:pointer}.notes-details summary::-webkit-details-marker{display:none}.notes-details summary>span:not(.details-plus){font-size:9px;color:#ab9da7}.details-plus{margin-left:auto;color:#af95a5;font-size:19px;font-weight:300}.notes-details[open] .details-plus{transform:rotate(45deg)}.notes-details textarea{margin-top:12px;resize:vertical;min-height:85px}.final-step{padding-bottom:22px;margin-bottom:20px}.primary-button{display:flex;align-items:center;justify-content:center;gap:14px;border:0;border-radius:9px;background:var(--pink);color:#fff;padding:16px 19px;font-size:13px;font-weight:600;min-height:49px;transition:background .2s,transform .2s;box-shadow:0 3px 8px #b9367415}.primary-button:hover{background:var(--pink-dark);transform:translateY(-1px)}.primary-button:active{transform:translateY(0)}.form-action>.primary-button{width:100%;justify-content:space-between}.form-action>p:not(.field-error){display:flex;align-items:center;justify-content:center;gap:6px;font-size:9px;color:#998794;margin:12px 0 0;line-height:1.6}.form-action p .icon{width:11px;height:11px}.closing-note{margin:45px 0 0;padding:29px 28px;display:flex;align-items:center;justify-content:center;gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.closing-icon{background:#f5eaf0;color:#b2688d;width:42px;height:42px;border-radius:50%;display:flex;justify-content:center;align-items:center;flex-shrink:0}.closing-icon .icon{width:22px;height:22px;stroke-width:1}.closing-note h2{font-family:var(--serif);font-weight:400;font-size:20px;margin:0 0 7px;letter-spacing:-.3px}.closing-note p{font-size:11px;line-height:1.7;color:#94838f;margin:0}.site-footer{padding:28px 0 35px;display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:600}.footer-tagline{font-weight:400;font-size:10px;color:#988995;margin-left:16px}.site-footer>span:last-child{font-size:9px;letter-spacing:.4px;font-weight:400;color:#9f8d99}.footer-star{margin-left:9px;color:#c989a9}dialog{border:1px solid var(--line);border-radius:20px;background:var(--paper);color:var(--ink);padding:0;width:min(570px,calc(100% - 28px));max-height:calc(100dvh - 40px);box-shadow:0 30px 100px #352c3a33}dialog::backdrop{background:#30203277;backdrop-filter:blur(5px)}.dialog-shell{padding:25px 30px 26px}.dialog-top{display:flex;justify-content:space-between;align-items:center}.dialog-top .eyebrow{margin:0;font-size:9px}.icon-button{border:0;background:transparent;color:#9c7891;padding:9px;border-radius:50%;display:flex;align-items:center;justify-content:center}.icon-button:hover{background:#f4e7ee}.dialog-shell h2{font-family:var(--serif);font-size:34px;line-height:1.15;font-weight:400;letter-spacing:-1px;margin:14px 0}.dialog-shell h2 em{color:var(--pink);font-weight:400}.dialog-description{font-size:12px;line-height:1.7;color:#877480;margin-bottom:20px}.summary-label{display:block;font-size:11px;font-weight:600;margin-bottom:9px}#order-text{background:#fff;border-radius:9px;resize:vertical;font-size:12px;line-height:1.7;min-height:180px;max-height:350px;padding:15px}.dialog-caution{font-size:10px;line-height:1.7;color:#947784;margin:12px 0 19px}.dialog-actions{display:flex;gap:10px}.dialog-actions .primary-button{flex:1;font-size:12px}.secondary-button{border:1px solid #deccd6;border-radius:9px;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;background:transparent;color:var(--pink);font-size:12px}.secondary-button:hover{background:#f6e9f0}.copy-status{min-height:15px;font-size:11px;line-height:1.5;color:var(--pink);margin:13px 0 4px}.text-button{background:transparent;border:0;color:#8a7282;text-decoration:underline;text-underline-offset:4px;font-size:11px;padding:7px 0}.no-script{position:fixed;bottom:0;left:0;right:0;padding:20px;background:#fff0db;color:#632d00;text-align:center;z-index:10}
@media(min-width:1500px){.wrap{width:min(1260px,calc(100% - 120px))}.intro{padding-top:60px}h1{font-size:72px}.workspace{gap:42px}.config-card{padding:32px 36px 24px}.preview-art{aspect-ratio:1.25}}
@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.header-caption{display:none}.intro{gap:35px}h1{font-size:56px}.intro-copy>p{font-size:13px}.intro-note{font-size:10px}.workspace{grid-template-columns:1fr 1fr;gap:22px}.config-card{padding:24px 22px 20px}.swatches{gap:11px}.swatch-circle{width:27px;height:27px}.preview-header{padding:20px}.preview-bottom{padding:15px 20px 22px}.preview-bottom>div>span:last-child{display:none}.live-summary{padding:23px}.title-sparkle{right:-40px;width:27px}.variant-card{padding-inline:3px}.variant-card>svg{width:54px}.nfc-copy>span{font-size:9px}.nfc-option{gap:9px;padding:12px 10px}.nfc-icon{display:none}}
@media(max-width:740px){.wrap{width:calc(100% - 36px);max-width:530px}.site-header{height:78px}.brand{font-size:26px}.brand-mark{transform:scale(.9);margin-right:4px;width:35px}.private-badge{font-size:9px;padding:8px 10px}.private-badge .icon{width:11px;height:11px}.intro{display:block;padding:32px 1px 26px}.eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:14px}h1{font-size:clamp(42px,13vw,54px);letter-spacing:-2px}.title-sparkle{right:0;top:14px;width:24px}.intro-copy{margin-top:21px;padding:0}.intro-copy>p{font-size:13px;line-height:1.75;margin-bottom:12px}.desktop-break{display:none}.intro-note{font-size:10px}.workspace{display:flex;flex-direction:column;gap:0}.preview-column{width:100%;align-self:auto}.preview-sticky{position:static}.preview-card{border-radius:16px}.preview-header{padding:17px 19px}.preview-art{aspect-ratio:1.65}.preview-header>span:first-child{font-size:10px}.preview-tag{font-size:7px;padding:6px 8px}.preview-bottom{padding:7px 18px 16px}.preview-bottom>span{font-size:10px;padding:6px 10px}.preview-bottom>div>span:last-child{display:inline;font-size:9px}.preview-disclaimer{font-size:9px;margin:11px 0 23px;line-height:1.6}.live-summary{display:none}.config-card{width:100%;padding:25px 23px 20px;border-radius:16px}.form-heading{margin-bottom:26px}.form-heading h2{font-size:29px}.form-heading .eyebrow{font-size:8px}.form-step{padding-bottom:25px;margin-bottom:25px}.form-step>legend,.form-step>h3{font-size:13px}.variant-card{padding:14px 7px 12px;gap:8px}.variant-card>svg{width:65px;height:39px}.swatches{gap:14px;padding:4px 0}.swatch-circle{width:30px;height:30px}.swatch{padding:4px;margin:-4px}.color-field legend,.label-row label,label[for=quantity]{font-size:12px}.color-field legend{margin-bottom:12px}.color-field+.color-field{margin-top:19px}.label-row>span{font-size:10px}input[type=text],input[type=url],input[type=tel],input[type=number],textarea,select{font-size:16px;padding:12px}.field-hint{font-size:10px}.nfc-option{padding:14px 12px}.nfc-icon{display:flex}.nfc-copy>span{font-size:10px}.nfc-copy strong{font-size:13px}.switch{width:38px;height:23px}.switch:after{width:17px;height:17px}.nfc-option input:checked+.switch:after{transform:translateX(15px)}#nfc-fields label{font-size:12px}.quantity-control{height:44px}.quantity-control button{width:38px}.quantity-control input{width:58px;padding:8px 0}.notes-details summary{font-size:12px}.notes-details summary>span:not(.details-plus){font-size:10px}.primary-button{font-size:14px;min-height:52px}.form-action>p:not(.field-error){font-size:9px}.closing-note{margin-top:27px;padding:25px 1px;gap:13px;align-items:flex-start}.closing-icon{width:34px;height:34px}.closing-note h2{font-size:18px;line-height:1.3}.closing-note p{font-size:10px}.site-footer{padding:23px 0 25px;align-items:flex-start;font-size:12px;gap:16px}.footer-tagline{display:block;margin:7px 0 0;font-size:9px}.site-footer>span:last-child{font-size:8px;max-width:120px;text-align:right;line-height:1.6}.dialog-shell{padding:20px}.dialog-shell h2{font-size:29px}.dialog-top .eyebrow{font-size:8px}#order-text{font-size:16px;line-height:1.6;height:230px}.dialog-actions{flex-direction:column}.dialog-actions button{font-size:13px;min-height:47px}.dialog-description{font-size:12px}.dialog-caution{font-size:11px}.text-button{font-size:12px;padding-block:10px}.copy-status{font-size:12px}.variant-option:has(input:focus-visible){z-index:1}}
@media(max-width:360px){.wrap{width:calc(100% - 28px)}h1{font-size:42px}.title-sparkle{width:22px;right:0}.config-card{padding:22px 18px}.swatches{gap:13px}.swatch-circle{width:27px;height:27px}.nfc-icon{display:none}.private-badge{padding:7px;font-size:8px}.brand{font-size:24px}.preview-bottom>div>span:last-child{font-size:8px}.form-action>p:not(.field-error){font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
