:root{--lime:#e5dfd0;--ink:#2d312a;--paper:#f5f3ed}.preview-bar{padding:9px 5%;background:var(--ink);color:#ecebe2;text-align:center;font-size:9px;letter-spacing:1.2px}.preview-bar span{letter-spacing:.3px;color:#d4d7cb}header{height:106px}.je-brand{gap:12px;letter-spacing:0}.je-brand .monogram{font-family:Georgia,serif;font-size:39px;font-weight:400;letter-spacing:-4px;border-right:1px solid var(--line);padding-right:15px;line-height:1.2}.je-brand .brand-name{display:block;font-size:12px;letter-spacing:1.7px;font-weight:500}.brand-name small{display:block;font-size:8px;letter-spacing:3px;margin-top:6px}.je-brand .brand-dot{font-size:35px;color:#aa9270}.bag-button{background:none;border:1px solid var(--line);border-radius:25px;padding:12px 19px;font-size:12px;display:flex;align-items:center;gap:17px}.bag-count{border-radius:50%;background:var(--ink);color:var(--paper);min-width:20px;height:20px;display:grid;place-items:center;font-size:10px}.intro{padding-top:45px}.intro h1{font-size:clamp(70px,7.7vw,116px)}.intro h1 em{margin-left:17vw}.hero>img{object-position:50% 52%}.hero-caption>a:hover{text-decoration:underline}.gallery{grid-template-columns:repeat(3,1fr);gap:32px 25px}.photo:nth-child(even){padding-top:0}.photo .image-wrap,.photo:nth-child(3n+2) .image-wrap{height:290px}.photo .image-wrap{background:#dedbd1}.photo img{object-fit:contain}.photo .caption{display:block}.photo .caption strong{display:block;font-size:17px;margin-bottom:6px}.photo .caption small{font-size:8px}.outline-button{display:block;margin:40px auto 0;border:1px solid #a9ad9f;border-radius:30px;padding:14px 28px;font-size:12px;background:transparent}.outline-button:hover{background:#e5e4da}.outline-button[hidden]{display:none}.shop-section{padding:80px 6%;background:#eae7de;scroll-margin-top:25px}.shop-tools{display:flex;align-items:center;gap:12px;padding-top:20px;border-top:1px solid #c9c9bd;margin-bottom:20px}.shop-tools input,.shop-tools select{background:transparent;border:1px solid #c3c6b7;min-height:43px;font-size:12px}.search-label{flex:1;max-width:360px}.shop-tools>label{margin:0}.shop-tools select{padding-right:30px}.shop-tools>span{margin-left:auto;font-size:11px;color:var(--muted)}.shop-preview-note{font-size:11px;color:#656b5e;padding:0 0 24px;line-height:1.6}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px 26px}.product-card{border:0;background:none;padding:0;text-align:left}.product-card-image{height:300px;display:flex;align-items:center;justify-content:center;background:#f5f2ea;position:relative;overflow:hidden;padding:28px}.product-card img{max-width:100%;max-height:100%;width:auto;height:auto;box-shadow:0 7px 20px #0002;transition:transform .5s}.product-card:hover img{transform:scale(1.04)}.product-card .card-cta{position:absolute;bottom:0;left:0;right:0;padding:12px;background:var(--ink);color:var(--paper);font-size:11px;display:flex;justify-content:space-between;transform:translateY(100%);transition:transform .25s}.product-card:hover .card-cta,.product-card:focus-visible .card-cta{transform:translateY(0)}.product-card-meta{display:flex;justify-content:space-between;gap:10px;margin-top:16px;align-items:start}.product-card-meta h3{font-size:17px;font-weight:500;letter-spacing:-.4px;margin:0 0 7px}.product-card-meta p{font-size:10px;color:var(--muted)}.product-card-meta>span{font-size:12px;white-space:nowrap}.product-card-meta small{display:block;font-size:9px;color:var(--muted);margin-top:5px}.shop-empty{text-align:center;padding:50px 10px;color:var(--muted)}.print-guide{padding:85px 6%;display:grid;grid-template-columns:1fr 1fr;gap:12%}.print-guide h2{font-size:57px}.print-guide>div>p{font-size:14px;line-height:1.8;max-width:420px;margin-top:25px;color:var(--muted)}.small-note{font-size:11px!important;line-height:1.8;color:var(--muted);margin-top:19px!important}.guide-grid article{border-bottom:1px solid var(--line);padding:18px 0;position:relative;padding-left:38px}.guide-grid article>span{position:absolute;left:0;top:21px;font-size:10px;color:#8b927e}.guide-grid h3{font-size:18px;font-weight:500;margin:0 0 9px}.guide-grid p{font-size:12px;line-height:1.8;color:var(--muted)}.approach{margin-top:35px}.approach h2{font-size:57px}.approach-photo{height:630px}.approach-photo img{object-position:45%}.approach .text-link{display:inline-block;margin-top:15px}.contact h2{font-size:clamp(55px,7vw,96px)}.contact .big-arrow:hover{background:#f5f3ed}.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}#viewer figure{padding-bottom:60px}#viewer img{max-height:calc(100% - 95px)}#viewer-shop{margin:0;color:#f5f3ed;border-color:#8a9186}#viewer-shop:hover{background:#41493e}#product-dialog{width:1100px;max-width:94vw;background:var(--paper);max-height:94vh;overflow:auto}.product-layout{display:grid;grid-template-columns:1.08fr 1fr}.product-stage{background:#e4e0d6;display:flex;align-items:center;justify-content:center;min-height:640px;padding:65px 45px;position:relative}.product-stage>span{position:absolute;bottom:25px;font-size:8px;letter-spacing:1.6px;color:var(--muted)}.frame-preview{max-width:100%;padding:25px;background:#faf9f4;box-shadow:0 12px 25px #0002;line-height:0;border:0 solid #222;transition:border-color .2s}.frame-preview img{width:100%;height:auto;max-height:430px;object-fit:contain}.frame-preview.black{border:13px solid #252422;padding:25px}.frame-preview.oak{border:13px solid #8b6840;padding:25px}.frame-preview.white{border:13px solid #eeece7;padding:25px}.product-details{padding:48px 34px 35px}.product-details h2{font-size:38px;letter-spacing:-1.5px;line-height:1.15;margin:16px 0}.product-details>p{font-size:12px;line-height:1.8;color:var(--muted)}#product-form{margin-top:26px;gap:22px}fieldset{padding:0;border:0;margin:0;min-width:0}legend{font-size:12px;margin-bottom:12px}legend small{font-size:9px;margin-left:10px;color:var(--muted)}#size-options{display:flex;gap:7px}#size-options label{flex:1;position:relative}#size-options input,.finish-option input{position:absolute;opacity:0;pointer-events:none}#size-options label>span{display:grid;padding:12px 4px;border:1px solid var(--line);text-align:center;gap:5px;font-size:12px}#size-options label small{font-size:8px;color:var(--muted)}#size-options input:checked+span{border-color:var(--ink);background:#e7e9dd}#size-options input:focus-visible+span,.finish-option input:focus-visible+span{outline:2px solid var(--ink);outline-offset:3px}#finish-options{display:flex;flex-wrap:wrap;gap:8px}.finish-option>span{padding:9px 10px;border:1px solid var(--line);display:flex;gap:7px;align-items:center;font-size:10px}.finish-option input:checked+span{border-color:var(--ink);background:#e7e9dd}.swatch{display:inline-block;width:14px;height:14px;border:1px solid #bbb}.swatch.print{background:#f9f8f5}.swatch.black{background:#252422}.swatch.oak{background:#8b6840}.swatch.white{background:white}.price-quantity{display:flex;justify-content:space-between;align-items:center;gap:15px}#product-price{font-size:27px;letter-spacing:-1px}.price-quantity small{display:block;font-size:9px;color:var(--muted);margin-top:5px}.price-quantity label{font-size:10px}.price-quantity input{width:66px;padding:8px}details{border-top:1px solid var(--line);margin-top:20px;padding-top:16px;font-size:11px}summary{cursor:pointer}details p{font-size:11px;line-height:1.8;color:var(--muted);margin-top:14px}#basket-dialog{padding:40px;width:590px;max-width:94vw;max-height:94vh;background:var(--paper)}#basket-dialog h2{font-size:45px}.basket-item{padding:20px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:88px 1fr auto;gap:15px;align-items:center}.basket-item img{width:88px;height:85px;object-fit:contain;background:#e6e2d9}.basket-item h3{font-weight:500;font-size:14px;margin:0 0 8px}.basket-item p{font-size:10px;color:var(--muted);line-height:1.6}.basket-item .remove{background:transparent;border:0;padding:6px 0;font-size:10px;text-decoration:underline;color:var(--muted)}.basket-controls{display:flex;align-items:center;gap:10px;margin-top:8px}.basket-controls button{border:1px solid var(--line);width:25px;height:25px;background:transparent}.basket-controls span{font-size:11px}.basket-item>strong{font-size:13px;font-weight:500}.subtotal{margin-top:25px;display:flex;justify-content:space-between;font-size:16px}#basket-summary>p{font-size:11px;color:var(--muted);line-height:1.8;margin:12px 0 20px}#basket-summary .submit{width:100%;margin-top:20px;background:#cfd1c5;color:#666b60;cursor:not-allowed}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,100px);padding:15px 24px;background:var(--ink);color:#f5f3ed;box-shadow:0 4px 25px #0003;font-size:12px;z-index:10;opacity:0;transition:.25s;pointer-events:none}.toast.visible{transform:translate(-50%,0);opacity:1}.empty-basket{padding:35px 0;color:var(--muted);font-size:14px}#basket-status{font-size:12px;line-height:1.8}button:disabled{opacity:.8}@media(max-width:900px){.je-brand .brand-name{font-size:10px}.je-brand .monogram{font-size:33px}header nav{gap:20px}.gallery,.product-grid{grid-template-columns:repeat(2,1fr)}.photo .image-wrap,.photo:nth-child(3n+2) .image-wrap{height:300px}.product-card-image{height:285px}.product-layout{grid-template-columns:1fr 1fr}.product-stage{padding:50px 23px;min-height:600px}.product-details{padding:46px 25px 28px}.product-details h2{font-size:31px}.approach h2{font-size:46px}.shop-tools{flex-wrap:wrap}.shop-tools>span{margin-left:0}.search-label{min-width:180px}.print-guide{gap:7%}.print-guide h2{font-size:48px}}@media(max-width:600px){.preview-bar{font-size:8px;padding:9px 10px;line-height:1.6}.preview-bar span{display:block;font-size:8px}header{height:88px}.je-brand{gap:9px}.je-brand .brand-name{font-size:9px;letter-spacing:1.1px}.brand-name small{font-size:7px;letter-spacing:2px}.je-brand .monogram{font-size:31px;padding-right:11px;letter-spacing:-3px}.bag-button{font-size:10px;padding:8px 10px;gap:9px}.bag-count{width:18px;min-width:18px;height:18px;font-size:9px}.intro{padding-top:31px}.intro h1{font-size:63px}.intro h1 em{margin-left:19vw}.hero{height:410px}.hero-caption>a{display:block;font-size:9px;margin-top:17px}.hero-caption span:nth-child(2){font-size:20px}.gallery{grid-template-columns:1fr 1fr;gap:25px 15px}.photo .image-wrap,.photo:nth-child(3n+2) .image-wrap{height:190px}.photo .caption strong{font-size:13px;line-height:1.35}.photo .caption small{font-size:7px;letter-spacing:1px}.section-top{display:block}.section-top p{font-size:11px;margin:18px 0 0;max-width:none}.section-top p br{display:none}.section-top h2{font-size:44px}.filter-row{gap:1px}.filter-row button{font-size:9px;padding:9px 10px}.shop-section{padding:55px 6%}.product-grid{grid-template-columns:1fr 1fr;gap:25px 15px}.product-card-image{height:180px;padding:15px}.product-card-meta{display:block;margin-top:12px}.product-card-meta h3{font-size:13px;line-height:1.4}.product-card-meta p{font-size:9px}.product-card-meta>span{display:block;font-size:11px;margin-top:10px}.product-card-meta small{display:inline;font-size:8px;margin-left:4px}.product-card .card-cta{display:none}.shop-tools{gap:9px}.search-label{max-width:none;flex-basis:100%}.shop-tools>label:nth-child(2),.shop-tools>label:nth-child(3){flex:1}.shop-tools input,.shop-tools select{font-size:10px}.shop-tools>span{font-size:9px;flex-basis:100%}.shop-preview-note{font-size:10px}.print-guide{grid-template-columns:1fr;padding:55px 6%;gap:25px}.print-guide h2{font-size:46px}.print-guide>div>p{font-size:13px;margin-top:20px}.approach{margin-top:0}.approach h2{font-size:48px}.approach-photo{height:420px}.product-layout{grid-template-columns:1fr}.product-stage{min-height:300px;height:320px;padding:38px 45px 48px}.frame-preview img{max-height:225px}.frame-preview{padding:15px}.frame-preview.black,.frame-preview.white,.frame-preview.oak{padding:15px;border-width:9px}.product-stage>span{bottom:16px;font-size:7px}.product-details{padding:28px 24px}.product-details h2{font-size:35px}.product-details .eyebrow{font-size:9px}#product-dialog .close{background:var(--paper);border-radius:50%;width:34px;height:34px;font-size:26px;line-height:1}.product-details>p{font-size:12px}.finish-option>span{font-size:9px;padding:9px}.contact h2{font-size:53px}#basket-dialog{padding:35px 22px}.basket-item{grid-template-columns:65px 1fr auto;gap:11px}.basket-item img{width:65px;height:75px}.basket-item h3{font-size:12px}.basket-item>strong{font-size:11px}.toast{font-size:11px;max-width:90vw;width:max-content}.outline-button{font-size:11px}footer .brand{font-size:20px}footer p{font-size:9px}}
.product-layout>*{min-width:0}.finish-option{position:relative}#size-options input,.finish-option input{width:1px;height:1px;padding:0;margin:0;border:0;overflow:hidden;clip-path:inset(50%)}

/* Quiet, photograph-led homepage opening. */
.intro.intro-minimal{padding:30px 5%}.intro.intro-minimal h1{font-size:10px;line-height:1.6;letter-spacing:1.8px;font-weight:500;text-transform:uppercase;margin:0}@media(max-width:600px){.intro.intro-minimal{padding:24px 6%}.intro.intro-minimal h1{font-size:8px;letter-spacing:1.3px}}

/* Four paper sizes, shared across every print and frame finish. */
#size-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}#size-options label>span{font-size:11px;padding:10px 3px}#size-options label small{font-size:10px}.product-card-meta>span:first-child{white-space:normal}

.delivery-details-link{text-decoration:underline;text-underline-offset:3px}

/* One photograph at a time, with manual controls and uncropped previews. */
#gallery{display:block}
.gallery-stage{display:flex;align-items:center;justify-content:center;width:100%;height:clamp(320px,48vw,610px);padding:0;border:0;background:transparent;position:relative;cursor:zoom-in}
.gallery-stage img{display:block;width:100%;height:100%;object-fit:contain}
.gallery-expand{position:absolute;right:18px;bottom:18px;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--paper);color:var(--ink);font-size:20px;opacity:0;transition:opacity .2s}
.gallery-stage:hover .gallery-expand,.gallery-stage:focus-visible .gallery-expand{opacity:1}
.gallery-caption-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:14px;padding-bottom:15px;border-bottom:1px solid var(--line)}
.gallery-title{font-size:17px;line-height:1.5;letter-spacing:-.3px}
.gallery-controls{display:flex;align-items:center;gap:17px;flex-shrink:0}
.gallery-arrow{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:transparent;color:var(--ink);font-size:24px}
.gallery-arrow:hover{background:#e9e6dc}
.gallery-counter{min-width:60px;text-align:center;font-size:12px;font-variant-numeric:tabular-nums;letter-spacing:1px}
.gallery-thumbnails{display:flex;gap:18px;overflow-x:auto;overscroll-behavior-x:contain;margin-top:22px;padding:4px 4px 14px;scrollbar-width:thin;scrollbar-color:#b6b6aa transparent;position:relative}
.gallery-thumbnail{flex:0 0 150px;height:102px;display:flex;align-items:center;justify-content:center;padding:4px;border:1px solid transparent;background:transparent;opacity:.65;transition:opacity .2s,border-color .2s}
.gallery-thumbnail img{display:block;width:100%;height:100%;object-fit:contain}
.gallery-thumbnail:hover,.gallery-thumbnail:focus-visible{opacity:1}
.gallery-thumbnail.active{opacity:1;border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}

/* Physical print previews distinguish the shop from the photograph gallery. */
.product-card--framed{display:flex;flex-direction:column;min-width:0;background:#f5f2ea;padding:20px}
.product-card--framed .product-card-image{width:100%;height:275px;padding:22px 8px;background:transparent;overflow:visible}
.product-card--framed .product-print-preview{border:8px solid #252422;padding:16px;background:#faf9f4;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;box-shadow:0 5px 10px #0002,0 1px 2px #0003;transform:none}
.product-card--framed .product-print-preview--white{border-color:#f9f8f3;outline:1px solid #d4d1c8}
.product-card--framed .product-print-preview--oak{border-color:#a67f50;border-top-color:#b69264;border-bottom-color:#8b6840}
.product-card--framed .product-card-meta{display:block;margin:17px 0 14px;width:100%}
.product-card--framed .product-card-meta h3{margin-bottom:6px}
.product-card-prices{display:grid;gap:5px;font-size:12px;line-height:1.5;margin-top:auto}
.product-card-details{display:grid;gap:5px;margin:13px 0 20px;font-size:10px;line-height:1.5;color:var(--muted)}
.product-card--framed .card-cta{position:static;display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:13px 15px;font-size:12px;line-height:1.4;transform:none;transition:background .2s}
.product-card--framed:hover .card-cta,.product-card--framed:focus-visible .card-cta{background:#42493b}
.frame-preview-note{font-size:10px;color:var(--muted);line-height:1.6;text-align:right;margin:22px 0 0}
@media(max-width:900px){
 .product-card--framed .product-card-image{height:250px}
}
@media(max-width:600px){
 .product-card--framed{padding:12px}
 .product-card--framed .product-card-image{height:165px;padding:12px 0}
 .product-card--framed .product-print-preview{border-width:5px;padding:9px}
 .product-card--framed .product-card-meta{margin:12px 0}
 .product-card-prices{font-size:10px;gap:4px}
 .product-card-details{font-size:9px;gap:4px;margin:10px 0 14px}
 .product-card--framed .card-cta{font-size:10px;padding:11px 9px}
 .frame-preview-note{font-size:9px}
}

@media(max-width:600px){
 .gallery-stage{height:clamp(220px,70vw,360px)}
 .gallery-caption-row{gap:10px;margin-top:9px;padding-bottom:10px}
 .gallery-title{font-size:14px}
 .gallery-controls{gap:3px}
 .gallery-counter{min-width:48px;font-size:10px;letter-spacing:.5px}
 .gallery-arrow{width:40px;height:44px;font-size:21px}
 .gallery-thumbnails{gap:10px;margin-top:15px}
 .gallery-thumbnail{flex-basis:96px;height:70px;padding:3px}
 .gallery-expand{width:30px;height:30px;right:10px;bottom:10px;font-size:17px}
}

/* Product URLs share the existing print preview and basket controls. */
.product-card[hidden]{display:none}
a.product-card{color:inherit;text-decoration:none;font:inherit}
.print-page-main{max-width:1440px;margin:0 auto;padding:0 4vw 65px}
.print-breadcrumb{display:flex;flex-wrap:wrap;gap:10px;padding:27px 0;color:var(--muted);font-size:11px;line-height:1.6}
.print-breadcrumb a,.print-page-links a{text-decoration:none;color:var(--ink)}
.print-page #product-dialog{background:var(--paper);width:100%;max-width:none;max-height:none;overflow:visible}
.print-page .product-details h1{font-size:38px;letter-spacing:-1.5px;line-height:1.15;margin:16px 0;font-weight:500}
.print-page-links{display:flex;justify-content:space-between;gap:24px;padding-top:28px;font-size:12px;line-height:1.6}
@media(max-width:700px){.print-page-main{padding:0 0 40px}.print-breadcrumb{padding:22px 24px}.print-page .product-details h1{font-size:35px}.print-page-links{padding:24px;flex-wrap:wrap}}
