/* Standalone React storefront additions; original brand CSS remains intact. */
/* Edited gallery files have their own 4:5 framing; legacy originals retain their source crops. */
.storefront .work-image.gallery-warm-photo{aspect-ratio:4/5}
.storefront .work-image.gallery-warm-photo img{width:100%;height:100%;left:0;top:0;object-fit:cover;filter:none}
.gallery-photo-info{margin-top:16px;font-size:12px;color:#646a61}
.gallery-photo-info summary{cursor:pointer}
.gallery-photo-info p{font-size:12px;line-height:1.7}
/* Close-up of IMG_E6615: source region x=400, y=400, 500×625. Excludes the wooden sign. */
.storefront .crop-silver-cat,.storefront .crop-silver-cat.crop-detail{aspect-ratio:4/5}
.storefront .crop-silver-cat img{width:240%;height:auto;left:-80%;top:-64%;object-fit:unset}
.crop-orange-cat{aspect-ratio:4/5}
.crop-orange-cat img{width:100%;height:100%;left:0;top:0;object-fit:contain}
.crop-orange-cat.crop-detail{aspect-ratio:3/4}
/* Frame the existing transparent logo tightly without altering the artwork. */
.storefront .header > .studio-logo{position:relative;overflow:hidden;width:152px;height:132px;margin:6px 0}
.storefront .header > .studio-logo img{position:absolute;left:50%;top:50%;width:216px;height:216px;max-width:none;transform:translate(-50%,-50%)}
@media(max-width:800px){.storefront .header > .studio-logo{width:112px;height:96px;margin:2px 0}.storefront .header > .studio-logo img{width:156px;height:156px}.storefront .header > .menu-mobile{align-self:center}}
.storefront .price-guide-section{background:#f5f2ea}
.price-guide-promises{display:flex;gap:24px;justify-content:space-between;border-top:1px solid #dedcd3;border-bottom:1px solid #dedcd3;margin:0 0 32px;padding:15px 0;color:#485446;font-size:14px}
.price-guide-promises p{margin:0;max-width:580px}
.price-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.price-guide-card{background:#fffdf8;border:1px solid #dedcd3;min-width:0;display:flex;flex-direction:column;scroll-margin-top:120px}
.price-guide-card>img{width:100%;height:auto;aspect-ratio:4/5;object-fit:contain;display:block}
.price-guide-copy{padding:24px;display:flex;flex-direction:column;align-items:flex-start;flex:1}
.price-guide-copy h3{font-size:25px;margin:8px 0 14px}
.price-guide-copy>p{font-size:15px;color:#646a61;line-height:1.65}
.price-guide-copy .price-guide-dimensions{font-size:13px;white-space:pre-line;min-height:44px;margin:0}
.price-guide-copy .price-guide-price{font:34px/1.2 Lora,Georgia,serif;color:#27352d;margin:18px 0 8px}
.price-guide-price small{font:12px/1.5 system-ui,sans-serif;margin-left:6px;white-space:nowrap}
.price-guide-copy .price-guide-minimum{background:#e9eee4;color:#34452f;font-size:13px;padding:6px 10px;margin:5px 0}
.price-guide-copy .button{margin-top:auto;max-width:100%;font-size:14px}
.price-guide-original{border-top:1px solid #dedcd3;margin-top:20px;padding-top:14px;width:100%;font-size:12px;color:#646a61}
.price-guide-original summary{cursor:pointer;min-height:30px}
.price-guide-original p{font-size:12px;line-height:1.7}
.price-guide-notes{max-width:850px;margin-top:25px;color:#646a61;font-size:13px}
.price-guide-custom{border-top:1px solid #dedcd3;margin-top:42px;padding-top:30px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.price-guide-custom h3{font-size:28px;margin:10px 0}
.price-guide-custom p{max-width:650px;color:#646a61;font-size:15px}
.price-guide-custom>a{overflow-wrap:anywhere}
@media(max-width:1100px){.storefront .header{flex-wrap:wrap}.storefront .header .nav{flex-wrap:wrap}.price-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.price-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.price-guide-promises{flex-direction:column;gap:8px}.price-guide-custom{align-items:flex-start;flex-direction:column;gap:8px}}
@media(max-width:550px){.price-guide-grid{grid-template-columns:1fr}.price-guide-card>img{max-height:430px}.price-guide-copy{padding:22px}.price-guide-copy .price-guide-dimensions{min-height:0}.price-guide-copy .button{margin-top:12px}}
@font-face{font-family:Lora;src:url('/store-assets/lora-latin.woff2') format('woff2');font-display:swap}
.storefront .site-header{background:#f5f2ea}.storefront .header{gap:22px}.storefront .studio-logo{flex:none;width:190px;display:block}.storefront .studio-logo img{width:100%;height:92px;object-fit:contain}.storefront .hero-copy h1{white-space:pre-line}.public-languages{display:flex;gap:9px;white-space:nowrap;font-size:13px}.public-languages a[aria-current=true]{text-decoration:underline;text-underline-offset:5px}.storefront .hero{padding-top:42px}.storefront .page-heading{padding-top:65px;padding-bottom:22px}.storefront .page-heading h1{max-width:850px}.storefront .work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.storefront .work-copy{padding:22px 0}.storefront .work-copy small{display:block;color:#646a61;font-size:12px}.storefront .work-copy h3 a{text-decoration:none}.storefront .service-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:30px}.storefront .service-card{padding:28px;border:1px solid #dedcd3;background:#faf9f5;border-radius:3px}.storefront .steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px}.storefront .step-number{font-family:Lora,Georgia,serif;font-size:32px;color:#6c7c65}.storefront .step{border-top:1px solid #dedcd3;padding-top:20px}.public-copy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 60px}.public-copy-grid h2{font-size:26px}.public-pairs{display:grid;grid-template-columns:1fr 1fr;gap:32px}.public-pairs figure{margin:0}.public-pairs img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:6px}.public-pairs figcaption,.public-golden figcaption{font-size:12px;color:#646a61;margin-top:12px}.public-golden{margin-top:75px;gap:65px}.public-golden figure{margin:0}.public-golden img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 45%;border-radius:6px}.storefront .studio-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:55px}.studio-photo-grid img{width:100%;aspect-ratio:3/4;object-fit:cover}.photo-view-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.photo-view-grid figure{margin:0}.photo-view-grid img{width:100%;aspect-ratio:1;object-fit:contain}.photo-view-grid figcaption{margin-top:18px}.photo-view-grid p{font-size:13px;color:#646a61}.storefront .public-footer{display:grid;grid-template-columns:1fr 1fr;gap:35px;padding-top:45px;padding-bottom:30px}.public-footer nav{display:grid;grid-template-columns:1fr 1fr;gap:12px}.public-footer .brand{font-family:Lora,serif;font-size:36px}.public-copyright{font-size:12px;color:#646a61;padding-bottom:25px}.policy-copy{white-space:pre-wrap}.skip-link{position:fixed;top:-100px;left:20px;background:white;padding:12px;z-index:100}.skip-link:focus{top:12px}.storefront .faq summary{cursor:pointer;min-height:55px;padding:18px 0}.storefront .faq{border-bottom:1px solid #dedcd3}.storefront .narrow{max-width:850px}.storefront .merchant-image img{width:100%;height:100%;object-fit:contain}.storefront a:focus-visible,.storefront summary:focus-visible{outline:2px solid #6c7c65;outline-offset:5px}
@media(max-width:1100px){.storefront .header{gap:16px}.storefront .studio-logo{width:150px}.storefront .nav{gap:15px}.storefront .nav .button{padding:12px}.public-languages{margin-left:auto}}
@media(max-width:800px){.storefront .nav{display:none}.storefront .menu-mobile{display:block}.storefront .studio-logo{width:130px}.storefront .studio-logo img{height:70px}.storefront .header{padding-top:4px;padding-bottom:4px}.storefront .hero{padding-top:26px}.storefront .work-grid{grid-template-columns:1fr 1fr;gap:22px}.storefront .steps{grid-template-columns:1fr 1fr}.public-golden{gap:25px}.public-copy-grid{gap:25px}.storefront .page-heading{padding-top:40px}}
@media(max-width:550px){.storefront .work-grid{grid-template-columns:1fr}.public-pairs{gap:16px}.public-pairs figcaption{font-size:11px}.public-golden{margin-top:40px}.storefront .public-footer{grid-template-columns:1fr}.public-copy-grid{grid-template-columns:1fr}.photo-view-grid{gap:12px}.photo-view-grid strong{font-size:15px}.photo-view-grid p{font-size:11px}.storefront .steps{gap:20px}.storefront .step h3{font-size:20px}.storefront .studio-photo-grid{gap:14px}.storefront .hero-art{margin-top:25px}.storefront .hero-copy h1{font-size:38px}}

/* Customer information: warm, quiet editorial pages. */
/* Trim the thin black strip embedded in the studio photo's top edge. */
.studio-materials-photo{position:relative;aspect-ratio:3/4;overflow:hidden}
.studio-photo-grid .studio-materials-photo img{position:absolute;bottom:0;left:0;display:block;width:100%;height:101%;aspect-ratio:auto;object-fit:cover;object-position:center bottom}
.studio-info{padding-top:16px}.studio-info-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:100px;align-items:center;margin-bottom:110px}.studio-info h2,.payment-intro h2{font-size:38px;line-height:1.25;white-space:pre-line}.studio-info p{color:#687063;line-height:1.9}.studio-info-intro .text-link{display:inline-block;margin-top:15px}.studio-facts{margin:0;border-top:1px solid #d7d7c9}.studio-facts>div{display:grid;grid-template-columns:1fr 1.4fr;gap:16px;padding:22px 0;border-bottom:1px solid #d7d7c9}.studio-facts dt{font-size:12px;color:#71786a}.studio-facts dd{margin:0;font-size:14px;overflow-wrap:anywhere}.studio-facts small{display:block;margin-top:8px}.studio-section-heading{max-width:650px;margin-bottom:36px}.studio-policy-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.studio-policy-card{position:relative;border-top:1px solid #d2d3c5;padding:30px 40px 28px 0;color:inherit;text-decoration:none}.studio-policy-card h3{font-size:28px;margin:14px 0}.studio-policy-card p{font-size:14px;max-width:390px}.studio-policy-card>span:last-child{position:absolute;right:18px;top:63px;font-size:24px}.studio-policy-card:hover h3{text-decoration:underline;text-underline-offset:6px}.studio-contact-band{background:#e8eadd;padding:40px;display:flex;justify-content:space-between;align-items:center;gap:35px;margin-top:70px}.studio-contact-band h2{margin:0;font-size:30px}.studio-contact-band p{margin-bottom:0;font-size:14px}.studio-contact-band .button{flex:none}.policy-review-note{background:#ece7d9;border:1px solid #dcd3bc;border-radius:4px;padding:20px 24px;margin:0 0 32px;font-size:13px;line-height:1.7}.policy-review-note p{margin:8px 0;font-size:13px}.policy-review-note strong{color:#685b36}.policy-review-note a{text-underline-offset:4px}.policy-reader{padding-top:0}.policy-reader-layout{display:grid;grid-template-columns:260px minmax(0,720px);gap:70px;align-items:start}.policy-reader-layout nav{position:sticky;top:35px;display:grid;gap:17px;font-size:12px}.policy-reader-layout nav a{text-decoration:none;color:#6a7263}.policy-reader-layout nav a:hover{text-decoration:underline}.policy-reader-layout article{padding:0 0 27px;margin-bottom:30px;border-bottom:1px solid #dcddcf;scroll-margin-top:35px}.policy-reader-layout h2{font-size:28px;margin:0 0 20px}.policy-reader-layout p{font-size:16px;color:#616b5d;line-height:1.95;white-space:pre-line}.payment-intro{max-width:700px;margin-bottom:50px}.payment-steps{display:grid;grid-template-columns:1fr 1fr;gap:44px 65px;margin:45px 0 85px}.payment-steps article{display:flex;gap:24px;border-top:1px solid #d4d6c6;padding-top:25px}.payment-steps article>span{font-family:Lora,Georgia,serif;font-size:24px;color:#8c977d}.payment-steps h3{font-size:25px;margin:0 0 12px}.payment-steps p{font-size:14px;margin:0}.studio-info-columns{display:grid;grid-template-columns:1.15fr 1fr;gap:80px}.studio-info-columns h2{font-size:30px}.payment-availability{background:#e8eadd;padding:35px;align-self:start}.payment-availability h3{font-size:25px}.payment-availability p{font-size:14px}.payment-availability a{font-size:14px;overflow-wrap:anywhere}
@media(max-width:800px){.studio-info-intro{grid-template-columns:1fr;gap:40px;margin-bottom:65px}.studio-info h2,.payment-intro h2{font-size:31px}.studio-policy-grid,.payment-steps,.studio-info-columns{grid-template-columns:1fr;gap:28px}.studio-contact-band{display:block;padding:26px}.studio-contact-band .button{margin-top:25px}.policy-reader-layout{grid-template-columns:1fr;gap:38px}.policy-reader-layout nav{position:static;gap:12px}.policy-reader-layout h2{font-size:25px}.studio-facts>div{grid-template-columns:1fr 1.3fr}.payment-steps{margin-bottom:55px}.studio-policy-card h3{font-size:25px}}
.studio-facts{display:block}
@media(max-width:800px){.storefront .page-heading,.storefront .studio-info,.storefront .policy-reader{padding-left:20px;padding-right:20px}}

/* Enquiry-only seventh format and readable technique explanations. */
.price-guide-bespoke{border:1px solid #d4d9c6;border-radius:5px;background:#e9ecdf;padding:32px 36px;margin-top:32px;gap:42px;align-items:center}.price-guide-bespoke>div:first-child{max-width:670px}.price-guide-bespoke h3{font-size:31px;margin:14px 0}.price-guide-bespoke .bespoke-enquiry{display:flex;flex-direction:column;align-items:flex-start;gap:18px;flex-shrink:0}.price-guide-bespoke .bespoke-enquiry strong{font-family:Lora,Georgia,serif;font-weight:400;font-size:23px}.storefront .faq p{white-space:pre-line}
@media(max-width:800px){.price-guide-bespoke{padding:26px;gap:20px;flex-direction:column;align-items:flex-start}.price-guide-bespoke h3{font-size:27px}.price-guide-bespoke .bespoke-enquiry{max-width:100%;flex-shrink:1}.price-guide-bespoke .button{white-space:normal}}
