:root{--ink:#244e43;--cream:#fffaf0;--rose:#a45365;--line:#d9dfd1;--gold:#f3d979;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--cream)}*{box-sizing:border-box}body{margin:0}button,input,a{-webkit-tap-highlight-color:transparent}button,a,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--rose);outline-offset:4px}[hidden]{display:none!important}.app-header{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:1060px;margin:auto;padding:18px 20px;border-bottom:1px solid var(--line)}.app-brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-size:13px;line-height:1.4}.app-brand strong{display:block;font:700 24px Georgia,serif}.app-brand img{border-radius:12px}.outline{border:1px solid var(--ink);border-radius:30px;background:transparent;color:var(--ink);padding:10px 14px;min-height:44px}.app-intro{max-width:1060px;margin:auto;padding:36px 20px 22px;background:radial-gradient(ellipse at 85% 40%,#f5dfb4 0,transparent 48%)}.eyebrow{font-size:10px;font-weight:800;letter-spacing:2px}h1{font:700 clamp(36px,7vw,60px)/1.08 Georgia,serif;letter-spacing:-1px;margin:15px 0}h1 em{color:var(--rose)}.app-intro>p:not(.eyebrow){max-width:440px;line-height:1.6}.small{font-size:12px;line-height:1.6;opacity:.85}.catalog{max-width:1060px;margin:auto;padding:10px 20px 20px}.search-row label{display:block;font-weight:700;font-size:13px;margin:0 0 8px}.search-row input{width:100%;border:1px solid var(--line);border-radius:14px;padding:15px;background:#fff;color:var(--ink);min-height:48px}.chips{display:flex;gap:8px;overflow:auto;padding:14px 0}.chips button{flex-shrink:0;border:1px solid var(--line);border-radius:30px;padding:11px 15px;background:#fff;color:var(--ink);font-size:13px;min-height:44px}.chips button[aria-pressed=true]{background:var(--ink);color:#fff}.results-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.results-row h2{font:700 25px Georgia,serif}.results-row span{font-size:12px}.app-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}.app-card{min-width:0}.art-wrap{position:relative;border-radius:16px;background:#eee8dc;overflow:hidden;aspect-ratio:4/5}.art-open{padding:0;border:0;background:none;width:100%;height:100%;display:block}.art-open img{width:100%;height:100%;object-fit:contain;display:block}.heart{position:absolute;right:8px;top:8px;border:1px solid #ddd;background:#fffdf4ed;border-radius:50%;height:44px;width:44px;font-size:22px;color:var(--ink)}.heart[aria-pressed=true]{color:var(--rose)}.app-card h3{font:700 19px/1.25 Georgia,serif;margin:12px 0 7px}.app-card p{font-size:12px;line-height:1.5;margin:7px 0}.price{font-weight:800;font-size:15px}.primary,.buy-button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:10px;background:var(--ink);color:#fff;text-decoration:none;padding:12px 14px;font-weight:700;font-size:13px;min-height:44px}.buy-button{width:100%;margin-top:8px}.buy-button:disabled{background:#e4e8df;color:#526459;cursor:default}.detail-button{background:transparent;border:0;color:var(--ink);padding:10px 0;text-decoration:underline;min-height:44px;font-size:12px}.app-foot{max-width:600px;margin:35px auto 0;text-align:center;padding:28px 22px 110px;border-top:1px solid var(--line)}.app-foot>p:first-of-type{font:italic 22px Georgia,serif}.app-nav{position:fixed;bottom:0;left:0;right:0;z-index:20;display:flex;justify-content:center;gap:4px;background:#fffdf6f5;border-top:1px solid var(--line);padding:8px 8px calc(8px + env(safe-area-inset-bottom));backdrop-filter:blur(12px)}.app-nav button{border:0;background:none;color:var(--ink);font-size:12px;font-weight:700;padding:12px 10px;min-height:48px;flex:1;max-width:160px;border-radius:10px}.app-nav button[aria-pressed=true]{background:#e8eedf}#saved-count{background:var(--gold);border-radius:20px;padding:2px 5px}.notice{background:#f7e5b4;max-width:1020px;margin:12px auto;padding:14px 20px;border-radius:10px;font-size:13px;line-height:1.5}.notice button{background:transparent;border:0;text-decoration:underline;font-weight:bold;color:var(--ink);min-height:44px}dialog{border:1px solid var(--line);border-radius:20px;background:var(--cream);color:var(--ink);padding:28px 24px;max-width:560px;width:calc(100% - 28px);max-height:85dvh;overflow:auto}dialog::backdrop{background:#142d25a8}dialog h2{font:700 30px/1.15 Georgia,serif;margin:10px 36px 22px 0}dialog h3{font-size:16px;margin:24px 0 8px}dialog p{font-size:14px;line-height:1.65}.close{position:absolute;right:12px;top:10px;border:0;background:none;color:var(--ink);font-size:30px;width:44px;height:44px}.detail-image{max-height:300px;width:100%;object-fit:contain;border-radius:12px;background:#ede8dc}#app-toast{position:fixed;bottom:90px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;padding:12px 20px;border-radius:12px;z-index:100;max-width:90vw;font-size:13px}@media(min-width:700px){.app-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.app-intro{padding-top:50px}.app-header{padding-top:24px}}@media(min-width:1000px){.app-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* Thirty-design collection: related products stay together. */
.collection-browse{display:grid;grid-template-columns:1.2fr 1fr 1.2fr;gap:16px;margin:24px 0 32px}.collection-browse label{display:grid;gap:9px;font:700 13px Arial,sans-serif;color:#284838}.collection-browse input,.collection-browse select{width:100%;min-width:0;box-sizing:border-box;background:#fffdf7;color:#284838;border:1px solid #b8c7b7;border-radius:7px;padding:13px;font:14px Arial,sans-serif}.artwork-group-heading{grid-column:1/-1;border-top:1px solid #d6cfbf;padding-top:30px;margin-top:12px}.artwork-group-heading h3{font:700 30px Georgia,serif!important;margin:8px 0}.artwork-group-heading .eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:2px}.product-grid,.app-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.product-art{height:290px;padding:16px}.product h3{font-size:23px}.product-grid{gap:28px 18px}.five-photo-gallery{height:600px}.five-photo-gallery .gallery-piece{padding:10px}.five-photo-gallery .gallery-piece a{display:block;height:calc(100% - 25px)}.five-photo-gallery .gallery-piece img{height:100%;width:100%;object-fit:contain}.five-photo-gallery .gallery-piece figcaption{font:italic 11px Georgia,serif;white-space:normal}.five-photo-gallery .piece-leaf{left:1%;top:13px;width:31%;height:260px;z-index:1}.five-photo-gallery .piece-flower{left:31%;top:85px;width:39%;height:340px;z-index:3}.five-photo-gallery .piece-butterfly{right:0;bottom:8px;width:32%;height:260px;z-index:4}.five-photo-gallery .piece-autumn{right:0;top:3px;width:29%;height:235px;transform:rotate(9deg);z-index:2;background:#f7dbb7}.five-photo-gallery .piece-hibiscus{left:3%;bottom:0;width:32%;height:250px;transform:rotate(-7deg);z-index:4;background:#f7d6ba}.five-photo-gallery .gallery-seal{left:40%;bottom:25px;width:90px;height:90px;z-index:5}.five-photo-gallery .gallery-piece:hover{transform:rotate(0) translateY(-4px);z-index:6}
@media(max-width:1100px){.product-grid,.app-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-art{height:330px}}
@media(max-width:650px){.collection-browse{grid-template-columns:1fr}.five-photo-gallery{height:470px!important;width:100%}.five-photo-gallery .piece-leaf{height:205px}.five-photo-gallery .piece-flower{height:275px;top:70px}.five-photo-gallery .piece-autumn{height:185px}.five-photo-gallery .piece-butterfly{height:205px}.five-photo-gallery .piece-hibiscus{height:200px}.five-photo-gallery .gallery-piece{padding:6px}.five-photo-gallery .gallery-piece figcaption{font-size:8px}.five-photo-gallery .gallery-seal{height:65px;width:65px;font-size:7px;bottom:20px}.five-photo-gallery .gallery-seal em{font-size:18px}.product-grid,.app-grid{grid-template-columns:1fr}.artwork-group-heading h3{font-size:26px!important}}

/* One artwork opens its own product page. */
.artwork-card-link{display:block;color:inherit;text-decoration:none}.artwork-cover{display:block;width:100%;height:310px;object-fit:contain;background:#f6f1e7;border-radius:12px;margin-bottom:18px}.artwork-card h3{font-weight:700}.artwork-card .button{display:inline-flex;margin-top:12px}.app-card .art-open{display:block}.app-card a.buy-button{text-align:center;text-decoration:none;display:block}.artwork-card:focus-within{outline:3px solid #b07c37;outline-offset:4px}
@media(max-width:600px){.artwork-cover{height:280px}}
