:root{--ink: #17252a;--muted: #5d6663;--paper: #f7f4ed;--paper-deep: #eee8da;--card: #fffdf9;--line: #ded8ca;--teal: #123f43;--teal-soft: #e6efed;--burgundy: #8d2932;--gold: #bd8740;--gold-soft: #f4ead8;--danger: #a33b3d;--success: #2d6a4f;--radius: 14px;--shadow: 0 8px 30px rgba(27, 43, 42, .07);--focus: 3px solid #0f62fe}*{box-sizing:border-box}html{font-size:100%}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--paper);line-height:1.55}img{max-width:100%;height:auto;display:block}a{color:var(--teal)}h1,h2,h3{font-family:Georgia,Times New Roman,serif;line-height:1.2}h1{font-size:clamp(1.6rem,4vw,2.2rem)}:focus-visible{outline:var(--focus);outline-offset:2px;border-radius:4px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}.skip-link{position:absolute;left:-999px;top:0;z-index:100;background:var(--teal);color:#fff;padding:.6rem 1rem}.skip-link:focus{left:0}.site-header{background:var(--teal);color:#e9efe9}.header-inner{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.75rem 1rem;max-width:1200px;margin:0 auto}.brand img{width:180px;height:auto}.menu-toggle{font:inherit;background:none;border:1px solid rgba(244,236,216,.4);color:#f4ecd8;border-radius:8px;padding:.45rem .8rem;cursor:pointer;min-height:44px}.header-search{display:flex;gap:.4rem;flex:1 1 220px;min-width:200px}.header-search input{flex:1;padding:.55rem .8rem;border:1px solid transparent;border-radius:999px;font:inherit;min-height:44px}.header-search .button{background:var(--gold);border-color:var(--gold);color:var(--ink)}.header-actions{display:flex;gap:1rem;align-items:center}.header-actions a{text-decoration:none;font-weight:600;min-height:44px;display:inline-flex;align-items:center;color:#f4ecd8}.basket-link{position:relative}.basket-count{background:var(--gold);color:var(--ink);border-radius:999px;font-size:.75rem;padding:.05rem .45rem;margin-left:.3rem;font-weight:700}.site-nav{display:none;flex-wrap:wrap;gap:.25rem 1.1rem;padding:.5rem 1rem .9rem;max-width:1200px;margin:0 auto}.site-nav.is-open{display:flex;flex-direction:column}.site-nav a{text-decoration:none;font-weight:600;color:#e9efe9;padding:.55rem 0;border-bottom:2px solid transparent;min-height:44px;display:inline-flex;align-items:center}.site-nav a:hover{color:#fff}.site-nav a[aria-current=page]{border-bottom-color:var(--gold);color:#f4ecd8}@media(min-width:800px){.menu-toggle{display:none}.site-nav{display:flex;flex-direction:row}}.page{max-width:1200px;margin:0 auto;padding:1rem}.page.narrow{max-width:720px}.section{margin:2.2rem 0}.section-head{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}.section-intro{color:var(--muted);max-width:60ch}.empty-note{color:var(--muted)}.hint{color:var(--muted);font-size:.92rem}.hero{background:linear-gradient(140deg,var(--teal) 0%,#0c3034 100%);color:#f4ecd8;border-radius:var(--radius);padding:clamp(1.5rem,5vw,3.5rem);margin-top:1rem}.hero h1{color:#f4ecd8;max-width:22ch;margin:0 0 .6rem}.hero p{max-width:52ch;opacity:.9}.hero-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.2rem}.visit-strip{background:var(--gold-soft);border-radius:var(--radius);padding:clamp(1.2rem,4vw,2.5rem);margin:2.5rem 0}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--teal);color:#fff;border:2px solid var(--teal);border-radius:999px;padding:.6rem 1.4rem;font:inherit;font-weight:700;text-decoration:none;cursor:pointer;min-height:44px}.button:hover{background:#0c3034}.button:disabled,.button.is-disabled{opacity:.5;cursor:not-allowed}.button-ghost{background:transparent;color:var(--teal)}.button-ghost:hover{background:var(--teal-soft)}.button-large{padding:.8rem 2rem;font-size:1.05rem}.button-small{padding:.35rem 1rem;min-height:40px}.link-button{background:none;border:none;font:inherit;color:var(--teal);text-decoration:underline;cursor:pointer;padding:.5rem 0;min-height:44px}.grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}@media(min-width:640px){.grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}.card{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);height:100%}.card-link{text-decoration:none;color:inherit;display:block;height:100%}.card-media{position:relative;aspect-ratio:4 / 3;background:var(--paper-deep)}.card-media img{width:100%;height:100%;object-fit:cover}.card-body{padding:.8rem}.card-body h3{margin:0 0 .3rem;font-size:1rem;font-family:inherit;font-weight:600}.card-meta{color:var(--muted);font-size:.85rem;margin:0 0 .4rem}.price{font-weight:700;color:var(--teal)}.price-large{font-size:1.5rem;display:block;margin:.4rem 0 0}.badge{position:absolute;top:.6rem;left:.6rem;background:var(--gold);color:var(--ink);font-size:.75rem;font-weight:700;border-radius:999px;padding:.15rem .6rem}.badge-sold{background:var(--burgundy);color:#fff}.badge-muted{background:var(--paper-deep)}.card-sold img{filter:grayscale(.7);opacity:.85}.fav-button{position:absolute;top:.5rem;right:.5rem;z-index:2;background:#fffdf9eb;border:1px solid var(--line);border-radius:999px;width:44px;height:44px;font-size:1.1rem;color:var(--muted);cursor:pointer}.fav-button.is-active{color:var(--burgundy)}.shop-layout{display:grid;gap:1.5rem}@media(min-width:900px){.shop-layout{grid-template-columns:240px 1fr}}.filters{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1rem;align-self:start;display:grid;gap:.7rem}.filters h2{margin:0;font-size:1.05rem}.filters label,.stack-form label{display:grid;gap:.25rem;font-weight:600;font-size:.92rem}.filters input,.filters select,.stack-form input,.stack-form select,.stack-form textarea{font:inherit;padding:.55rem .7rem;border:1px solid var(--line);border-radius:8px;background:#fff;min-height:44px}.stack-form textarea{min-height:100px}.shop-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.shop-toolbar select{min-height:44px;border-radius:8px;border:1px solid var(--line);font:inherit;padding:.3rem .6rem}.pagination{display:flex;gap:.4rem;margin:1.5rem 0;flex-wrap:wrap}.pagination button{min-width:44px;min-height:44px;border-radius:8px;font:inherit;border:1px solid var(--line);background:var(--card);cursor:pointer}.pagination .is-current{background:var(--teal);color:#fff;border-color:var(--teal)}.breadcrumbs{font-size:.9rem;color:var(--muted);margin-bottom:.8rem}.product-layout{display:grid;gap:1.5rem}@media(min-width:900px){.product-layout{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}}.product-hero{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--radius);border:1px solid var(--line);background:var(--paper-deep)}.thumbs{display:flex;gap:.5rem;margin-top:.6rem;flex-wrap:wrap}.thumbs button{border:2px solid var(--line);background:none;border-radius:8px;padding:2px;cursor:pointer;min-width:44px;min-height:44px}.thumbs .is-current{border-color:var(--teal)}.thumbs img{border-radius:6px}.vat-note{color:var(--muted);font-size:.85rem;margin:.1rem 0 1rem}.availability{font-weight:600;color:var(--success)}.buy-row{display:flex;gap:.8rem;flex-wrap:wrap;margin:.8rem 0}.fulfilment-notes{padding-left:1.2rem;color:var(--muted)}.sold-panel{background:var(--paper-deep);border-left:4px solid var(--burgundy);border-radius:8px;padding:.9rem 1rem;margin:1rem 0}.product-description .lede{font-size:1.05rem}.product-description .notes{color:var(--muted)}.details-table{border-collapse:collapse;width:100%;margin:1.2rem 0}.details-table th,.details-table td{text-align:left;padding:.5rem .6rem .5rem 0;border-bottom:1px solid var(--line);vertical-align:top;font-size:.95rem}.details-table th{color:var(--muted);font-weight:600;width:34%}.tags{display:flex;gap:.5rem;flex-wrap:wrap}.tag{background:var(--teal-soft);border-radius:999px;padding:.25rem .8rem;text-decoration:none;font-size:.88rem;min-height:36px;display:inline-flex;align-items:center}.consignee{background:var(--gold-soft);border-radius:var(--radius);padding:1rem 1.2rem;margin:1.2rem 0}.consignee h2{font-size:1.05rem;margin:0 0 .3rem}.share{display:flex;gap:.9rem;flex-wrap:wrap;margin:1rem 0;align-items:center}.share a,.share button{font:inherit;color:var(--teal);background:none;border:none;text-decoration:underline;cursor:pointer;padding:.4rem 0;min-height:44px}.enquiry{border:1px solid var(--line);border-radius:var(--radius);padding:.4rem 1rem;background:var(--card)}.enquiry summary{font-weight:700;cursor:pointer;padding:.6rem 0;min-height:44px}.stack-form{display:grid;gap:.9rem;margin:1rem 0}.stack-form fieldset{border:1px solid var(--line);border-radius:var(--radius);padding:1rem;display:grid;gap:.7rem}.stack-form legend{font-weight:700;padding:0 .4rem}.check,.radio{display:flex!important;align-items:center;gap:.55rem;font-weight:500!important}.check input,.radio input{width:1.2rem;height:1.2rem;min-height:0}.form-error{color:var(--danger);font-weight:600}.form-success{color:var(--success);font-weight:600}.basket-lines{list-style:none;padding:0;margin:1rem 0;display:grid;gap:.8rem}.basket-line{display:flex;gap:.9rem;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:.7rem;flex-wrap:wrap}.basket-line img{border-radius:8px;object-fit:cover}.basket-line-info{flex:1 1 180px;display:grid;gap:.2rem}.basket-line-controls{display:flex;align-items:center;gap:.9rem}.basket-line-controls input{width:4.5rem;min-height:44px;font:inherit;border:1px solid var(--line);border-radius:8px;padding:.3rem .5rem}.basket-summary{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1.2rem;margin:1rem 0;display:grid;gap:.25rem}.basket-summary .total{font-size:1.15rem}.dev-panel{background:var(--gold-soft);border-radius:var(--radius);padding:1rem 1.2rem;display:grid;gap:.8rem}.order-status{font-size:1.1rem;font-weight:700;color:var(--teal)}.order-list{list-style:none;padding:0;display:grid;gap:.6rem}.order-list li{display:flex;gap:.9rem;align-items:center;flex-wrap:wrap;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:.6rem .9rem}.order-status-chip{background:var(--teal-soft);border-radius:999px;padding:.1rem .7rem;font-size:.85rem}.providers{display:grid;gap:.6rem;margin:1rem 0}.placeholder-banner{background:repeating-linear-gradient(45deg,var(--gold-soft),var(--gold-soft) 12px,#fff8ea 12px,#fff8ea 24px);border:1px dashed var(--gold);border-radius:var(--radius);padding:.9rem 1.1rem;margin:1rem 0}.site-footer{background:var(--teal);color:#e9efe9;margin-top:3rem}.footer-grid{max-width:1200px;margin:0 auto;padding:2rem 1rem;display:grid;gap:1.6rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.site-footer a{color:#f4ecd8;display:block;padding:.25rem 0;text-decoration:none;min-height:34px}.site-footer a:hover{text-decoration:underline}.site-footer h2,.site-footer h3{color:#f4ecd8}.footer-brand{font-size:1.2rem}.newsletter{display:grid;gap:.5rem}.newsletter-row{display:flex;gap:.5rem;flex-wrap:wrap}.newsletter input{flex:1 1 160px;font:inherit;border-radius:999px;border:none;padding:.6rem 1rem;min-height:44px}.newsletter small{opacity:.75}.footer-note{text-align:center;padding:0 1rem 1.5rem;opacity:.75;font-size:.85rem}
