:root{--ink:#182219;--paper:#f5f1e8;--white:#fffdf8;--green:#1f4d35;--lime:#d7ff67;--terracotta:#d76847;--line:#18221929;--muted:#687069}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--paper);margin:0;font-family:Inter,Avenir,Helvetica Neue,Arial,sans-serif}body.modal-open{overflow:hidden}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}img{max-width:100%;display:block}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;max-width:1440px;height:86px;margin:auto;padding:0 5vw;display:flex}.wordmark{color:var(--ink);letter-spacing:-.04em;font-family:Avenir,Helvetica Neue,Arial,sans-serif;font-size:1.25rem;font-weight:800;text-decoration:none}.wordmark span{color:var(--green);font-weight:600}.language-switch{color:#9a9f9a;align-items:center;gap:8px;font-size:.85rem;display:flex}.language-switch button{cursor:pointer;color:#9a9f9a;background:0 0;border:0;padding:8px 3px;font-weight:700}.language-switch button.active{color:var(--ink)}.important-notice{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;max-width:1440px;margin:0 auto;padding:0 5vw;display:grid}.important-notice>div{grid-template-columns:40px 1fr;align-items:center;gap:15px;padding:22px 28px 22px 0;display:grid}.important-notice>div+div{border-left:1px solid var(--line);padding-left:28px}.notice-icon{width:40px;height:40px;color:var(--green);background:var(--lime);border-radius:50%;place-content:center;font-size:1.15rem;font-weight:800;display:grid}.important-notice p{color:var(--muted);margin:0;font-size:.8rem;line-height:1.5}.important-notice strong{color:var(--ink);margin-bottom:2px;font:700 .88rem Avenir,Helvetica Neue,Arial,sans-serif;display:block}.hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:7vw;max-width:1440px;min-height:650px;margin:auto;padding:74px 5vw 90px;display:grid;overflow:hidden}.hero-copy{z-index:2;max-width:690px;position:relative}.eyebrow{color:var(--terracotta);text-transform:uppercase;letter-spacing:.16em;margin:0 0 18px;font-size:.73rem;font-weight:700}h1,h2,h3{font-family:Avenir,Helvetica Neue,Arial,sans-serif}h1{letter-spacing:-.07em;max-width:760px;margin:0;font-size:clamp(3.2rem,6vw,6.4rem);line-height:.96}.intro{color:#596159;max-width:590px;margin:34px 0 36px;font-size:1.12rem;line-height:1.7}.hero-link{color:var(--ink);border-bottom:2px solid var(--ink);align-items:center;gap:18px;padding-bottom:8px;font-weight:700;text-decoration:none;display:inline-flex}.hero-link span{font-size:1.3rem}.hero-collage{min-height:480px;position:relative}.hero-image{background:#d9d6cb;position:absolute;overflow:hidden;box-shadow:0 30px 60px #1f4d3524}.hero-image img{object-fit:cover;width:100%;height:100%}.hero-image-a{aspect-ratio:.82;width:67%;top:0;right:3%;transform:rotate(3deg)}.hero-image-b{aspect-ratio:.85;border:10px solid var(--white);width:44%;bottom:-3%;left:0;transform:rotate(-6deg)}.hero-stamp{z-index:3;background:var(--lime);text-align:center;border-radius:50%;place-content:center;width:118px;height:118px;font-family:Avenir,Helvetica Neue,Arial,sans-serif;font-size:2rem;font-weight:800;display:grid;position:absolute;bottom:4%;right:-10px;transform:rotate(-8deg)}.hero-stamp small{text-transform:uppercase;letter-spacing:.08em;font:600 .65rem Inter,Avenir,Helvetica Neue,Arial,sans-serif;display:block}.how{background:var(--green);color:#fff;grid-template-columns:minmax(160px,.55fr) 2fr;align-items:center;padding:28px 5vw;display:grid}.how>p{text-transform:uppercase;letter-spacing:.13em;opacity:.74;font-size:.75rem;font-weight:700}.how ol{grid-template-columns:repeat(3,1fr);margin:0;padding:0;list-style:none;display:grid}.how li{border-left:1px solid #fff3;align-items:center;gap:16px;padding:8px 24px;font-weight:600;display:flex}.how li span{color:var(--lime);letter-spacing:.1em;font-size:.7rem}.catalogue{max-width:1440px;margin:auto;padding:110px 5vw 130px}.catalogue-heading{justify-content:space-between;align-items:end;gap:32px;display:flex}.catalogue h2{letter-spacing:-.055em;margin:0;font-size:clamp(2.5rem,4vw,4.5rem);line-height:1}.search{border-bottom:1px solid var(--ink);align-items:center;gap:12px;min-width:min(360px,100%);padding:11px 4px;display:flex}.search span{font-size:1.5rem}.search input{background:0 0;border:0;outline:0;width:100%}.filter-row{justify-content:space-between;align-items:center;gap:20px;margin:48px 0 34px;display:flex}.filters{flex-wrap:wrap;gap:8px;display:flex}.filters button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:100px;padding:10px 17px;font-size:.88rem;font-weight:600}.filters button.active{color:#fff;background:var(--ink);border-color:var(--ink)}.result-count{color:var(--muted);font-size:.85rem}.item-grid{grid-template-columns:repeat(3,1fr);gap:42px 25px;display:grid}.item-card{min-width:0}.card-image{aspect-ratio:.86;background:#e2ded4;position:relative;overflow:hidden}.card-image>img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.item-card:hover .card-image>img{transform:scale(1.025)}.price-badge{color:var(--green);background:var(--lime);text-transform:uppercase;letter-spacing:.06em;border-radius:4px;padding:8px 12px;font-size:.72rem;font-weight:800;position:absolute;top:14px;left:14px}.price-badge.paid{color:#fff;background:var(--terracotta)}.photo-total{color:#fff;background:#182219c7;border-radius:4px;padding:6px 9px;font-size:.72rem;position:absolute;bottom:12px;right:12px}.card-body{padding:19px 2px 0}.item-code{color:var(--terracotta);letter-spacing:.08em;margin:0 0 7px;font-size:.68rem;font-weight:700}.card-body h3{letter-spacing:-.025em;margin:0;font-size:1.23rem}.card-meta,.card-condition{color:var(--muted);margin:8px 0 0;font-size:.86rem}.card-condition{min-height:21px}.card-body button{border:1px solid var(--ink);cursor:pointer;background:0 0;justify-content:space-between;align-items:center;width:100%;min-height:45px;margin-top:18px;padding:10px 14px;font-weight:700;transition:all .2s;display:flex}.card-body button:hover{color:#fff;background:var(--ink)}.item-card.is-reserved .card-image{filter:grayscale(.5);opacity:.68}.item-card.is-reserved .card-body button{color:#737973;border-color:var(--line);cursor:not-allowed}.item-card.is-selected .card-image{outline:5px solid var(--lime);outline-offset:-5px}.card-body button.selected-button{color:var(--green);background:var(--lime);border-color:var(--lime)}.card-body button.selected-button:hover{color:var(--green);background:#c8f44e}.empty{text-align:center;color:var(--muted);padding:80px 20px}.selection-bar{z-index:80;color:#fff;background:var(--ink);align-items:center;gap:16px;width:min(680px,100% - 32px);min-height:72px;padding:10px 11px 10px 16px;display:flex;position:fixed;bottom:22px;left:50%;transform:translate(-50%);box-shadow:0 18px 55px #00000047}.selection-thumbs{display:flex}.selection-thumbs img{object-fit:cover;border:2px solid var(--ink);width:42px;height:50px;margin-left:-9px}.selection-thumbs img:first-child{margin-left:0}.selection-bar strong{font-size:.9rem}.selection-bar>button{min-height:48px;color:var(--green);background:var(--lime);cursor:pointer;border:0;align-items:center;gap:20px;margin-left:auto;padding:0 20px;font-weight:800;display:flex}footer{background:var(--ink);color:#fff;text-align:center;padding:75px 5vw}.footer-mark{border:1px solid #fff6;border-radius:50%;place-content:center;width:54px;height:54px;margin:auto auto 20px;font:800 1.1rem Avenir,Helvetica Neue,Arial,sans-serif;display:grid}footer p{font:600 clamp(1.3rem,2.5vw,2rem) Avenir,Helvetica Neue,Arial,sans-serif}footer small{color:#ffffff8c}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0d160fc7;place-items:center;padding:4vh 4vw;display:grid;position:fixed;inset:0}.modal{background:var(--white);grid-template-columns:.9fr 1.1fr;width:min(1050px,100%);max-height:92vh;display:grid;position:relative;overflow:auto;box-shadow:0 30px 100px #0000004d}.multi-booking-modal{grid-template-columns:1fr;width:min(720px,100%)}.multi-booking-modal .modal-content{padding:48px 52px 55px}.multi-booking-modal .modal-content h2{margin-bottom:22px}.booking-selection{border-top:1px solid var(--line);max-height:280px;overflow-y:auto}.booking-item{border-bottom:1px solid var(--line);grid-template-columns:64px 1fr 34px;align-items:center;gap:14px;padding:10px 0;display:grid}.booking-item>img{object-fit:cover;width:64px;height:74px}.booking-item>div{gap:3px;min-width:0;display:grid}.booking-item small{color:var(--terracotta);font-weight:700}.booking-item strong{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.booking-item span{color:var(--green);font-size:.8rem;font-weight:700}.booking-item>button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:50%;width:32px;height:32px;font-size:1.1rem}.modal-close{z-index:3;background:var(--white);cursor:pointer;border:0;border-radius:50%;width:38px;height:38px;font-size:1.5rem;position:absolute;top:12px;right:14px}.gallery{background:#e5e1d6;min-width:0}.gallery-main{height:100%;min-height:620px;position:relative}.gallery-main>img{object-fit:cover;width:100%;height:100%}.image-count{color:#fff;background:#0000009e;border-radius:3px;padding:6px 9px;font-size:.72rem;position:absolute;bottom:12px;right:12px}.thumbnails{gap:6px;max-width:calc(45% - 24px);display:flex;position:absolute;bottom:12px;left:12px;overflow-x:auto}.thumbnails button{cursor:pointer;background:#fff;border:2px solid #0000;flex:0 0 46px;width:46px;height:58px;padding:0}.thumbnails button.active{border-color:var(--lime)}.thumbnails img{object-fit:cover;width:100%;height:100%}.modal-content{padding:55px 52px}.modal-content h2{letter-spacing:-.055em;margin:0 40px 28px 0;font-size:clamp(2rem,3vw,3.2rem);line-height:1.04}.details{border-top:1px solid var(--line);margin:0}.details div{border-bottom:1px solid var(--line);grid-template-columns:110px 1fr;gap:20px;padding:12px 0;font-size:.87rem;display:grid}.details dt{color:var(--muted)}.details dd{margin:0;font-weight:600}.modal-price{color:var(--green);margin:25px 0;font:800 1.7rem Avenir,Helvetica Neue,Arial,sans-serif}.pickup-reminder{color:#314237;border-left:4px solid var(--lime);background:#eef5dc;gap:5px;padding:14px 16px;font-size:.8rem;line-height:1.45;display:grid}.pickup-reminder strong{color:var(--green)}form{grid-template-columns:1fr 1fr;gap:15px;margin-top:28px;display:grid}form h3{grid-column:1/-1;margin:0 0 3px;font-size:1.2rem}form label{color:var(--muted);gap:6px;font-size:.75rem;font-weight:600;display:grid}form label:nth-of-type(4),form .consent,.form-error,.submit-button{grid-column:1/-1}form input,form textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:0;outline:none;padding:11px 12px}form input:focus,form textarea:focus{border-color:var(--green);box-shadow:0 0 0 2px #1f4d351a}.consent{grid-template-columns:auto 1fr;align-items:start;gap:10px;line-height:1.45;display:flex}.consent input{width:17px;height:17px;margin:2px 0 0}.submit-button,.success-message button{color:#fff;background:var(--green);cursor:pointer;border:0;min-height:49px;font-weight:700}.submit-button:disabled{opacity:.65}.form-error{color:#a93428;margin:0;font-size:.8rem;line-height:1.4}.honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.success-message{text-align:center;background:#edf6df;margin-top:38px;padding:35px 25px}.success-message>span{width:48px;height:48px;color:var(--green);background:var(--lime);border-radius:50%;place-content:center;margin:auto;font-size:1.3rem;font-weight:800;display:grid}.success-message h3{margin:17px 0 8px;font-size:1.3rem}.success-message p{color:var(--muted);margin:0 auto 22px;line-height:1.55}.success-message button{padding:0 30px}@media (width<=900px){.hero{grid-template-columns:1fr;gap:50px;padding-top:55px}.hero-collage{width:100%;max-width:610px;min-height:520px}.how{grid-template-columns:1fr}.how ol{margin-top:12px}.item-grid{grid-template-columns:repeat(2,1fr)}.modal{grid-template-columns:1fr}.gallery-main{min-height:52vh;max-height:620px}.thumbnails{max-width:calc(100% - 24px)}}@media (width<=620px){.site-header{height:70px}.important-notice{grid-template-columns:1fr;padding:0 6vw}.important-notice>div{padding:18px 0}.important-notice>div+div{border-left:0;border-top:1px solid var(--line);padding-left:0}.hero{min-height:0;padding:48px 6vw 70px}h1{font-size:clamp(3rem,14vw,4.7rem)}.intro{font-size:1rem}.hero-collage{min-height:400px}.hero-stamp{width:95px;height:95px;right:0}.how{padding:25px 6vw}.how ol{grid-template-columns:1fr}.how li{border-top:1px solid #fff3;border-left:0;padding:13px 0}.catalogue{padding:80px 6vw 90px}.catalogue-heading{flex-direction:column;align-items:start}.search{width:100%}.filter-row{flex-direction:column;align-items:start;margin-top:32px}.item-grid{grid-template-columns:1fr;gap:42px}.card-image{aspect-ratio:.9}.selection-bar{gap:10px;bottom:10px}.selection-thumbs img{width:34px;height:42px}.selection-bar>button{gap:10px;padding:0 14px;font-size:.8rem}.modal-backdrop{padding:0}.modal{width:100%;height:100vh;max-height:100vh}.gallery-main{min-height:54vh}.modal-content,.multi-booking-modal .modal-content{padding:35px 6vw 50px}form{grid-template-columns:1fr}form label,form label:nth-of-type(4),form .consent,.form-error,.submit-button{grid-column:1}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}.manage{max-width:1100px;min-height:100vh;margin:auto;padding:70px 5vw 120px}.manage-back{color:var(--ink);margin-bottom:60px;font-weight:700;text-decoration:none;display:inline-block}.manage h1{letter-spacing:-.07em;margin:0 0 35px;font-size:clamp(3rem,7vw,6rem)}.manage-login{grid-template-columns:1fr;max-width:480px;display:grid}.manage-login label,.manage-login .form-error,.manage-login .submit-button{grid-column:1}.manage-summary{border-top:1px solid var(--line);border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:18px 0;display:flex}.manage-summary strong{color:var(--green);font-size:1.4rem}.manage-summary button{border:1px solid var(--line);cursor:pointer;background:0 0;margin-left:auto;padding:8px 13px}.reservation-list{background:var(--line);gap:1px;margin-top:28px;display:grid}.reservation-list article{background:var(--white);grid-template-columns:110px 1fr auto;align-items:center;gap:24px;padding:18px;display:grid}.reservation-list img{object-fit:cover;width:110px;height:130px}.reservation-list h2{margin:0 0 8px;font-size:1.25rem}.reservation-list p{color:var(--muted);margin:4px 0}.reservation-list a{color:var(--green)}.reservation-list blockquote{border-left:2px solid var(--lime);color:var(--muted);margin:12px 0;padding-left:12px}.reservation-list small{color:var(--muted)}.reservation-list>article>button{color:#8b3d30;cursor:pointer;background:0 0;border:1px solid #ae6657;padding:9px 13px}@media (width<=620px){.manage{padding-top:40px}.reservation-list article{grid-template-columns:74px 1fr;gap:14px}.reservation-list img{width:74px;height:92px}.reservation-list>article>button{grid-column:1/-1}}
