*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-body);margin:0;font-size:16px;line-height:1.6}img{max-width:100%;height:auto;display:block}a{color:var(--accent)}h1,h2,h3{font-family:var(--font-heading);margin:0 0 .5em;font-weight:700;line-height:1.2}h1{font-size:clamp(2rem,4vw,3rem)}h2{font-size:clamp(1.5rem,3vw,2rem)}h3{font-size:1.1rem}.container{max-width:1200px;margin:0 auto;padding:0 16px}.section{padding:48px 0}.muted{color:var(--muted)}.skip-link{position:absolute;left:-9999px}.skip-link:focus{z-index:100;background:var(--surface);padding:8px;top:16px;left:16px}.visually-hidden,.hp{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.button,button{background:var(--accent);color:var(--accent-text);border:1px solid var(--accent);font:inherit;cursor:pointer;border-radius:2px;padding:12px 22px;font-weight:600;text-decoration:none;display:inline-block}.button.secondary{color:var(--accent);background:0 0}.button:hover,button:hover{opacity:.9}.site-header{background:var(--surface);border-bottom:1px solid var(--border)}.announcement{background:var(--accent);color:var(--accent-text);text-align:center;padding:8px 16px;font-size:.85rem;text-decoration:none;display:block}.header-row{justify-content:space-between;align-items:center;gap:16px;padding-top:16px;padding-bottom:8px;display:flex}.logo img{width:auto;height:40px}.cart-link{color:var(--text);font-weight:500;text-decoration:none}.main-nav ul{margin:0;padding:0;list-style:none}.main-nav>ul{justify-content:center;gap:28px;padding-bottom:12px;display:flex}.main-nav a{color:var(--text);font-weight:500;text-decoration:none}.main-nav a:hover{color:var(--accent)}.has-dropdown{position:relative}.dropdown{z-index:50;background:var(--surface);border:1px solid var(--border);min-width:220px;padding:8px 0;display:none;position:absolute;top:100%;left:-16px}.dropdown a{padding:6px 16px;font-weight:400;display:block}.has-dropdown:hover .dropdown,.has-dropdown:focus-within .dropdown{display:block}.mobile-menu{display:none}.mobile-menu summary{cursor:pointer;font-size:1.5rem;list-style:none}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{z-index:50;background:var(--surface);border-bottom:1px solid var(--border);padding:8px 16px 16px;position:absolute;left:0;right:0}.mobile-menu a{color:var(--text);padding:6px 0;font-weight:500;text-decoration:none;display:block}.mobile-menu .mobile-child{color:var(--muted);padding-left:16px;font-weight:400}@media (width<=800px){.main-nav{display:none}.mobile-menu{display:block}.logo img{height:32px}}.hero{grid-template-columns:1fr 1fr;align-items:center;gap:48px;padding:56px 16px;display:grid}.hero .eyebrow{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-size:.8rem}.hero p{font-size:1.1rem}.hero .buttons{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.hero img{box-shadow:0 10px 30px #00000026}@media (width<=800px){.hero{grid-template-columns:1fr;gap:24px;padding:32px 16px}}.intro{text-align:center;max-width:720px}.grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:32px 24px;display:grid}.artwork-card{color:var(--text);text-decoration:none}.artwork-card-image{background:var(--surface);border:1px solid var(--border);aspect-ratio:4/5;justify-content:center;align-items:center;padding:16px;display:flex}.artwork-card-image img{object-fit:contain;max-height:100%}.artwork-card h3{margin:12px 0 2px;font-size:1rem}.artwork-card p{color:var(--muted);margin:0;font-size:.9rem}.tiles{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:24px;display:grid}.tile{aspect-ratio:1;background:var(--accent);color:var(--accent-text);text-decoration:none;display:block;position:relative;overflow:hidden}.tile img{object-fit:cover;opacity:.85;width:100%;height:100%;transition:transform .3s}.tile:hover img{transform:scale(1.04)}.tile span{color:#fff;font-family:var(--font-heading);background:linear-gradient(#0000,#0009);padding:16px;font-size:1.3rem;font-weight:700;position:absolute;bottom:0;left:0;right:0}.featured-artist{grid-template-columns:1fr 1.4fr;align-items:center;gap:40px;display:grid}@media (width<=800px){.featured-artist{grid-template-columns:1fr}}.badges{text-align:center;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:24px;display:grid}.badges h3{margin-bottom:4px}.badges p{color:var(--muted);margin:0;font-size:.9rem}.prose{max-width:760px}.prose table{border-collapse:collapse;width:100%}.prose th,.prose td{text-align:left;border-bottom:1px solid var(--border);padding:8px}.prose blockquote{background:var(--surface);border-left:4px solid var(--accent);margin:0 0 24px;padding:12px 16px}.review-banner{color:#664d03;background:#fff3cd;border:1px solid #ffe69c;margin-bottom:24px;padding:12px 16px;font-weight:600}.artwork-page{grid-template-columns:1.2fr 1fr;gap:48px;display:grid}.artwork-page .image-panel{background:var(--surface);border:1px solid var(--border);padding:24px}.artwork-page dl{grid-template-columns:auto 1fr;gap:4px 16px;font-size:.95rem;display:grid}.artwork-page dt{color:var(--muted)}.artwork-page dd{margin:0}@media (width<=800px){.artwork-page{grid-template-columns:1fr;gap:24px}}input,select,textarea{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:2px;width:100%;padding:10px 12px}.inline-form{gap:8px;max-width:480px;display:flex}.inline-form input[type=email]{flex:1}.stack-form{gap:16px;max-width:520px;margin-top:24px;display:grid}.stack-form label{gap:4px;font-weight:500;display:grid}@media (width<=480px){.inline-form{flex-direction:column}}.site-footer{background:var(--surface);border-top:1px solid var(--border);margin-top:64px}.newsletter{border-bottom:1px solid var(--border);padding-top:40px;padding-bottom:32px}.footer-columns{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:24px;padding-top:32px;padding-bottom:32px;display:grid}.footer-columns ul{margin:0;padding:0;list-style:none}.footer-columns a{color:var(--muted);line-height:2;text-decoration:none}.footer-columns a:hover{color:var(--accent)}.footer-bottom{color:var(--muted);border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;gap:8px 24px;padding-top:16px;padding-bottom:24px;font-size:.85rem;display:flex}.footer-bottom p{margin:0}.footer-bottom a{color:var(--muted);text-transform:capitalize;margin-right:16px}
