:root{--plum:#34223f;--plum-deep:#291931;--blue:#eef1fb;--blue-dark:#dfe5f5;--yellow:#ffca65;--white:#fff;--ink:#302839;--muted:#665e6e;--line:#cecddd;--serif:Baskerville,"Iowan Old Style","Palatino Linotype",Georgia,serif;--sans:"Avenir Next",Avenir,"Trebuchet MS",Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--blue);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}
button,input,select{font:inherit}
button{cursor:pointer}
button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #c672e3;outline-offset:4px}
a{color:inherit}
.page-width{width:min(100% - 96px,1320px);margin-inline:auto}
.intro-shell{background:var(--plum);color:var(--white);overflow:hidden}
.site-header{height:92px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2}
.wordmark,.footer-logo{font-family:var(--sans);font-size:37px;font-weight:800;letter-spacing:-.095em;line-height:1;text-decoration:none}
.wordmark span,.footer-logo span{color:var(--yellow);font-family:Arial,sans-serif;font-size:22px;vertical-align:top;margin-left:7px;letter-spacing:0}
.header-link{text-decoration:none;font-size:15px;font-weight:600;border-bottom:1px solid rgba(255,255,255,.55);padding:7px 0}
.header-link span{margin-left:8px;font-size:19px}
.hero{min-height:472px;display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:52px;padding-bottom:58px}
.hero-copy{padding:18px 0 8px;position:relative;z-index:1}
.hero-kicker{margin:0 0 23px;font-size:15px;font-weight:600;letter-spacing:.02em;color:#eacfe7}
.hero h1{font-family:var(--serif);font-size:clamp(64px,6vw,91px);font-weight:400;line-height:.94;letter-spacing:-.065em;margin:0;white-space:nowrap}
.hero-description{font-size:18px;line-height:1.55;max-width:440px;color:#eee4ef;margin:25px 0 29px}
.hero-button{background:var(--yellow);color:var(--plum-deep);display:inline-flex;align-items:center;gap:30px;padding:16px 21px;text-decoration:none;font-weight:700;font-size:15px;border-radius:3px}
.hero-button span{font-size:19px;line-height:0}
.hero-art{height:392px;position:relative;display:flex;align-items:center;justify-content:center}
.hero-image-wrap{width:min(100%,530px);height:100%;border-radius:220px 220px 9px 9px;overflow:hidden;position:relative;z-index:1;background:#ba9d8d}
.hero-image-wrap img{width:100%;height:100%;object-fit:cover;object-position:50% 47%;display:block;filter:saturate(.83) contrast(1.04)}
.hero-art:before{content:"";position:absolute;width:280px;height:280px;border:1.5px solid #a988a8;border-radius:50%;right:-117px;top:-89px}
.hero-art:after{content:"";position:absolute;width:130px;height:130px;border:1.5px solid #a988a8;border-radius:50%;left:-84px;bottom:-70px}
.hero-sun{position:absolute;width:122px;height:122px;background:var(--yellow);border-radius:50%;z-index:2;left:-38px;bottom:29px;display:grid;place-items:center;transform:rotate(-14deg)}
.hero-sun:before,.hero-sun:after,.hero-sun span:before,.hero-sun span:after{content:"";position:absolute;background:var(--plum);border-radius:10px;width:4px;height:75px;left:calc(50% - 2px);top:24px}
.hero-sun:after{transform:rotate(45deg)}
.hero-sun:before{transform:rotate(90deg)}
.hero-sun span:before{transform:rotate(135deg)}
.hero-sun span:after{transform:rotate(0deg)}
.catalog{padding-top:82px;padding-bottom:110px;scroll-margin-top:20px}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:37px}
.section-heading h2{font-family:var(--serif);font-size:clamp(42px,4vw,59px);font-weight:400;line-height:1.04;letter-spacing:-.05em;margin:0}
.section-note{font-size:16px;line-height:1.5;max-width:310px;margin:0 0 4px;color:var(--muted)}
.browse-tools{display:grid;grid-template-columns:minmax(220px,1fr) minmax(190px,250px) auto;align-items:end;gap:16px;padding:21px;background:var(--white);border-radius:5px}
.field label{display:block;font-size:13px;font-weight:700;margin-bottom:9px;color:var(--ink)}
.input-wrap,.select-wrap{height:49px;position:relative;background:#f5f6fb;border:1px solid #dbdbe6;border-radius:3px;display:flex;align-items:center}
.input-wrap svg{width:20px;height:20px;margin-left:15px;color:#665a70;flex:none}
.input-wrap input{border:0;outline:0;background:transparent;width:100%;height:100%;padding:0 14px;color:var(--ink);font-size:15px}
.input-wrap input::placeholder{color:#898492}
.select-wrap select{appearance:none;border:0;outline:0;background:transparent;width:100%;height:100%;padding:0 39px 0 15px;color:var(--ink);cursor:pointer;font-size:15px}
.select-wrap svg{width:15px;height:15px;position:absolute;right:15px;pointer-events:none}
.input-wrap:focus-within,.select-wrap:focus-within{outline:3px solid #c672e3;outline-offset:2px}
.input-wrap input:focus-visible,.select-wrap select:focus-visible{outline:none}
.saved-filter{height:49px;border:1px solid #bcb6c9;border-radius:3px;padding:0 18px;background:var(--white);color:var(--plum);display:inline-flex;align-items:center;justify-content:center;gap:9px;font-size:15px;font-weight:700;white-space:nowrap}
.saved-filter svg{width:19px;height:19px}
.saved-filter[aria-pressed=true]{background:var(--plum);border-color:var(--plum);color:var(--white)}
.saved-filter[aria-pressed=true] svg{fill:var(--yellow);stroke:var(--yellow)}
.results-line{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:33px 0 16px;font-size:14px;color:#6c6474}
.results-flourish{font-size:23px;color:#896186;line-height:1}
.item-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:31px;row-gap:56px;padding-top:24px}
.item-card{min-width:0}
.card-open{display:block;width:100%;padding:0;border:0;background:transparent;text-align:left;color:inherit}
.card-image{position:relative;display:block;width:100%;aspect-ratio:1.23;overflow:hidden;background:#d5cfdd;border-radius:3px}
.card-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .3s ease}
.card-open:hover .card-image img{transform:scale(1.035)}
.card-category{position:absolute;left:15px;top:15px;background:var(--white);padding:8px 11px;border-radius:2px;color:var(--plum);font-size:12px;font-weight:800}
.card-saved{position:absolute;right:14px;top:14px;background:var(--yellow);color:var(--plum);padding:7px 10px;border-radius:2px;font-size:12px;font-weight:800}
.card-heading{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding-top:18px}
.card-title{font-family:var(--serif);font-size:29px;line-height:1.1;letter-spacing:-.035em}
.card-price{font-size:17px;font-weight:800;white-space:nowrap}
.card-description{display:block;font-size:15px;line-height:1.5;color:var(--muted);margin:11px 0 14px;min-height:45px}
.card-meta{display:flex;flex-wrap:wrap;gap:7px 16px;border-top:1px solid var(--line);padding-top:13px;font-size:13px;color:#554d5d;font-weight:700}
.card-meta span+span:before{content:"/";font-weight:400;color:#b2aabc;margin-right:16px}
.empty-state{text-align:center;padding:65px 20px 75px}
.empty-state[hidden]{display:none}
.empty-mark{font-size:60px;color:#94709b;line-height:1}
.empty-state h3{font-family:var(--serif);font-weight:400;font-size:38px;letter-spacing:-.04em;margin:10px 0}
.empty-state p{color:var(--muted);font-size:16px;margin:0 0 26px}
.empty-state button{border:0;background:var(--plum);color:var(--white);padding:14px 19px;border-radius:3px;font-weight:700}
.site-footer{background:var(--plum);color:#e8daeb}
.footer-inner{min-height:135px;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:15px}
.footer-logo{color:var(--white);font-size:32px}
.footer-logo span{font-size:18px}
.detail-dialog{border:0;padding:0;border-radius:5px;width:min(970px,calc(100vw - 40px));max-height:min(92vh,900px);background:var(--blue);color:var(--ink);box-shadow:0 20px 80px rgba(15,8,24,.32)}
.detail-dialog::backdrop{background:rgba(20,12,28,.75)}
.detail-layout{display:grid;grid-template-columns:43% 57%;min-height:560px}
.detail-photo{position:relative;background:#d7cede;min-height:100%}
.detail-photo img{width:100%;height:100%;object-fit:cover;display:block;position:absolute;inset:0}
.detail-photo-label{position:absolute;top:19px;left:19px;background:var(--yellow);padding:9px 13px;font-size:13px;font-weight:800;color:var(--plum)}
.detail-body{padding:52px 49px 42px;position:relative;display:flex;flex-direction:column}
.close-detail{position:absolute;right:22px;top:19px;border:1px solid #beb8c7;background:var(--white);color:var(--plum);width:37px;height:37px;border-radius:50%;display:grid;place-items:center;font-size:23px;line-height:1}
.detail-body h2{font-family:var(--serif);font-weight:400;font-size:clamp(40px,4vw,57px);line-height:1.02;letter-spacing:-.055em;margin:0 20px 17px 0}
.detail-description{font-size:17px;line-height:1.62;color:#574e5e;margin:0 0 29px}
.detail-facts{display:grid;grid-template-columns:1fr 1fr;gap:20px 25px;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0}
.detail-facts div{min-width:0}
.detail-facts dt{font-size:12px;font-weight:800;color:#766b7c;margin-bottom:6px}
.detail-facts dd{font-size:16px;line-height:1.3;margin:0;font-weight:700}
.detail-bottom{margin-top:auto;padding-top:27px;display:flex;justify-content:space-between;align-items:center;gap:18px}
.detail-price{font-family:var(--serif);font-size:38px;letter-spacing:-.05em}
.save-item{border:0;background:var(--yellow);color:var(--plum);font-weight:800;font-size:15px;padding:15px 18px;border-radius:3px;display:inline-flex;align-items:center;gap:9px;white-space:nowrap}
.save-item svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8}
.save-item[aria-pressed=true]{background:var(--plum);color:var(--white)}
.save-item[aria-pressed=true] svg{fill:var(--yellow);stroke:var(--yellow)}
@media(max-width:900px){.page-width{width:min(100% - 48px,1320px)}.hero{gap:25px}.hero h1{font-size:clamp(53px,7.3vw,70px)}.hero-art{height:350px}.hero-sun{width:95px;height:95px;left:-23px}.hero-sun:before,.hero-sun:after,.hero-sun span:before{height:60px;top:18px}.item-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading h2{font-size:48px}.detail-body{padding:51px 30px 30px}}
@media(max-width:650px){.page-width{width:calc(100% - 38px)}.site-header{height:72px}.wordmark{font-size:32px}.wordmark span{font-size:19px}.header-link{font-size:13px}.header-link span{font-size:16px}.hero{display:block;min-height:0;padding-bottom:38px}.hero-copy{padding:25px 0 38px}.hero-kicker{font-size:13px;margin-bottom:17px}.hero h1{font-size:clamp(51px,13vw,65px);white-space:normal}.hero-description{font-size:16px;margin:20px 0 24px;max-width:350px}.hero-button{padding:14px 17px;font-size:14px}.hero-art{height:247px;width:90%;margin:0 auto}.hero-image-wrap{border-radius:150px 150px 6px 6px}.hero-sun{width:78px;height:78px;bottom:15px;left:-23px}.hero-sun:before,.hero-sun:after,.hero-sun span:before{height:50px;top:14px;width:3px;left:calc(50% - 1.5px)}.catalog{padding-top:53px;padding-bottom:76px}.section-heading{display:block;margin-bottom:25px}.section-heading h2{font-size:42px}.section-note{margin:13px 0 0;font-size:15px}.browse-tools{grid-template-columns:1fr 1fr;gap:14px;padding:16px}.search-field{grid-column:1 / -1}.field label{font-size:12px}.category-field{min-width:0}.saved-filter{margin-top:21px;padding:0 10px}.saved-filter svg{width:17px}.item-grid{grid-template-columns:1fr;row-gap:40px;padding-top:17px}.card-image{aspect-ratio:1.28}.card-title{font-size:29px}.card-description{min-height:0}.results-line{padding-top:27px}.footer-inner{min-height:110px;font-size:12px}.footer-logo{font-size:29px}.detail-dialog{width:calc(100vw - 18px);max-height:calc(100dvh - 18px)}.detail-layout{display:block;min-height:0}.detail-photo{height:220px}.detail-body{padding:32px 24px 27px}.close-detail{top:-201px;right:15px;z-index:2}.detail-body h2{font-size:45px;margin-bottom:12px}.detail-description{font-size:15px;margin-bottom:21px}.detail-facts{gap:17px 15px;padding:18px 0}.detail-facts dd{font-size:14px}.detail-bottom{padding-top:20px}.detail-price{font-size:32px}.save-item{font-size:13px;padding:12px 13px}}
@media(max-width:390px){.hero-art{width:88%}.section-heading h2{font-size:39px}.detail-photo{height:185px}.close-detail{top:-169px}.detail-body{padding:28px 20px 23px}.detail-body h2{font-size:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card-image img{transition:none}}
