:root{--ink:#121212;--paper:#f4f1e9;--acid:#d8ff38;--red:#e8482b;--line:#cec9bd;--muted:#625f58;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}body.drawer-open{overflow:hidden}button,input{font:inherit}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:100;background:var(--acid);color:var(--ink);padding:.8rem}.skip-link:focus{top:1rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.nav{height:72px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(244,241,233,.96);backdrop-filter:blur(10px);z-index:20}.wordmark{font-weight:900;letter-spacing:-.04em;font-size:1.25rem;color:inherit;text-decoration:none}.wordmark span{color:var(--red)}.nav a,.nav button{color:inherit;text-decoration:none}.nav nav{display:flex;align-items:center;gap:1.7rem;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em}.bag{border:0;background:var(--ink);color:white!important;padding:.8rem 1rem;cursor:pointer}.hero{min-height:76vh;padding:6vw 7vw;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:6vw}.eyebrow{font-size:.7rem;font-weight:800;letter-spacing:.17em}.hero h1,.catalogue h2,.how h2,.policies h2,.contact h2{font-size:clamp(3.7rem,8vw,8rem);line-height:.84;letter-spacing:-.075em;margin:.35em 0}.hero h1 em{font-family:Georgia,serif;font-weight:400}.lede{max-width:600px;font-size:1.15rem;line-height:1.55}.cta{display:inline-block;background:var(--acid);color:var(--ink);text-decoration:none;font-weight:800;text-transform:uppercase;letter-spacing:.07em;padding:1.1rem 1.4rem;border:1px solid var(--ink);margin-top:1.2rem;cursor:pointer}.cta:disabled,.secondary:disabled{opacity:.45;cursor:not-allowed}.hero-art{aspect-ratio:4/5;background:var(--ink);color:white;display:flex;flex-direction:column;justify-content:space-between;padding:2rem;transform:rotate(2deg);box-shadow:16px 16px 0 var(--red)}.hero-art span{font-size:clamp(4rem,8vw,7rem);font-weight:900;color:var(--acid);letter-spacing:-.1em}.hero-art strong{font-size:clamp(2rem,4vw,4.2rem);line-height:.87;letter-spacing:-.06em}.hero-art small{letter-spacing:.16em}.trust-strip{background:var(--acid);padding:1rem 4vw;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.trust-strip p{margin:0}.manifesto{background:var(--ink);color:white;padding:3rem 6vw;display:flex;justify-content:space-between;gap:2rem;font-family:Georgia,serif;font-size:1.2rem;font-style:italic}.catalogue{padding:8rem 4vw}.section-head{display:flex;align-items:end;justify-content:space-between;border-bottom:1px solid var(--ink)}.section-head h2{font-size:clamp(3rem,6vw,6rem);margin:.2em 0}.toolbar{display:flex;justify-content:space-between;gap:1rem;padding:1.5rem 0 2.5rem}.search{border:1px solid var(--ink);padding:.8rem;display:flex;gap:.5rem;min-width:320px}.search input{border:0;outline:0;background:none;width:100%}.filters{display:flex;gap:.5rem;flex-wrap:wrap}.filters button{border:1px solid var(--ink);background:none;padding:.8rem 1rem;text-transform:uppercase;font-size:.7rem;cursor:pointer}.filters button.active{background:var(--ink);color:white}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.card{background:var(--paper);min-width:0}.card-button{display:block;width:100%;height:100%;border:0;background:transparent;text-align:left;padding:1rem;color:inherit;cursor:pointer}.card-button:focus-visible,.filters button:focus-visible,.option:focus-visible,.gallery-thumbs button:focus-visible,.cta:focus-visible,.secondary:focus-visible,.nav a:focus-visible,.nav button:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:3px}.visual{aspect-ratio:4/5;background:#ded9cf;overflow:hidden;position:relative}.visual img{width:100%;height:100%;display:block;object-fit:cover}.image-pending{height:100%;background:var(--ink);color:white;padding:1rem;display:flex;flex-direction:column;justify-content:space-between}.image-pending b{font-size:4rem;color:var(--acid)}.image-pending span{font-size:.65rem;letter-spacing:.15em}.card-meta{padding:.9rem 0}.card-meta h3{margin:.25rem 0;font-size:1rem}.card-meta p{margin:.2rem 0;color:var(--muted);font-size:.75rem;line-height:1.35}.how{padding:8rem 7vw;background:var(--red)}.how h2{font-size:clamp(3rem,7vw,7rem)}.steps{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink)}.steps article{padding:2rem;border-right:1px solid var(--ink)}.steps b{font-size:3rem}.steps p{line-height:1.5}.fine{font-size:.75rem;opacity:.75;line-height:1.5}.policies{padding:8rem 7vw}.policy-intro{max-width:900px}.policies h2{font-size:clamp(3rem,7vw,6rem)}.policy-intro>p:last-child{max-width:700px;line-height:1.6}.policy-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:3rem}.policy-grid details{background:var(--paper);padding:1.5rem}.policy-grid summary{font-weight:800;cursor:pointer}.policy-grid p{line-height:1.6;color:var(--muted)}.policy-grid a{color:inherit}.policy-note{font-size:.75rem;margin-top:1.5rem}.contact{padding:7rem 7vw;background:var(--ink);color:white;text-align:center}.contact h2{font-size:clamp(3rem,7vw,7rem)}.whatsapp{background:#25d366}.contact .cta{color:var(--ink)}footer{background:var(--ink);color:white;padding:2rem 4vw;display:flex;justify-content:space-between;gap:1rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;border-top:1px solid #333}footer a{color:white}dialog{width:min(1040px,94vw);max-height:92vh;border:0;padding:0;background:var(--paper);box-shadow:0 20px 80px #0008}dialog::backdrop{background:#000b}.close{position:absolute;right:1rem;top:1rem;border:0;background:var(--ink);color:white;width:44px;height:44px;font-size:1.5rem;z-index:2;cursor:pointer}.detail{display:grid;grid-template-columns:1.05fr .95fr}.detail-copy{padding:4rem 2.5rem;overflow:auto}.detail-copy h2{font-size:clamp(2.4rem,4vw,3.5rem);line-height:.92;letter-spacing:-.06em;margin:.3em 0}.detail-copy>p{line-height:1.55}.detail-copy fieldset{border:0;padding:0;margin:1.5rem 0}.detail-copy legend{font-weight:800;margin-bottom:.7rem}.option-group{display:flex;gap:.45rem;flex-wrap:wrap}.option{border:1px solid var(--ink);background:transparent;padding:.65rem .8rem;cursor:pointer}.option.selected{background:var(--ink);color:white}.selection-error{color:#a21d0b;font-weight:700}.gallery{background:#ded9cf;min-height:650px;display:grid;grid-template-rows:minmax(0,1fr) auto}.gallery-main{width:100%;height:100%;min-height:560px;object-fit:contain;background:white}.gallery-thumbs{display:flex;gap:.5rem;padding:.7rem;overflow:auto}.gallery-thumbs button{padding:0;border:2px solid transparent;background:none;flex:0 0 64px;height:76px;cursor:pointer}.gallery-thumbs img{width:100%;height:100%;object-fit:cover}.detail-fallback{min-height:650px}.shortlist{position:fixed;right:-480px;top:0;width:min(480px,100vw);height:100vh;background:var(--paper);z-index:40;transition:.25s;padding:1.5rem;box-shadow:-20px 0 60px #0003;overflow:auto}.shortlist.open{right:0}.shortlist-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid}.shortlist-head button{font-size:2rem;border:0;background:none;cursor:pointer}.bag-row{padding:1rem 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:72px 1fr auto;gap:1rem;align-items:start}.bag-thumb{width:72px;height:90px;object-fit:cover;background:#ddd}.bag-thumb.missing{visibility:hidden}.bag-row small{display:block;margin-top:.35rem;line-height:1.5;color:var(--muted)}.bag-row button{border:0;background:none;cursor:pointer}.bag-row .edit{text-decoration:underline;padding:.5rem 0;font-size:.75rem}.bag-row .remove{font-size:1.4rem}.full{width:100%;text-align:center;margin-top:1rem}.secondary{padding:1rem;border:1px solid var(--ink);background:transparent;font-weight:800;text-transform:uppercase;letter-spacing:.06em;cursor:pointer}.empty{padding:2rem 0;color:var(--muted)}@media(max-width:1000px){.grid{grid-template-columns:repeat(3,1fr)}.trust-strip{grid-template-columns:repeat(2,1fr)}}@media(max-width:800px){.hero{grid-template-columns:1fr}.hero-art{max-width:460px}.manifesto{flex-direction:column}.grid{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:1fr}.steps article{border-right:0;border-bottom:1px solid}.toolbar{flex-direction:column}.detail{grid-template-columns:1fr}.gallery{min-height:0}.gallery-main{min-height:420px;max-height:65vh}.detail-copy{padding:2rem 1.5rem}.policy-grid{grid-template-columns:1fr}.nav nav a{display:none}footer{flex-direction:column}}@media(max-width:520px){.grid{grid-template-columns:1fr}.hero{padding:4rem 6vw 5rem}.hero h1{font-size:3.45rem}.hero-art{width:94%;margin:1rem 0 1rem}.nav{padding:0 1rem}.wordmark{font-size:1rem}.nav nav{gap:.5rem}.bag{padding:.7rem}.manifesto{font-size:1rem}.search{min-width:0}.trust-strip{grid-template-columns:1fr}.catalogue,.how,.policies,.contact{padding:5rem 1rem}.section-head{align-items:start}.gallery-main{min-height:360px}.detail-copy h2{font-size:2.4rem}.shortlist{padding:1rem}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
