:root{--ink:#241915;--ink-soft:#5e4f48;--cream:#f8f2e9;--paper:#fffdf9;--sand:#e6d4bd;--sand-deep:#c7aa84;--clay:#a95f46;--sage:#7c8873;--gold:#c99b4b;--line:#24191524;--display:Georgia, "Times New Roman", serif;--sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--shadow:0 24px 80px #482e1f21}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0}button,a{color:inherit}button{font:inherit}a{text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid var(--clay);outline-offset:3px}.section-shell{width:min(1180px,100% - 48px);margin:0 auto}.announcement{background:var(--ink);color:#f7ede0;letter-spacing:.13em;text-transform:uppercase;justify-content:center;align-items:center;gap:14px;min-height:34px;padding:7px 24px;font-size:.68rem;font-weight:600;display:flex}.announcement-dot{background:var(--gold);border-radius:50%;width:3px;height:3px}.site-header{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:20;background:#fffdf9eb;grid-template-columns:1fr auto 1fr;align-items:center;min-height:86px;padding:10px max(24px,50% - 590px);display:grid;position:sticky;top:0}.brand{align-items:center;width:110px;height:58px;display:flex;overflow:hidden}.brand img{width:110px;height:auto}.desktop-nav{color:var(--ink-soft);align-items:center;gap:32px;font-size:.82rem;display:flex}.desktop-nav a,.site-footer a{transition:color .18s}.desktop-nav a:hover,.site-footer a:hover{color:var(--clay)}.header-actions{justify-self:end;gap:8px;display:flex}.header-actions button,.header-actions a{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:40px;height:40px;display:grid;position:relative}.header-actions button:hover,.header-actions a:hover{background:var(--cream)}.header-actions button:disabled{cursor:default;opacity:.72}.cart-count{background:var(--clay);color:#fff;border-radius:50%;place-items:center;width:17px;height:17px;font-size:.58rem;font-weight:700;display:grid;position:absolute;top:-3px;right:-2px}.hero{grid-template-columns:minmax(0,1.04fr) minmax(380px,.96fr);align-items:center;gap:80px;min-height:680px;padding-top:78px;padding-bottom:90px;display:grid}.eyebrow,.kicker{color:var(--clay);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:9px;margin:0 0 20px;font-size:.72rem;font-weight:700;display:flex}.hero h1,.section-heading h2,.customizer-copy h2,.closing-content h2{font-family:var(--display);letter-spacing:-.045em;margin:0;font-weight:400;line-height:.97}.hero h1{max-width:690px;font-size:clamp(3.65rem,6vw,6.4rem)}.hero h1 em{color:var(--clay);font-weight:400}.hero-lead{max-width:585px;color:var(--ink-soft);margin:28px 0 0;font-size:1.04rem;line-height:1.75}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:35px;display:flex}.button{border-radius:999px;justify-content:center;align-items:center;gap:11px;min-height:50px;padding:0 22px;font-size:.84rem;font-weight:650;transition:transform .18s,background .18s,color .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--ink);color:#fff}.button-primary:hover{background:var(--clay)}.button-quiet{border:1px solid var(--line)}.button-quiet:hover{background:var(--cream)}.hero-notes{border-top:1px solid var(--line);gap:40px;margin:46px 0 0;padding:24px 0 0;display:flex}.hero-notes div{gap:5px;display:grid}.hero-notes dt{font-family:var(--display);font-size:1.02rem}.hero-notes dd{color:var(--ink-soft);margin:0;font-size:.72rem}.hero-brand-card{min-height:500px;box-shadow:var(--shadow);isolation:isolate;background:linear-gradient(145deg,#efe0cc 0%,#dfc6a6 100%);border:1px solid #694b3926;border-radius:4px 48px;flex-direction:column;justify-content:space-between;padding:27px;display:flex;position:relative;overflow:hidden}.hero-card-glow{z-index:-1;background:radial-gradient(circle at 20% 20%,#ffffffb8,#0000 28%),linear-gradient(120deg,#0000 35%,#ffffff59 47%,#0000 59%);position:absolute;inset:-20% -30%;transform:rotate(-7deg)}.hero-card-topline,.hero-card-footer{letter-spacing:.13em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;font-size:.62rem;font-weight:650;display:flex}.hero-logo-frame{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffbf557;border:1px solid #492d1e1a;align-self:center;width:min(88%,360px);padding:22px 18px}.hero-logo-frame img{width:100%;height:auto;display:block}.hero-card-footer{justify-content:flex-start}.material-chip{background:#fff3;border:1px solid #24191538;border-radius:999px;padding:8px 11px}.collections,.process{padding-top:120px;padding-bottom:130px}.section-heading{grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);align-items:end;gap:70px;margin-bottom:55px;display:grid}.section-heading h2,.customizer-copy h2,.closing-content h2{max-width:750px;font-size:clamp(2.6rem,4.5vw,4.5rem)}.section-heading>p{color:var(--ink-soft);margin:0 0 4px;font-size:.94rem;line-height:1.7}.collection-grid{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.collection-card{border-right:1px solid var(--line);min-height:400px;padding:30px;transition:background .18s,transform .18s;position:relative}.collection-card:last-child{border-right:0}.collection-card:hover{background:var(--cream);transform:translateY(-5px)}.collection-number{color:var(--sand-deep);font-family:var(--display);font-size:.85rem}.collection-icon{background:var(--sand);width:90px;height:90px;color:var(--ink);border-radius:50%;place-items:center;margin:56px 0 38px;display:grid}.collection-detail{letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--clay)!important;margin:0 0 12px!important;font-size:.65rem!important}.collection-card h3,.process-grid h3{font-family:var(--display);margin:0;font-size:1.7rem;font-weight:400}.collection-card>p{color:var(--ink-soft);margin:13px 0 0;font-size:.86rem;line-height:1.65}.collection-link{align-items:center;gap:8px;font-size:.72rem;font-weight:650;display:flex;position:absolute;bottom:28px;left:30px}.customizer-section{background:var(--cream);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.customizer-grid{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:center;gap:100px;min-height:700px;padding-top:100px;padding-bottom:100px;display:grid}.customizer-preview{border:1px solid var(--line);background:var(--paper);box-shadow:0 22px 60px #44302417}.preview-toolbar,.preview-controls{justify-content:space-between;align-items:center;gap:16px;min-height:62px;padding:14px 20px;font-size:.72rem;font-weight:650;display:flex}.preview-toolbar{border-bottom:1px solid var(--line)}.preview-status{color:var(--sage);align-items:center;gap:8px;display:flex}.preview-status span{background:var(--sage);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #7c887326}.preview-canvas{background:linear-gradient(#ffffffbd, #ffffffbd), linear-gradient(90deg, var(--line) 1px, transparent 1px), linear-gradient(var(--line) 1px, transparent 1px);background-size:auto,34px 34px,34px 34px;align-content:center;place-items:center;gap:14px;min-height:370px;padding:40px;display:grid}.preview-canvas img{filter:saturate(.78);width:min(74%,290px);height:auto}.preview-canvas p{color:var(--ink-soft);font-family:var(--display);margin:0;font-size:1.1rem;font-style:italic}.preview-controls{border-top:1px solid var(--line)}.preview-controls>div{align-items:center;gap:15px;display:flex}.control-label,.preview-note{color:var(--ink-soft)}.swatches{gap:7px;display:flex}.swatch{border:2px solid var(--paper);width:22px;height:22px;box-shadow:0 0 0 1px var(--line);border-radius:50%}.swatch-sand{background:#cfb28e}.swatch-clay{background:var(--clay)}.swatch-sage{background:var(--sage)}.swatch-charcoal{background:#2d2926}.customizer-copy>p:not(.kicker){color:var(--ink-soft);margin:26px 0 0;font-size:1rem;line-height:1.75}.customizer-points{gap:17px;margin-top:34px;display:grid}.customizer-points div{border-bottom:1px solid var(--line);align-items:center;gap:13px;padding-bottom:17px;font-size:.86rem;display:flex}.customizer-points svg{color:var(--clay)}.process-heading{grid-template-columns:1fr}.process-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.process-grid article{border:1px solid var(--line);min-height:275px;padding:28px;position:relative}.step-icon{background:var(--cream);width:48px;height:48px;color:var(--clay);border-radius:50%;place-items:center;display:grid}.step-number{color:var(--sand-deep);font-family:var(--display);font-size:.82rem;position:absolute;top:30px;right:28px}.process-grid h3{margin-top:54px}.process-grid p{color:var(--ink-soft);margin:13px 0 0;font-size:.85rem;line-height:1.65}.closing-section{background:var(--ink);color:#f9f1e6}.closing-content{justify-content:space-between;align-items:center;gap:70px;min-height:390px;padding-top:70px;padding-bottom:70px;display:flex}.closing-content .kicker{color:var(--sand-deep)}.closing-content h2{max-width:790px}.button-light{background:var(--paper);color:var(--ink);flex:none}.button-disabled{cursor:default}.button-disabled:hover{transform:none}.site-footer{color:#d7cbc2;background:#1d1512;padding-top:70px}.footer-grid{grid-template-columns:1.6fr .7fr .7fr;gap:70px;padding-bottom:60px;display:grid}.footer-brand img{filter:brightness(1.38)saturate(.6);width:135px;height:auto;margin:-25px 0 -15px}.footer-brand p{color:#a99a91;max-width:350px;margin:0;font-size:.8rem;line-height:1.65}.footer-grid h3{color:#f5ece4;letter-spacing:.14em;text-transform:uppercase;margin:0 0 20px;font-size:.68rem}.footer-grid>div:not(.footer-brand){flex-direction:column;align-items:flex-start;gap:12px;display:flex}.footer-grid a{color:#a99a91;align-items:center;gap:7px;font-size:.78rem;display:flex}.footer-bottom{color:#7f716a;border-top:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:24px;min-height:70px;font-size:.66rem;display:flex}.back-link{width:fit-content;color:var(--ink-soft);align-items:center;gap:8px;font-size:.76rem;font-weight:650;transition:color .18s;display:inline-flex}.back-link:hover{color:var(--clay)}.catalog-main{min-height:70vh}.catalog-heading{padding-top:62px;padding-bottom:58px}.catalog-heading .kicker{margin-top:50px}.catalog-heading>div{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);align-items:end;gap:70px;display:grid}.catalog-heading h1,.product-detail-copy h1,.product-status-page h1,.catalog-empty h2{font-family:var(--display);letter-spacing:-.045em;margin:0;font-weight:400;line-height:1}.catalog-heading h1{max-width:780px;font-size:clamp(3.2rem,6vw,6rem)}.catalog-heading>div>p{color:var(--ink-soft);margin:0 0 6px;font-size:.92rem;line-height:1.7}.catalog-results{padding-top:46px;padding-bottom:130px}.catalog-count{border-bottom:1px solid var(--line);color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;padding-bottom:16px;font-size:.7rem;font-weight:650;display:flex}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:46px 22px;display:grid}.product-card{min-width:0}.product-card-media{aspect-ratio:4/5;background:var(--cream);display:block;position:relative;overflow:hidden}.product-card-media>img,.product-card-media>.product-media-fallback{width:100%;height:100%;transition:transform .3s}.product-card-media>img{object-fit:cover;display:block}.product-card:hover .product-card-media>img,.product-card:hover .product-card-media>.product-media-fallback{transform:scale(1.018)}.product-media-fallback{background:linear-gradient(#ffffff94, #ffffff94), linear-gradient(135deg, var(--sand), var(--cream));color:var(--ink-soft);letter-spacing:.1em;text-transform:uppercase;align-content:center;place-items:center;gap:14px;padding:28px;font-size:.66rem;font-weight:650;display:grid}.product-media-fallback img{opacity:.54;width:min(72%,230px);height:auto}.product-badge{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);letter-spacing:.08em;text-transform:uppercase;background:#fffdf9e6;border-radius:999px;padding:7px 10px;font-size:.6rem;font-weight:700;position:absolute;top:14px;left:14px}.product-card-copy{justify-content:space-between;align-items:flex-start;gap:18px;padding-top:18px;display:flex}.product-card-copy p{color:var(--clay);margin:0 0 7px;font-size:.74rem;font-weight:700}.product-card-copy h2{font-family:var(--display);margin:0;font-size:1.62rem;font-weight:400;line-height:1.08}.product-card-link{border:1px solid var(--line);border-radius:50%;flex:none;place-items:center;width:37px;height:37px;transition:background .18s,color .18s;display:grid}.product-card:hover .product-card-link{background:var(--ink);color:#fff}.product-card-description{color:var(--ink-soft);margin:12px 0 0;font-size:.8rem;line-height:1.6}.catalog-empty{border:1px solid var(--line);background:var(--cream);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:480px;padding:60px 24px;display:flex}.catalog-empty-icon{background:var(--paper);width:62px;height:62px;color:var(--clay);border-radius:50%;place-items:center;margin-bottom:28px;display:grid}.catalog-empty .kicker{margin-bottom:15px}.catalog-empty h2{max-width:650px;font-size:clamp(2.35rem,4vw,4rem)}.catalog-empty>p:not(.kicker){max-width:570px;color:var(--ink-soft);margin:22px 0 30px;font-size:.9rem;line-height:1.7}.catalog-loading{grid-template-columns:repeat(3,1fr);align-items:center;gap:22px;min-height:70vh;display:grid}.catalog-loading span{aspect-ratio:4/5;background:linear-gradient(100deg, var(--cream) 20%, #f1e6d8 45%, var(--cream) 70%);background-size:200% 100%;animation:1.5s linear infinite catalog-pulse}@keyframes catalog-pulse{to{background-position:-200% 0}}.product-detail-main{min-height:70vh;padding-top:46px;padding-bottom:120px}.product-detail-grid{grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);align-items:start;gap:72px;margin-top:35px;display:grid}.product-gallery{min-width:0}.product-gallery-main{aspect-ratio:1/1.05;object-fit:cover;background:var(--cream);width:100%;display:block}.product-gallery-more{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}.product-gallery-more>img,.product-gallery-more>.product-media-fallback{aspect-ratio:1;object-fit:cover;width:100%;display:block}.product-detail-copy{padding-top:12px}.product-detail-copy .kicker{margin-bottom:16px}.product-detail-copy h1{font-size:clamp(3.2rem,5.2vw,5.5rem)}.product-detail-lead{color:var(--ink-soft);margin:24px 0 0;font-size:.98rem;line-height:1.72}.product-configurator{border-top:1px solid var(--line);margin-top:34px;padding-top:25px}.product-price-row{justify-content:space-between;align-items:center;gap:20px;margin-bottom:31px;display:flex}.product-price-row>div{gap:4px;display:grid}.product-price-row>div span{color:var(--ink-soft);letter-spacing:.09em;text-transform:uppercase;font-size:.67rem;font-weight:700}.product-price-row strong{font-family:var(--display);font-size:1.8rem;font-weight:400}.availability{color:var(--clay);align-items:center;gap:6px;font-size:.67rem;font-weight:700;display:inline-flex}.availability.is-available{color:var(--sage)}.product-option{border:0;border-top:1px solid var(--line);margin:0;padding:22px 0}.product-option legend{justify-content:space-between;align-items:center;width:100%;margin-bottom:15px;padding:0;font-size:.78rem;font-weight:700;display:flex}.product-option legend span{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;font-size:.58rem;font-weight:600}.option-values{flex-wrap:wrap;gap:8px;display:flex}.option-value{border:1px solid var(--line);min-height:40px;color:var(--ink-soft);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:9px;padding:8px 13px;font-size:.73rem;transition:border-color .18s,background .18s,color .18s;display:inline-flex}.option-value:hover,.option-value.is-selected{border-color:var(--ink);background:var(--ink);color:#fff}.option-color{border:2px solid var(--paper);width:18px;height:18px;box-shadow:0 0 0 1px var(--line);border-radius:50%}.option-empty{color:var(--ink-soft);margin:0;font-size:.75rem}.production-note{background:var(--cream);color:var(--ink-soft);align-items:flex-start;gap:12px;margin:10px 0 22px;padding:16px;display:flex}.production-note svg{color:var(--clay);flex:none}.production-note p{margin:0;font-size:.75rem;line-height:1.55}.order-button{background:var(--ink);color:#fff;opacity:.58;cursor:not-allowed;border:0;border-radius:999px;width:100%;min-height:52px;font-size:.8rem;font-weight:700}.order-note{color:var(--ink-soft);text-align:center;margin:12px 12px 0;font-size:.67rem;line-height:1.5}.product-description{border-top:1px solid var(--line);margin-top:40px;padding-top:28px}.product-description h2{font-family:var(--display);margin:0 0 18px;font-size:1.6rem;font-weight:400}.product-description p{color:var(--ink-soft);margin:0 0 15px;font-size:.84rem;line-height:1.72}.product-status-page{flex-direction:column;justify-content:center;align-items:flex-start;min-height:68vh;padding-top:80px;padding-bottom:100px;display:flex}.product-status-page h1{max-width:790px;font-size:clamp(3rem,6vw,5.8rem)}.product-status-page>p:not(.kicker){max-width:590px;color:var(--ink-soft);margin:24px 0 30px;line-height:1.7}.customizer-copy>.button{margin-top:32px}.keychain-designer-page{background:radial-gradient(circle at 4% 18%,#c99b4b1c,#0000 24rem),linear-gradient(#fffdf9 0%,#f7f0e7 100%);overflow:hidden}.keychain-studio{padding-top:42px;padding-bottom:112px}.designer-intro{grid-template-columns:minmax(150px,.7fr) minmax(420px,1.5fr) minmax(190px,.8fr);align-items:end;gap:34px;padding:18px 0 42px;display:grid}.designer-back{color:var(--ink-soft);letter-spacing:.03em;align-items:center;gap:8px;padding-bottom:11px;font-size:.74rem;font-weight:700;display:inline-flex}.designer-back:hover{color:var(--clay)}.designer-intro-copy .kicker{margin-bottom:13px}.designer-intro h1{font-family:var(--display);letter-spacing:-.055em;margin:0;font-size:clamp(3.25rem,5.8vw,5.5rem);font-weight:400;line-height:.91}.designer-progress{padding-bottom:11px}.designer-progress>span{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px;font-size:.68rem;font-weight:700;display:block}.designer-progress>div{grid-template-columns:repeat(3,1fr);gap:5px;display:grid}.designer-progress i{background:var(--clay);border-radius:99px;height:3px}.designer-workbench{grid-template-columns:minmax(0,1.14fr) minmax(420px,.86fr);align-items:start;gap:24px;display:grid}.designer-preview-panel{background:#eee2d3;border:1px solid #583a2a1c;border-radius:3px 48px;min-height:760px;position:sticky;top:132px;overflow:hidden;box-shadow:0 30px 90px #4b2d1e1f}.designer-preview-toolbar{min-height:61px;color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;background:#fffdf980;border-bottom:1px solid #2419151c;justify-content:space-between;align-items:center;padding:13px 20px 13px 24px;font-size:.69rem;font-weight:700;display:flex}.designer-preview-toolbar>div,.designer-preview-toolbar button{align-items:center;gap:9px;display:flex}.live-dot{background:var(--clay);border:2px solid #a95f4640;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #a95f461f}.designer-preview-toolbar button{cursor:pointer;color:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit;text-transform:inherit;background:0 0;border:0}.designer-preview-toolbar button:hover{color:var(--ink)}.keychain-canvas{isolation:isolate;justify-content:center;align-items:center;min-height:698px;padding:46px 40px 38px;display:flex;position:relative}.keychain-canvas:before,.keychain-canvas:after{content:"";opacity:.32;background:linear-gradient(var(--ink), var(--ink)) center / 1px 100% no-repeat, linear-gradient(90deg, var(--ink), var(--ink)) center / 100% 1px no-repeat;width:54px;height:54px;position:absolute}.keychain-canvas:before{top:80px;left:42px}.keychain-canvas:after{bottom:82px;right:42px}.canvas-note{z-index:2;color:#2419158c;letter-spacing:.11em;text-transform:uppercase;font-size:.64rem;font-weight:700;position:absolute}.canvas-note-left{top:60px;left:42px}.canvas-note-right{bottom:60px;right:42px}.keychain-halo{aspect-ratio:1;z-index:-1;border:1px solid #2419151a;border-radius:50%;width:min(70%,480px);position:absolute}.keychain-halo:before,.keychain-halo:after{content:"";border-radius:inherit;border:1px dashed #24191514;position:absolute;inset:10%}.keychain-halo:after{inset:25%}.keychain-object{aspect-ratio:1;filter:drop-shadow(0 24px 22px #4f311e2b);width:min(84%,490px);transition:transform .3s;position:relative;transform:rotate(-2deg)}.keychain-object:hover{transform:rotate(0)translateY(-4px)}.keychain-base,.keychain-color-layer{width:100%;height:auto;display:block}.keychain-color-layer{clip-path:inset(34.5% 29.3% 4% round 46% 46% 12% 12%/11% 11% 7% 7%);transition:filter .26s;position:absolute;inset:0}.keychain-lettering{z-index:2;color:#51392d;text-align:center;text-shadow:0 1px #ffffff2e;flex-direction:column;align-items:center;width:33%;transition:color .18s;display:flex;position:absolute;top:58%;left:50%;transform:translate(-50%,-50%)}.keychain-lettering.is-light{color:#f7eee2;text-shadow:0 1px 2px #0000002e}.keychain-lettering svg{margin-bottom:9px}.keychain-lettering strong{letter-spacing:.03em;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:clamp(1.05rem,2.3vw,1.75rem);font-weight:700;line-height:1;overflow:hidden}.keychain-lettering>span{font-family:var(--sans);letter-spacing:.22em;margin-top:13px;font-size:.42rem;font-weight:800}.typeface-serena,.typeface-serena strong{font-family:Georgia,Times New Roman,serif}.typeface-clara,.typeface-clara strong{font-family:var(--sans);letter-spacing:.09em}.typeface-alegre,.typeface-alegre strong{font-family:"Trebuchet MS", var(--sans);letter-spacing:.01em;font-weight:700}.keychain-canvas>p{color:#2419158c;white-space:nowrap;margin:0;font-size:.64rem;position:absolute;bottom:27px;left:50%;transform:translate(-50%)}.designer-controls{border:1px solid var(--line);background:#fffdf9eb;border-radius:3px 32px;padding:38px;box-shadow:0 24px 70px #482e1f14}.designer-controls-heading{justify-content:space-between;align-items:flex-start;gap:24px;padding-bottom:28px;display:flex}.designer-controls-heading .kicker{margin-bottom:10px}.designer-controls-heading h2{font-family:var(--display);letter-spacing:-.045em;margin:0;font-size:clamp(2.4rem,3.5vw,3.4rem);font-weight:400;line-height:.98}.designer-model{border:1px solid var(--line);color:var(--ink-soft);letter-spacing:.1em;text-transform:uppercase;flex:none;padding:7px 10px;font-size:.61rem;font-weight:800}.designer-control-group{border:0;border-top:1px solid var(--line);min-width:0;margin:0;padding:22px 0}.designer-control-group>label,.designer-control-group>legend{width:100%;color:var(--ink);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;margin:0 0 15px;padding:0;font-size:.72rem;font-weight:800;display:flex}.designer-control-group label span,.designer-control-group legend{gap:10px}.designer-control-group label b,.designer-control-group legend b{color:var(--clay);margin-right:8px;font-size:.65rem}.designer-control-group label small{color:var(--ink-soft);letter-spacing:0;font-size:.65rem;font-weight:600}.designer-name-input{border-bottom:1px solid var(--ink);background:var(--cream);align-items:center;height:54px;display:flex}.designer-name-input:focus-within{box-shadow:inset 0 -2px var(--clay)}.designer-name-input input{min-width:0;color:var(--ink);font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;background:0 0;border:0;outline:0;flex:1;padding:0 17px;font-size:1.25rem}.designer-name-input svg{color:var(--clay);margin-right:17px}.designer-swatches{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.designer-swatch{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;place-items:center;width:38px;height:38px;padding:3px;display:grid;position:relative}.designer-swatch>span{border-radius:inherit;border:1px solid #24191517;width:100%;height:100%;box-shadow:inset 0 1px 1px #ffffff59}.designer-swatch.is-selected{border-color:var(--ink)}.designer-swatch svg{color:#fff;filter:drop-shadow(0 1px 1px #0006);position:absolute}.selected-swatch-name{color:var(--ink-soft);margin-left:4px;font-size:.72rem;font-weight:700}.designer-symbols{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.designer-symbol,.designer-typefaces button,.designer-finishes button{border:1px solid var(--line);cursor:pointer;min-height:66px;color:var(--ink-soft);background:0 0;border-radius:2px;transition:border-color .16s,background-color .16s,color .16s}.designer-symbol{flex-direction:column;justify-content:center;align-items:center;gap:7px;display:flex}.designer-symbol span{font-size:.62rem;font-weight:700}.designer-symbol:hover,.designer-typefaces button:hover,.designer-finishes button:hover{color:var(--ink);border-color:#a95f468c}.designer-symbol.is-selected,.designer-typefaces button.is-selected,.designer-finishes button.is-selected{border-color:var(--clay);color:var(--clay);box-shadow:inset 0 0 0 1px var(--clay);background:#a95f4614}.designer-typefaces{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.designer-typefaces button{justify-content:center;align-items:center;gap:11px;padding:9px 10px;display:flex}.designer-typefaces button strong{font-size:1.25rem}.designer-typefaces button span{font-family:var(--sans);font-size:.64rem;font-weight:700}.designer-finishes{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.designer-finishes button{text-align:left;flex-direction:column;justify-content:center;align-items:flex-start;padding:12px 16px;display:flex}.designer-finishes button span{color:var(--ink);font-size:.75rem;font-weight:800}.designer-finishes button small{color:var(--ink-soft);margin-top:4px;font-size:.62rem}.designer-order-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding:23px 0;display:flex}.quantity-control>span,.designer-total>span{color:var(--ink-soft);letter-spacing:.1em;text-transform:uppercase;margin-bottom:7px;font-size:.62rem;font-weight:800;display:block}.quantity-control>div{align-items:center;gap:13px;display:flex}.quantity-control button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.quantity-control button:disabled{cursor:default;opacity:.35}.quantity-control strong{text-align:center;min-width:16px}.designer-total{text-align:right}.designer-total strong{font-family:var(--display);font-size:1.6rem;font-weight:400}.designer-add-button{border:1px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer;letter-spacing:.08em;text-transform:uppercase;border-radius:2px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:55px;font-size:.75rem;font-weight:800;transition:transform .16s,background-color .16s;display:flex}.designer-add-button:hover{background:#3a2922;transform:translateY(-2px)}.designer-add-button.is-added{background:#68755f;border-color:#68755f}.designer-order-note{min-height:32px;color:var(--ink-soft);text-align:center;margin:12px 8px 0;font-size:.66rem;line-height:1.5}.admin-auth-page{background:var(--paper);grid-template-columns:minmax(360px,.82fr) minmax(520px,1.18fr);min-height:100vh;display:grid}.admin-auth-brand{background:radial-gradient(circle at 20% 16%,#ffffffb8,#0000 28%),linear-gradient(145deg,#ead8c1,#d6b58f);flex-direction:column;justify-content:space-between;min-height:100vh;padding:48px clamp(34px,5vw,82px) 70px;display:flex;position:relative;overflow:hidden}.admin-auth-brand:after{content:"";border:1px solid #2419151f;border-radius:50%;width:410px;height:410px;position:absolute;bottom:-175px;right:-190px}.admin-auth-brand>div{z-index:1;max-width:420px;position:relative}.admin-auth-brand img{width:min(290px,82%);height:auto;margin-left:-28px}.admin-auth-brand>div p{color:#241915b8;max-width:360px;font-family:var(--display);margin:-20px 0 0;font-size:clamp(1.7rem,3vw,2.65rem);line-height:1.12}.admin-auth-panel{place-items:center;min-height:100vh;padding:70px clamp(30px,7vw,110px);display:grid}.admin-auth-card{width:min(100%,510px)}.admin-auth-icon{background:var(--cream);width:48px;height:48px;color:var(--clay);border-radius:50%;place-items:center;margin-bottom:32px;display:grid}.admin-auth-card .kicker{margin-bottom:14px}.admin-auth-card h1{font-family:var(--display);letter-spacing:-.045em;margin:0;font-size:clamp(3rem,5vw,4.8rem);font-weight:400;line-height:.98}.admin-auth-intro{color:var(--ink-soft);margin:22px 0 30px;font-size:.9rem;line-height:1.7}.admin-setup-notice{border-left:3px solid var(--sage);background:#7c88731a;margin-bottom:25px;padding:18px}.admin-setup-notice.is-warning{border-left-color:var(--gold);background:#c99b4b1c}.admin-setup-notice strong{font-family:var(--display);font-size:1.08rem;font-weight:400}.admin-setup-notice p{color:var(--ink-soft);margin:7px 0 0;font-size:.76rem;line-height:1.5}.admin-setup-notice a{color:var(--clay);margin-top:12px;font-size:.76rem;font-weight:700;display:inline-block}.admin-auth-form{gap:10px;display:grid}.admin-auth-form label{margin-top:9px;font-size:.72rem;font-weight:700}.admin-auth-form input,.admin-auth-form textarea,.admin-auth-form select{border:1px solid var(--line);background:var(--paper);width:100%;min-height:49px;color:var(--ink);font:inherit;border-radius:2px;padding:12px 14px;font-size:.84rem}.admin-auth-form input:focus,.admin-auth-form textarea:focus,.admin-auth-form select:focus{border-color:var(--clay);outline-offset:0;outline:2px solid #a95f461f}.admin-auth-form input:disabled{background:var(--cream);cursor:not-allowed}.field-hint,.field-error{margin:-3px 0 3px;font-size:.65rem;line-height:1.45}.field-hint{color:var(--ink-soft)}.field-error{color:var(--clay)}.form-message{margin:8px 0 0;padding:12px 14px;font-size:.72rem;line-height:1.5}.form-message.is-error{color:#7d3b29;background:#a95f461a}.admin-submit{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:51px;margin-top:14px;padding:0 22px;font-size:.8rem;font-weight:700;display:inline-flex}.admin-submit:hover:not(:disabled){background:var(--clay)}.admin-submit:disabled{opacity:.5;cursor:not-allowed}.admin-layout{background:#f6f1e9;grid-template-columns:250px minmax(0,1fr);min-height:100vh;display:grid}.admin-sidebar{background:var(--ink);color:#f7eee4;border-right:1px solid #ffffff14;flex-direction:column;height:100vh;padding:22px 20px;display:flex;position:sticky;top:0}.admin-brand{border-bottom:1px solid #ffffff1a;align-items:center;gap:4px;padding-bottom:24px;display:flex}.admin-brand img{filter:brightness(1.45)saturate(.55);width:92px;height:auto;margin:-20px 0}.admin-brand span{color:#a99a91;letter-spacing:.11em;text-transform:uppercase;font-size:.61rem;font-weight:700}.admin-nav{gap:6px;margin-top:28px;display:grid}.admin-nav a{color:#c9bbb1;border-radius:3px;align-items:center;gap:12px;min-height:43px;padding:0 13px;font-size:.76rem;transition:background .16s,color .16s;display:flex}.admin-nav a:hover{color:#fff;background:#ffffff14}.admin-account{border-top:1px solid #ffffff1a;margin-top:auto;padding-top:20px}.admin-account>div{gap:4px;margin-bottom:15px;display:grid}.admin-account strong{font-size:.73rem}.admin-account span{color:#8f8077;text-overflow:ellipsis;font-size:.63rem;overflow:hidden}.admin-account button{color:#b8a79d;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0;font-size:.68rem;display:inline-flex}.admin-account button:hover{color:#fff}.admin-workspace{min-width:0;padding:48px clamp(28px,5vw,72px) 80px}.admin-page-header{justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:38px;display:flex}.admin-page-header .kicker{margin-bottom:13px}.admin-page-header h1{font-family:var(--display);letter-spacing:-.045em;margin:0;font-size:clamp(3.3rem,5.2vw,5.4rem);font-weight:400;line-height:.98}.admin-page-header>div>p:not(.kicker){max-width:650px;color:var(--ink-soft);margin:18px 0 0;font-size:.84rem;line-height:1.65}.admin-primary-action,.admin-save-button{background:var(--ink);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:999px;justify-content:center;align-items:center;gap:9px;min-height:48px;padding:0 19px;font-size:.75rem;font-weight:700;display:inline-flex}.admin-primary-action:hover,.admin-save-button:hover:not(:disabled){background:var(--clay)}.admin-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:26px;display:grid}.admin-stats article{border:1px solid var(--line);background:var(--paper);align-items:center;gap:17px;min-height:112px;padding:22px;display:flex}.admin-stats article>svg{color:var(--clay)}.admin-stats article div{gap:3px;display:grid}.admin-stats strong{font-family:var(--display);font-size:1.8rem;font-weight:400}.admin-stats span{color:var(--ink-soft);font-size:.68rem}.admin-products-panel,.admin-form-section{border:1px solid var(--line);background:var(--paper)}.admin-panel-heading{border-bottom:1px solid var(--line);padding:23px 25px}.admin-panel-heading h2,.admin-form-section-heading h2{font-family:var(--display);margin:0;font-size:1.45rem;font-weight:400}.admin-panel-heading p,.admin-form-section-heading p{color:var(--ink-soft);margin:6px 0 0;font-size:.7rem}.admin-table-scroll{overflow-x:auto}.admin-products-table{border-collapse:collapse;width:100%;font-size:.72rem}.admin-products-table th,.admin-products-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:17px 20px}.admin-products-table th{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;font-size:.59rem}.admin-products-table tbody tr:last-child td{border-bottom:0}.admin-products-table td:first-child{min-width:185px}.admin-products-table td:first-child strong,.admin-products-table td:first-child span{display:block}.admin-products-table td:first-child span{color:var(--ink-soft);margin-top:4px;font-size:.62rem}.admin-products-table td:nth-child(4){min-width:210px;color:var(--ink-soft)}.admin-products-table td:last-child a{color:var(--clay);font-weight:700}.admin-status{background:var(--cream);border-radius:999px;padding:6px 9px;font-size:.6rem;font-weight:700;display:inline-flex}.admin-status.is-active{color:#586450;background:#7c887321}.admin-status.is-archived{color:var(--ink-soft);opacity:.7}.admin-products-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:360px;padding:45px 20px;display:flex}.admin-products-empty>span{background:var(--cream);width:54px;height:54px;color:var(--clay);border-radius:50%;place-items:center;margin-bottom:20px;display:grid}.admin-products-empty h3{font-family:var(--display);margin:0;font-size:1.8rem;font-weight:400}.admin-products-empty p{max-width:430px;color:var(--ink-soft);margin:12px 0 22px;font-size:.76rem;line-height:1.6}.admin-products-empty a{color:var(--clay);font-size:.73rem;font-weight:700}.admin-form-header{align-items:flex-start}.admin-form-header .back-link{margin-bottom:36px}.admin-product-form{gap:16px;display:grid}.admin-form-section{grid-template-columns:240px minmax(0,1fr);gap:40px;padding:30px;display:grid}.admin-form-section-heading{align-items:flex-start;gap:14px;display:flex}.admin-form-section-heading>span{color:var(--sand-deep);font-family:var(--display);font-size:.78rem}.admin-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.admin-field{flex-direction:column;gap:8px;min-width:0;display:flex}.admin-field.is-wide,.admin-checkbox.is-wide{grid-column:1/-1}.admin-field label{font-size:.69rem;font-weight:700}.admin-field input,.admin-field textarea,.admin-field select{border:1px solid var(--line);background:var(--paper);width:100%;min-height:47px;color:var(--ink);font:inherit;border-radius:2px;padding:11px 13px;font-size:.78rem}.admin-field textarea{resize:vertical;line-height:1.55}.admin-field input:focus,.admin-field textarea:focus,.admin-field select:focus{border-color:var(--clay);outline-offset:0;outline:2px solid #a95f461c}.admin-field small,.admin-checkbox small{color:var(--ink-soft);font-size:.61rem;line-height:1.45}.admin-field>p{color:var(--clay);margin:0;font-size:.63rem}.admin-input-prefix{border:1px solid var(--line);background:var(--paper);align-items:stretch;min-height:47px;display:flex}.admin-input-prefix>span{border-right:1px solid var(--line);background:var(--cream);color:var(--ink-soft);align-items:center;padding:0 11px;font-size:.7rem;display:flex}.admin-input-prefix input{border:0;outline:0;min-width:0}.admin-input-prefix.is-money>span{font-family:var(--display);font-size:1.05rem}.admin-checkbox{border:1px solid var(--line);cursor:pointer;align-items:flex-start;gap:11px;padding:15px;display:flex}.admin-checkbox input{width:17px;height:17px;accent-color:var(--clay);margin:2px 0 0}.admin-checkbox span{gap:4px;display:grid}.admin-checkbox strong{font-size:.72rem}.admin-form-footer{border:1px solid var(--line);background:var(--paper);justify-content:space-between;align-items:center;gap:30px;padding:24px 28px;display:flex}.admin-form-footer>div:first-child strong{font-family:var(--display);font-size:1.05rem;font-weight:400}.admin-form-footer>div:first-child p{color:var(--ink-soft);margin:5px 0 0;font-size:.66rem}.admin-form-footer>div:last-child{align-items:center;gap:14px;display:flex}.admin-form-footer .form-message{max-width:300px;margin:0}.admin-save-button:disabled{opacity:.5;cursor:not-allowed}@media (max-width:980px){.site-header{grid-template-columns:1fr auto}.desktop-nav{display:none}.hero,.customizer-grid{grid-template-columns:1fr}.hero{gap:55px}.hero-brand-card{min-height:430px}.section-heading{grid-template-columns:1fr;gap:25px}.customizer-grid{gap:65px}.closing-content{flex-direction:column;justify-content:center;align-items:flex-start;gap:38px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-heading>div,.product-detail-grid{grid-template-columns:1fr}.catalog-heading>div{gap:24px}.product-detail-grid{gap:48px}.designer-intro{grid-template-columns:1fr auto}.designer-intro-copy{grid-area:1/1/auto/-1}.designer-back,.designer-progress{grid-row:2}.designer-workbench{grid-template-columns:1fr}.designer-preview-panel{min-height:auto;position:relative;top:auto}.admin-auth-page{grid-template-columns:1fr}.admin-auth-brand{min-height:310px;padding:30px 34px 42px}.admin-auth-brand>div p{max-width:520px}.admin-auth-panel{min-height:auto}.admin-layout{grid-template-columns:220px minmax(0,1fr)}.admin-workspace{padding-left:30px;padding-right:30px}.admin-page-header{flex-direction:column;align-items:flex-start;gap:24px}.admin-form-section{grid-template-columns:1fr;gap:28px}}@media (max-width:760px){.section-shell{width:min(100% - 30px,1180px)}.announcement{font-size:.56rem}.site-header{min-height:72px;padding:8px 15px}.brand,.brand img{width:92px}.header-actions button,.header-actions a{width:37px;height:37px}.hero{min-height:auto;padding-top:58px;padding-bottom:75px}.hero h1{font-size:clamp(3.15rem,15vw,4.6rem)}.hero-notes{flex-direction:column;gap:18px}.hero-brand-card{border-radius:3px 34px;min-height:390px;padding:20px}.hero-card-topline span:last-child{display:none}.hero-card-footer{flex-wrap:wrap}.collections,.process{padding-top:85px;padding-bottom:90px}.section-heading h2,.customizer-copy h2,.closing-content h2{font-size:clamp(2.55rem,12vw,3.7rem)}.collection-grid,.process-grid,.footer-grid{grid-template-columns:1fr}.collection-card{border-right:0;border-bottom:1px solid var(--line);min-height:360px}.collection-card:last-child{border-bottom:0}.customizer-grid{padding-top:80px;padding-bottom:85px}.preview-canvas{min-height:285px;padding:26px}.preview-controls{flex-direction:column;align-items:flex-start}.process-grid{gap:12px}.closing-content{min-height:460px}.footer-grid{gap:35px}.footer-bottom{flex-direction:column;justify-content:center;align-items:flex-start;padding:20px 0}.catalog-heading{padding-top:38px;padding-bottom:40px}.catalog-heading .kicker{margin-top:38px}.catalog-heading h1{font-size:clamp(3rem,14vw,4.6rem)}.catalog-results{padding-top:32px;padding-bottom:85px}.catalog-count{flex-direction:column;align-items:flex-start;gap:7px}.product-grid,.catalog-loading{grid-template-columns:1fr}.catalog-empty{min-height:430px}.product-detail-main{padding-top:32px;padding-bottom:85px}.product-detail-grid{margin-top:28px}.product-detail-copy h1{font-size:clamp(3rem,14vw,4.5rem)}.product-price-row{flex-direction:column;align-items:flex-start}.product-gallery-more{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-auth-brand{min-height:270px;padding:24px 22px 35px}.admin-auth-brand img{width:205px}.admin-auth-brand>div p{margin-top:-12px;font-size:1.72rem}.admin-auth-panel{padding:55px 22px 70px}.admin-layout{grid-template-columns:1fr}.admin-sidebar{height:auto;padding:16px;position:static}.admin-brand{padding-bottom:14px}.admin-nav{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:15px}.admin-nav a{padding:0 10px}.admin-account{justify-content:space-between;align-items:center;gap:18px;margin-top:16px;padding-top:14px;display:flex}.admin-account>div{min-width:0;margin-bottom:0}.admin-workspace{padding:44px 15px 70px}.admin-page-header h1{font-size:clamp(3.1rem,14vw,4.5rem)}.admin-stats{grid-template-columns:1fr}.admin-stats article{min-height:92px}.admin-form-section{padding:22px 18px}.admin-field-grid{grid-template-columns:1fr}.admin-form-footer,.admin-form-footer>div:last-child{flex-direction:column;align-items:stretch}.admin-form-footer .form-message{max-width:none}.keychain-studio{padding-top:25px;padding-bottom:76px}.designer-intro{flex-direction:column;align-items:flex-start;gap:25px;padding:8px 0 28px;display:flex}.designer-intro h1{font-size:clamp(3.1rem,15vw,4.6rem)}.designer-progress{width:100%}.designer-preview-panel{border-radius:3px 28px}.designer-preview-toolbar{padding:12px 15px}.designer-preview-toolbar button{font-size:0}.designer-preview-toolbar button svg{width:17px;height:17px}.keychain-canvas{min-height:470px;padding:38px 15px}.keychain-object{width:min(95%,390px)}.keychain-lettering strong{font-size:clamp(.9rem,5.3vw,1.35rem)}.keychain-lettering svg{width:24px;height:24px}.keychain-canvas:before,.keychain-canvas:after{width:34px;height:34px}.keychain-canvas:before,.canvas-note-left{left:20px}.keychain-canvas:after,.canvas-note-right{right:20px}.keychain-canvas>p{white-space:normal;text-align:center;width:calc(100% - 48px);bottom:19px}.designer-controls{border-radius:3px 24px;padding:27px 20px}.designer-controls-heading{flex-direction:column;gap:17px}.designer-symbols{grid-template-columns:repeat(2,1fr)}.designer-typefaces button{flex-direction:column;gap:3px}.designer-order-row{align-items:flex-end}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
