:root{--ivory: #f7f2ea;--paper: #fdfbf7;--sand: #efe7db;--line: #e3d9ca;--ink: #23211f;--ink-2: #55504a;--ink-3: #857d73;--lilac: #b5a2c8;--lilac-deep: #6f5a8a;--lilac-wash: #f0eaf5;--sage: #a8b79d;--sage-deep: #5c6d54;--sage-wash: #e9efe4;--charcoal: #2b2a2c;--gold: #c6a76b;--gold-deep: #8d6f34;--gold-wash: #f7efdd;--danger: #a1462f;--serif: "Fraunces", "Iowan Old Style", Georgia, serif;--sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--r-sm: 8px;--r: 14px;--r-lg: 22px;--r-xl: 32px;--shadow-sm: 0 1px 2px rgba(35, 33, 31, .05), 0 2px 8px rgba(35, 33, 31, .04);--shadow: 0 2px 6px rgba(35, 33, 31, .06), 0 12px 32px rgba(35, 33, 31, .07);--shadow-lg: 0 4px 12px rgba(35, 33, 31, .07), 0 28px 64px rgba(35, 33, 31, .11);--wrap: 1200px;--nav-h: 72px}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 20px);-webkit-text-size-adjust:100%}body{margin:0;background:var(--ivory);color:var(--ink);font-family:var(--sans);font-size:16.5px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit}h1,h2,h3,h4{font-family:var(--serif);font-weight:600;line-height:1.12;letter-spacing:-.018em;margin:0;text-wrap:balance}h1{font-size:clamp(2.6rem,6vw,4.5rem)}h2{font-size:clamp(2rem,4vw,3rem)}h3{font-size:1.32rem}p{margin:0 0 1em;text-wrap:pretty}em{font-style:italic;color:var(--lilac-deep)}::selection{background:var(--lilac);color:#fff}:focus-visible{outline:2.5px solid var(--lilac-deep);outline-offset:3px;border-radius:4px}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 clamp(20px,5vw,40px)}.section{padding:clamp(64px,9vw,120px) 0}.section.tight{padding:clamp(44px,6vw,72px) 0}.section.paper{background:var(--paper)}.section.sand{background:var(--sand)}.skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:var(--ivory);padding:12px 20px;z-index:200;border-radius:0 0 var(--r) 0}.skip:focus{left:0}.kicker{font-size:.7rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-deep);display:flex;align-items:center;gap:9px;margin-bottom:16px}.kicker:before{content:"";width:22px;height:1.5px;background:var(--gold);flex:none}.center .kicker{justify-content:center}.sub{color:var(--ink-2);font-size:1.06rem;max-width:60ch}.center{text-align:center}.center .sub{margin-inline:auto}.section-head{margin-bottom:clamp(32px,5vw,56px)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--sans);font-size:.95rem;font-weight:600;padding:14px 26px;border-radius:999px;border:1.5px solid transparent;cursor:pointer;text-decoration:none;transition:transform .16s cubic-bezier(.2,.9,.3,1),box-shadow .16s,background .16s,border-color .16s,color .16s;white-space:nowrap}.btn:hover{transform:translateY(-1.5px)}.btn:active{transform:translateY(0)}.btn.primary{background:var(--ink);color:var(--ivory);box-shadow:var(--shadow-sm)}.btn.primary:hover{background:#100f0e;box-shadow:var(--shadow)}.btn.ghost{background:var(--paper);color:var(--ink);border-color:var(--line)}.btn.ghost:hover{border-color:var(--ink-3)}.btn.gold{background:var(--gold);color:#34280d}.btn.gold:hover{background:#b9974f}.btn.wa{background:#1fa855;color:#fff}.btn.wa:hover{background:#178f46}.btn.block{width:100%}.btn.lg{padding:17px 34px;font-size:1rem}.btn.sm{padding:9px 16px;font-size:.85rem}.btn[disabled],.btn[aria-disabled=true]{opacity:.45;pointer-events:none}.badge{display:inline-flex;align-items:center;gap:6px;font-size:.68rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;padding:5px 11px;border-radius:999px;background:var(--sand);color:var(--ink-2);white-space:nowrap}.badge.lilac{background:var(--lilac-wash);color:var(--lilac-deep)}.badge.sage{background:var(--sage-wash);color:var(--sage-deep)}.badge.gold{background:var(--gold-wash);color:var(--gold-deep)}.nav{position:sticky;top:0;z-index:90;height:var(--nav-h);background:#f7f2eadb;backdrop-filter:saturate(1.6) blur(14px);-webkit-backdrop-filter:saturate(1.6) blur(14px);border-bottom:1px solid transparent;transition:border-color .2s,background .2s}.nav.stuck{border-bottom-color:var(--line)}.nav-in{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.nav-links{display:flex;align-items:center;gap:26px;font-size:.92rem;font-weight:500}.nav-links a{text-decoration:none;color:var(--ink-2);transition:color .15s}.nav-links a:hover{color:var(--ink)}.nav-right{display:flex;align-items:center;gap:12px}.cart-btn{position:relative;display:inline-flex;align-items:center;gap:8px;background:var(--paper);border:1.5px solid var(--line);border-radius:999px;padding:9px 16px 9px 14px;font:600 .88rem var(--sans);color:var(--ink);text-decoration:none;cursor:pointer;transition:border-color .15s}.cart-btn:hover{border-color:var(--ink-3)}.cart-count{min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--lilac-deep);color:#fff;font-size:.7rem;font-weight:700;display:grid;place-items:center}.cart-count[data-empty="1"]{background:var(--line);color:var(--ink-3)}.burger{display:none;background:none;border:1.5px solid var(--line);border-radius:999px;width:42px;height:42px;cursor:pointer;place-items:center}.logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}.logo-mark{flex:none}.logo-word{font-family:var(--serif);font-size:1.4rem;font-weight:600;line-height:.95;letter-spacing:-.02em}.logo-word .le{color:var(--lilac-deep)}.logo-word small{display:block;font-family:var(--sans);font-size:.52rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3);margin-top:3px}.hero{position:relative;padding:clamp(40px,6vw,76px) 0 clamp(56px,7vw,92px);overflow:hidden}.hero:before{content:"";position:absolute;inset:-30% -10% auto;height:90%;background:radial-gradient(50% 60% at 18% 30%,rgba(181,162,200,.3),transparent 70%),radial-gradient(45% 55% at 82% 22%,rgba(168,183,157,.26),transparent 70%),radial-gradient(40% 50% at 55% 70%,rgba(198,167,107,.16),transparent 70%);filter:blur(6px);pointer-events:none}.hero-in{position:relative;display:grid;grid-template-columns:1.02fr 1fr;gap:clamp(32px,5vw,68px);align-items:center}.hero h1{margin-bottom:22px}.hero h1 .u{position:relative;white-space:nowrap}.hero h1 .u:after{content:"";position:absolute;left:1%;right:1%;bottom:-.13em;height:.085em;border-radius:999px;background:var(--gold);opacity:.9}.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0 24px}.hero-facts{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:.88rem;color:var(--ink-2)}.hero-facts b{color:var(--ink);font-weight:600}.hero-art{position:relative;border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--shadow-lg);aspect-ratio:1 / 1;background:var(--sand)}.hero-art img{width:100%;height:100%;object-fit:cover}.hero-tag{position:absolute;left:18px;bottom:18px;right:18px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fdfbf7ed;backdrop-filter:blur(10px);border-radius:var(--r);padding:12px 16px;box-shadow:var(--shadow-sm)}.hero-tag strong{font-family:var(--serif);font-size:1.05rem}.hero-tag span{font-size:.82rem;color:var(--ink-2);display:block}.ticker{background:var(--charcoal);color:#efe9df;padding:13px 0;overflow:hidden;white-space:nowrap}.ticker-track{display:inline-flex;gap:44px;animation:slide 46s linear infinite;font-family:var(--serif);font-size:1rem;font-style:italic}.ticker:hover .ticker-track{animation-play-state:paused}.ticker-track span{display:inline-flex;align-items:center;gap:44px}.ticker-track span:after{content:"✦";color:var(--gold);font-style:normal;font-size:.7rem}@keyframes slide{0%{transform:translate(0)}to{transform:translate(-50%)}}.collection-head{display:flex;align-items:baseline;gap:16px;margin:clamp(40px,5vw,64px) 0 22px}.collection-head:first-of-type{margin-top:0}.collection-head h3{font-size:clamp(1.5rem,2.6vw,2rem);white-space:nowrap}.collection-head .note{font-family:var(--serif);font-style:italic;font-size:.98rem;color:var(--ink-3);white-space:nowrap}.collection-head .rule{flex:1;height:1px;background:var(--line)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(268px,1fr));gap:clamp(18px,2.4vw,28px)}.grid.wide{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.card{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;text-decoration:none;color:inherit;transition:transform .2s cubic-bezier(.2,.9,.3,1),box-shadow .2s,border-color .2s}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:transparent}.card-art{position:relative;aspect-ratio:1 / 1;overflow:hidden;background:var(--sand)}.card-art img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.2,.9,.3,1)}.card:hover .card-art img{transform:scale(1.045)}.card-art .badge{position:absolute;top:12px;left:12px;background:#fdfbf7f0;backdrop-filter:blur(8px)}.card-body{padding:18px 20px 20px;display:flex;flex-direction:column;flex:1;gap:7px}.card-body h3{font-size:1.16rem}.card-body p{font-size:.9rem;color:var(--ink-2);margin:0;flex:1}.price-row{display:flex;align-items:baseline;gap:9px;margin-top:10px;padding-top:13px;border-top:1px solid var(--line)}.price{font-family:var(--serif);font-size:1.3rem;font-weight:600}.price-note{font-size:.76rem;color:var(--ink-3)}.card-cta{margin-left:auto;font-size:.83rem;font-weight:600;color:var(--lilac-deep)}.piece{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(28px,4vw,56px);align-items:start;padding:clamp(28px,4vw,48px) 0 clamp(56px,7vw,88px)}.crumbs{font-size:.85rem;color:var(--ink-3);padding:20px 0 0}.crumbs a{color:var(--ink-2)}.gallery{position:sticky;top:calc(var(--nav-h) + 20px)}.gallery-main{border-radius:var(--r-lg);overflow:hidden;background:var(--sand);aspect-ratio:4 / 3;box-shadow:var(--shadow)}.gallery-main img{width:100%;height:100%;object-fit:cover}.gallery-thumbs{display:flex;gap:10px;margin-top:12px}.gallery-thumbs button{width:74px;height:74px;border-radius:var(--r-sm);overflow:hidden;border:2px solid transparent;padding:0;cursor:pointer;background:var(--sand)}.gallery-thumbs button[aria-current=true]{border-color:var(--lilac-deep)}.gallery-thumbs img{width:100%;height:100%;object-fit:cover}.buybox{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(22px,3vw,30px);box-shadow:var(--shadow-sm)}.buybox .price{font-size:2rem}.spec{width:100%;border-collapse:collapse;font-size:.92rem;margin:26px 0}.spec th,.spec td{text-align:left;padding:11px 0;border-bottom:1px solid var(--line);vertical-align:top}.spec th{font-weight:600;width:34%;color:var(--ink)}.spec td{color:var(--ink-2)}.notice{border-radius:var(--r);padding:14px 17px;font-size:.88rem;margin:16px 0;border:1px solid}.notice.warm{background:var(--gold-wash);border-color:#e7d5ae;color:#5f4a1c}.notice.cool{background:var(--lilac-wash);border-color:#ddd0e8;color:var(--lilac-deep)}.notice.leaf{background:var(--sage-wash);border-color:#d3decb;color:var(--sage-deep)}.field{margin-bottom:15px}.field label,.label{display:block;font-size:.83rem;font-weight:600;margin-bottom:6px}.field .hint{font-size:.76rem;color:var(--ink-3);margin-top:5px}input[type=text],input[type=tel],input[type=email],input[type=number],input[type=file],select,textarea{width:100%;font:inherit;font-size:.94rem;padding:11px 13px;border:1.5px solid var(--line);border-radius:var(--r-sm);background:var(--ivory);color:var(--ink);transition:border-color .15s,background .15s}input:focus,select:focus,textarea:focus{border-color:var(--lilac-deep);background:var(--paper);outline:none}textarea{min-height:96px;resize:vertical}.row-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.row-3{display:grid;grid-template-columns:2fr 1fr;gap:12px}.swatches{display:flex;flex-wrap:wrap;gap:9px}.swatch{position:relative;cursor:pointer}.swatch input{position:absolute;opacity:0;width:0;height:0}.swatch .dot{display:flex;align-items:center;gap:8px;padding:7px 13px 7px 8px;border:1.5px solid var(--line);border-radius:999px;font-size:.83rem;background:var(--ivory);transition:border-color .15s,background .15s}.swatch .dot:before{content:"";width:17px;height:17px;border-radius:999px;background:var(--sw, #ccc);box-shadow:inset 0 0 0 1px #0000001f;flex:none}.swatch input:checked+.dot{border-color:var(--ink);background:var(--paper)}.swatch input:focus-visible+.dot{outline:2.5px solid var(--lilac-deep);outline-offset:2px}.qty{display:inline-flex;align-items:center;border:1.5px solid var(--line);border-radius:999px;overflow:hidden;background:var(--ivory)}.qty button{width:38px;height:40px;border:0;background:none;font-size:1.1rem;cursor:pointer;color:var(--ink-2)}.qty button:hover{background:var(--sand);color:var(--ink)}.qty input{width:44px;border:0;background:none;text-align:center;font:600 .95rem var(--sans);padding:0;-moz-appearance:textfield}.qty input::-webkit-outer-spin-button,.qty input::-webkit-inner-spin-button{-webkit-appearance:none}.pagehead{padding:clamp(36px,5vw,60px) 0 clamp(20px,3vw,32px)}.cart-layout{display:grid;grid-template-columns:1.4fr .9fr;gap:clamp(24px,3.5vw,44px);align-items:start;padding-bottom:clamp(56px,8vw,96px)}.line{display:grid;grid-template-columns:92px 1fr auto;gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}.line:first-child{border-top:1px solid var(--line)}.line-art{width:92px;height:92px;border-radius:var(--r-sm);overflow:hidden;background:var(--sand)}.line-art img{width:100%;height:100%;object-fit:cover}.line-name{font-family:var(--serif);font-size:1.08rem;font-weight:600;margin-bottom:3px}.line-meta{font-size:.83rem;color:var(--ink-2)}.line-meta .personal{color:var(--lilac-deep);font-weight:600}.line-right{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.line-price{font-family:var(--serif);font-size:1.1rem;font-weight:600}.link-danger{background:none;border:0;padding:0;font:500 .8rem var(--sans);color:var(--ink-3);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.link-danger:hover{color:var(--danger)}.summary{position:sticky;top:calc(var(--nav-h) + 20px);background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(22px,3vw,28px);box-shadow:var(--shadow-sm)}.sum-row{display:flex;justify-content:space-between;gap:12px;font-size:.92rem;padding:7px 0;color:var(--ink-2)}.sum-row.total{border-top:1px solid var(--line);margin-top:10px;padding-top:14px;font-family:var(--serif);font-size:1.3rem;font-weight:600;color:var(--ink)}.pay-list{display:grid;gap:10px;margin:6px 0 18px}.pay{position:relative;cursor:pointer;display:block}.pay input{position:absolute;opacity:0;width:0;height:0}.pay .box{display:grid;grid-template-columns:auto 1fr;gap:13px;align-items:start;border:1.5px solid var(--line);border-radius:var(--r);padding:15px 17px;background:var(--ivory);transition:border-color .15s,background .15s}.pay input:checked+.box{border-color:var(--ink);background:var(--paper);box-shadow:var(--shadow-sm)}.pay input:focus-visible+.box{outline:2.5px solid var(--lilac-deep);outline-offset:2px}.pay .tick{width:20px;height:20px;border-radius:999px;border:1.5px solid var(--line);margin-top:2px;display:grid;place-items:center}.pay input:checked+.box .tick{border-color:var(--ink);background:var(--ink)}.pay input:checked+.box .tick:after{content:"";width:7px;height:7px;border-radius:999px;background:var(--paper)}.pay strong{display:block;font-size:.98rem;margin-bottom:2px}.pay span{font-size:.85rem;color:var(--ink-2)}.pay .after{font-size:.78rem;color:var(--ink-3);margin-top:5px;display:block}.empty{text-align:center;padding:clamp(50px,8vw,90px) 20px;border:1px dashed var(--line);border-radius:var(--r-lg);background:var(--paper)}.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:clamp(18px,2.5vw,30px);counter-reset:s}.step{position:relative;padding-top:46px}.step:before{counter-increment:s;content:counter(s);position:absolute;top:0;left:0;width:34px;height:34px;border-radius:999px;background:var(--ink);color:var(--ivory);font-family:var(--serif);font-size:.95rem;font-weight:600;display:grid;place-items:center}.step h3{font-size:1.1rem;margin-bottom:6px}.step p{font-size:.92rem;color:var(--ink-2);margin:0}.faq{max-width:780px;margin:0 auto}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;list-style:none;padding:20px 40px 20px 0;font-family:var(--serif);font-size:1.1rem;font-weight:600;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:6px;top:50%;transform:translateY(-50%);font-size:1.35rem;color:var(--ink-3);font-family:var(--sans);font-weight:300}.faq details[open] summary:after{content:"–"}.faq details p{color:var(--ink-2);font-size:.95rem;padding-right:40px;margin-bottom:20px}.strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.strip figure{margin:0;border-radius:var(--r);overflow:hidden;background:var(--sand);position:relative}.strip img{width:100%;aspect-ratio:1;object-fit:cover}.strip figcaption{position:absolute;left:0;right:0;bottom:0;padding:22px 14px 11px;font-size:.78rem;color:#fff;background:linear-gradient(transparent,#000000b8)}.foot{background:var(--charcoal);color:#d8d2c8;padding:clamp(48px,6vw,72px) 0 32px}.foot a{color:#d8d2c8;text-decoration:none}.foot a:hover{color:#fff}.foot .logo{color:#f3eee5}.foot .logo-word .le{color:var(--lilac)}.foot .logo-word small{color:#9a938a}.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:clamp(24px,4vw,48px);padding-bottom:36px}.foot h4{font-family:var(--sans);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#948d84;margin-bottom:14px}.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:9px;font-size:.9rem}.foot-tag{font-family:var(--serif);font-style:italic;color:#a8a199;margin:14px 0 0;font-size:.95rem}.foot-base{border-top:1px solid #3d3b3d;padding-top:22px;display:flex;flex-wrap:wrap;gap:10px 24px;justify-content:space-between;font-size:.8rem;color:#8e8880}.fab{position:fixed;right:18px;bottom:18px;z-index:80;display:inline-flex;align-items:center;gap:10px;background:#1fa855;color:#fff;border-radius:999px;padding:13px 20px 13px 16px;font:600 .9rem var(--sans);text-decoration:none;box-shadow:0 6px 22px #1fa85557;transition:transform .16s,box-shadow .16s}.fab:hover{transform:translateY(-2px);box-shadow:0 10px 30px #1fa8556b}.js .reveal{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.9,.3,1)}.js .reveal.in{opacity:1;transform:none}.toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%,130%);z-index:120;background:var(--ink);color:var(--ivory);padding:13px 22px;border-radius:999px;font-size:.9rem;font-weight:500;box-shadow:var(--shadow-lg);transition:transform .32s cubic-bezier(.2,.9,.3,1);pointer-events:none;display:flex;align-items:center;gap:10px}.toast.show{transform:translate(-50%)}@media(max-width:940px){.hero-in,.piece,.cart-layout{grid-template-columns:1fr}.gallery,.summary{position:static}.foot-grid{grid-template-columns:1fr 1fr}}@media(max-width:760px){.nav-links{display:none}.nav-links.open{display:flex;position:absolute;top:var(--nav-h);left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:var(--paper);border-bottom:1px solid var(--line);padding:8px 0;box-shadow:var(--shadow)}.nav-links.open a{padding:13px clamp(20px,5vw,40px)}.burger{display:grid}.row-2,.row-3{grid-template-columns:1fr}.line{grid-template-columns:72px 1fr;row-gap:10px}.line-art{width:72px;height:72px}.line-right{grid-column:1 / -1;flex-direction:row;align-items:center;justify-content:space-between}.collection-head{flex-wrap:wrap;gap:6px 14px}.collection-head .rule,.fab span{display:none}.fab{padding:15px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}.card-3d{position:absolute;top:12px;right:12px;display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:999px;background:#2b2a2cdb;backdrop-filter:blur(8px);color:#f3eee5;font-size:.66rem;font-weight:700;letter-spacing:.09em}.illusion-in{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,64px);align-items:center}@media(max-width:940px){.illusion-in{grid-template-columns:1fr}}
