.back-link{font-size:12px;color:#61746a}.back-link:hover{color:#a9664c}
.shop-breadcrumb{width:min(1120px,calc(100% - 64px));margin:31px auto 17px;display:flex;gap:10px;color:#8a968e;font-size:11px}.shop-breadcrumb a{color:#53685a}
.shop-hero{width:min(1120px,calc(100% - 64px));margin:auto;display:grid;grid-template-columns:1.05fr 1fr;gap:55px;align-items:center;padding:13px 0 48px}
.shop-cover{height:350px;width:100%;padding:0;border:0;background:linear-gradient(145deg,#e2eadc,#f0e8dc);display:grid;place-items:center;overflow:hidden;position:relative;cursor:zoom-in}.shop-cover img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.shop-cover:hover img{transform:scale(1.025)}.shop-cover>span{font:italic 110px var(--serif);color:#314c3b52}.shop-cover-placeholder{cursor:default}.zoom-hint{position:absolute;right:14px;bottom:14px;padding:9px 12px;background:#19271fd9;color:#fff;font-size:10px;border-radius:3px;opacity:0;transform:translateY(4px);transition:.2s}.shop-cover:hover .zoom-hint,.shop-cover:focus-visible .zoom-hint{opacity:1;transform:translateY(0)}.zoom-hint b{margin-left:8px;font-size:15px;font-weight:400}
.shop-heading .eyebrow{margin-bottom:13px}.shop-heading h1{font-size:clamp(40px,5vw,62px);letter-spacing:-2.8px;margin-bottom:15px}.shop-location{color:#728078;font-size:12px;line-height:1.6}.shop-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:23px}
.button-dark{display:inline-flex;gap:16px;align-items:center;padding:14px 17px;background:var(--green);color:white;border-radius:3px;font-size:11px;font-weight:700}.button-dark:hover{background:#19372c}.shop-actions .button-outline{padding:13px 15px}
.shop-content{width:min(1120px,calc(100% - 64px));margin:0 auto;padding:39px 0 80px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 330px;gap:70px}.shop-about h2{margin:0 0 19px}.shop-about>p:last-of-type{max-width:650px;white-space:normal;color:#69776f;font-size:14px;line-height:1.85}
.shop-contact{padding:25px;background:#fff;border:1px solid var(--line);align-self:start}.shop-contact .eyebrow{margin-bottom:21px}.contact-row{border-top:1px solid #edf0eb;padding:14px 0;display:grid;gap:5px}.contact-row span{color:#89948e;text-transform:uppercase;font-size:9px;letter-spacing:1px}.contact-row strong,.contact-row a{font-size:12px;line-height:1.55;font-weight:600;color:#36483d;overflow-wrap:anywhere}.contact-row small{font-size:10px;color:#7c8880}
.shop-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:30px}.gallery-photo{padding:0;border:0;width:100%;height:145px;position:relative;overflow:hidden;background:#e8ece4;cursor:zoom-in}.gallery-photo img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.gallery-photo:hover img{transform:scale(1.05)}.gallery-photo>span{position:absolute;inset:auto 7px 7px auto;padding:6px 8px;background:#19271fd9;color:#fff;font-size:9px;border-radius:2px;opacity:0;transition:opacity .2s}.gallery-photo:hover>span,.gallery-photo:focus-visible>span{opacity:1}.gallery-photo>span b{font-size:13px;font-weight:400;margin-left:5px}
.photo-viewer{width:min(1100px,calc(100vw - 36px));max-width:none;height:min(850px,calc(100dvh - 36px));max-height:none;padding:16px 18px 12px;border:1px solid #ffffff24;border-radius:8px;background:#101714;color:#f5f6f2;overflow:hidden}.photo-viewer::backdrop{background:#07100dde;backdrop-filter:blur(4px)}.viewer-toolbar{height:38px;display:flex;justify-content:space-between;align-items:center;color:#d9e1d9;font-size:11px;letter-spacing:.3px}.viewer-toolbar button{width:34px;height:34px;border:0;border-radius:50%;background:#ffffff16;color:#fff;font-size:25px;line-height:1;cursor:pointer}.viewer-toolbar button:hover{background:#ffffff30}.viewer-stage{height:calc(100% - 71px);display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:12px}.viewer-stage>img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;justify-self:center;object-fit:contain;box-shadow:0 12px 38px #0008}.viewer-stage>button{width:42px;height:52px;border:1px solid #ffffff32;border-radius:4px;background:#ffffff12;color:#fff;font:34px/1 var(--serif);cursor:pointer}.viewer-stage>button:hover{background:#ffffff2b}.photo-viewer>p{margin:0;text-align:center;color:#cbd4cc;font-size:10px}
.shop-missing{width:min(680px,calc(100% - 40px));margin:100px auto;text-align:center}.shop-missing>span{font-size:46px;color:#81966a}.shop-missing h1{font-size:42px;letter-spacing:-1.8px}.shop-missing>p:not(.eyebrow){color:var(--muted);font-size:13px}
@media(max-width:640px){.shop-breadcrumb,.shop-hero,.shop-content{width:calc(100% - 36px)}.shop-breadcrumb{margin-top:22px}.shop-hero{grid-template-columns:1fr;gap:23px;padding-bottom:35px}.shop-cover{height:250px}.shop-heading h1{font-size:43px}.shop-content{grid-template-columns:1fr;gap:30px;padding:30px 0 55px}.shop-contact{padding:20px}.shop-gallery{grid-template-columns:repeat(2,1fr)}.gallery-photo{height:125px}.photo-viewer{width:calc(100vw - 16px);height:calc(100dvh - 16px);padding:10px}.viewer-stage{grid-template-columns:34px minmax(0,1fr) 34px;gap:5px}.viewer-stage>button{width:32px;height:44px;font-size:27px}.shop-missing{margin:70px auto}.shop-missing h1{font-size:34px}.back-link{font-size:10px}}
