.product-page{padding-top:clamp(32px,3.333vw,64px);padding-bottom:clamp(60px,5.5vw,106px)}
.product-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:4.6667vw;align-items:start}.detail-gallery{min-width:0}.gallery-main{display:block;width:100%;aspect-ratio:883.2/1024;overflow:hidden;border:0;padding:0;background:#f5f2eb;cursor:zoom-in}.gallery-main img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s,object-position .4s}.gallery-thumbnails{display:flex;gap:clamp(12px,1.16vw,22px);margin-top:clamp(16px,1.333vw,26px)}.gallery-thumbnails button{border:2px solid transparent;background:transparent;padding:0;cursor:pointer;width:20%;color:var(--muted);font:inherit;font-size:12px}.gallery-thumbnails button[aria-pressed=true]{border-color:#8a7248}.gallery-thumbnails img{display:block;width:100%;aspect-ratio:1;object-fit:cover}.gallery-thumbnails button{overflow:hidden}.gallery-thumbnails span{display:block;background:#fff;padding:8px 2px;position:relative}
.detail-breadcrumbs{font-size:clamp(10px,.9583vw,18.4px);letter-spacing:.1em;color:var(--muted);line-height:1.8}.detail-info h1{font-size:clamp(38px,3.6458vw,70px);line-height:1.2;margin:24px 0 16px}.detail-article{font-size:clamp(12px,.99vw,19px);color:var(--muted)}.detail-description{font-size:clamp(15px,1.146vw,22px);line-height:1.545;color:var(--muted);margin:clamp(24px,2.5vw,48px) 0 32px!important}.detail-specs{margin:0;border-top:1px solid #e3dccb;font-size:clamp(12px,1.0417vw,20px)}.detail-specs>div{display:flex;justify-content:space-between;gap:20px;padding:clamp(15px,1.146vw,22px) 0;border-bottom:1px solid #e3dccb}.detail-specs dt{color:var(--muted);flex-shrink:0}.detail-specs dd{margin:0;text-align:right;font-weight:600}.project-files{margin-top:24px;color:#6e5a36;font-size:clamp(12px,1.0417vw,20px)}.project-files>p{font-size:clamp(10px,.833vw,16px);letter-spacing:.08em;margin-bottom:10px}.project-files>div{display:flex;gap:24px;flex-wrap:wrap}.project-files button{font:inherit;color:inherit;cursor:pointer;border:0;padding:0;background:transparent}.project-files a,.project-files button{text-decoration:underline;text-underline-offset:4px}.detail-finishes{margin:24px 0 32px;padding:0;border:0}.detail-finishes legend{font-size:clamp(11px,.958vw,18px);letter-spacing:.12em;color:#6e5a36;margin-bottom:18px}.finish-options{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.finish-options label{cursor:pointer;position:relative}.finish-options input{position:absolute;opacity:0;width:100%;height:100%;margin:0}.finish-swatch{display:block;width:clamp(38px,3.333vw,64px);height:clamp(38px,3.333vw,64px);border-radius:50%;border:1px solid #d6cdb8}.finish-0{background:#f6f6f5}.finish-1{background:#e2d5b8}.finish-2{background:#cfc8bb}.finish-3{background:#8f8878}.finish-options input:checked+.finish-swatch{outline:2px solid #8a7248;outline-offset:3px}.finish-options input:focus-visible+.finish-swatch{outline:3px solid var(--ink);outline-offset:4px}#finish-label{font-size:clamp(12px,1vw,19px);color:var(--muted);margin-left:10px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.detail-price{background:#f5f2eb;padding:clamp(22px,2.1667vw,42px)}.price-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:26px}.price-heading>span{font-size:clamp(11px,1vw,19px);letter-spacing:.1em;color:#6e5a36}.price-heading>p{font:400 clamp(23px,1.823vw,35px)/1.1 'Cormorant Garamond',serif;text-align:right}.detail-price>p{font-size:clamp(13px,.99vw,19px);line-height:1.526;color:var(--muted)}.detail-actions{display:flex;gap:12px;margin-top:26px}.detail-actions .button{flex:1;padding:14px 8px;height:auto;min-height:clamp(48px,3.75vw,72px);text-align:center}.detail-benefits{display:flex;flex-wrap:wrap;gap:12px 22px;list-style:none;padding:0;margin:24px 0 0;font-size:clamp(11px,1vw,19px);color:var(--muted)}
.detail-service{background:#f5f2eb;margin-top:clamp(40px,3.125vw,60px);padding:clamp(24px,1.667vw,32px)}.product-page h2{font-size:clamp(34px,3.073vw,59px);line-height:1.2}.detail-service h2{margin-bottom:32px}.service-row{display:grid;grid-template-columns:300px 1fr;gap:80px;padding:40px 0}.service-row+.service-row{border-top:1px solid #cfc4b0}.service-row h3{font:500 clamp(18px,1.354vw,26px)/1.4 Manrope,sans-serif;display:flex;align-items:center;gap:16px}.service-row h3 img{flex:none}.service-row p{font-size:clamp(14px,1.094vw,21px);line-height:1.524;color:var(--muted)}.related-products{margin-top:60px}.related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2vw;margin-top:32px}.related-grid img{display:block;width:100%;aspect-ratio:406.4/550;object-fit:cover}.related-grid h3{font-size:clamp(24px,1.51vw,29px);margin:16px 0}.related-grid p{font-size:clamp(12px,.99vw,19px);line-height:1.526;color:var(--muted)}
#photo-dialog{border:0;padding:0;background:#f5f2eb;max-width:90vw;max-height:90vh}#photo-dialog::backdrop{background:rgba(38,34,28,.8)}#photo-dialog img{display:block;max-width:90vw;max-height:90vh;object-fit:contain}.photo-close{position:absolute;right:12px;top:12px;border:0;background:white;border-radius:50%;width:44px;height:44px;font-size:30px;cursor:pointer}.product-page button:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
@media(max-width:1200px){.service-row{grid-template-columns:200px 1fr;gap:30px;padding:28px 0}.detail-specs>div{gap:14px}.detail-specs dt{flex-shrink:1}.detail-actions{flex-wrap:wrap}.detail-actions .button{min-width:180px}.price-heading{flex-wrap:wrap}}
@media(max-width:800px){.product-layout{grid-template-columns:1fr;gap:32px}.gallery-main{aspect-ratio:4/5;max-height:680px}.gallery-thumbnails button{width:22%;max-width:130px}.detail-info h1{font-size:42px}.detail-description{font-size:16px}.detail-specs{font-size:14px}.detail-article{font-size:13px}.detail-breadcrumbs{font-size:10px}.detail-actions .button{font-size:11px}.service-row{grid-template-columns:1fr;gap:16px}.detail-service h2{margin-bottom:10px}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 16px}.related-grid p{font-size:12px}.detail-price{padding:24px}.detail-benefits{font-size:12px}.product-page{padding-top:26px}.detail-finishes{margin-top:28px}.project-files>div{gap:16px}.related-products{margin-top:40px}}
@media print{.topline,.site-header,.site-footer,.gallery-thumbnails,.detail-actions,.project-files,.related-products,#photo-dialog{display:none!important}.product-page{padding:0}.product-layout{grid-template-columns:1fr 1fr;gap:24px}.detail-info h1{font-size:30px}.detail-description,.detail-specs{font-size:11px}.gallery-main{max-height:500px}.detail-service{break-inside:avoid}.detail-service h2{font-size:24px}.service-row{padding:12px 0;gap:12px;grid-template-columns:140px 1fr}.service-row p{font-size:11px}.service-row h3{font-size:13px}.detail-price{padding:16px}.detail-info h1{margin-top:12px}.detail-description{margin:16px 0!important}}

/* Service cards */
.detail-service{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;background:transparent;padding:0;margin-top:64px;counter-reset:service}
.detail-service h2{grid-column:1/-1;font-size:clamp(34px,2.4vw,46px);margin:0 0 12px}
.detail-service .service-row{counter-increment:service;display:flex;flex-direction:column;gap:22px;position:relative;padding:32px;background:#f8f6f1;border:0;border-top:2px solid #a3906c}
.detail-service .service-row+.service-row{border-top:2px solid #a3906c}
.detail-service .service-row:before{content:'0' counter(service);font:400 42px/1 'Cormorant Garamond',serif;color:#b9aa8c}
.detail-service .service-row h3{font-size:22px;line-height:1.4;gap:12px}
.detail-service .service-row h3 img{position:absolute;top:32px;right:32px}
.detail-service .service-row p{font-size:clamp(13px,.9vw,17px);line-height:1.75}
@media(max-width:1000px){.detail-service{gap:16px}.detail-service .service-row{padding:24px;gap:18px}.detail-service .service-row h3{font-size:20px}.detail-service .service-row h3 img{top:24px;right:24px}}
@media(max-width:700px){.detail-service{grid-template-columns:1fr;gap:16px;margin-top:40px}.detail-service h2{margin-bottom:8px}.detail-service .service-row{padding:24px;gap:14px}.detail-service .service-row:before{font-size:34px}.detail-service .service-row p{font-size:14px}}
@media print{.detail-service{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.detail-service .service-row{padding:12px;gap:10px}.detail-service .service-row p{font-size:10px}.detail-service .service-row h3{font-size:13px}.detail-service .service-row h3 img{display:none}}
/* Size the gallery to the photograph's own proportions, without side panels. */
@media(min-width:801px){
.product-page{padding-top:24px}
.product-layout{grid-template-columns:minmax(0,min(46%,calc((100vh - max(110px,7.890625vw) - 100px)*.8))) minmax(0,1fr);grid-template-columns:minmax(0,min(46%,calc((100dvh - max(110px,7.890625vw) - 100px)*.8))) minmax(0,1fr);gap:clamp(32px,4vw,76px)}
.detail-gallery{position:sticky;top:calc(max(110px,7.890625vw) + 20px)}
.gallery-main{height:auto;aspect-ratio:4/5;background:transparent}
.gallery-main img{object-fit:contain}
.gallery-thumbnails{margin-top:16px;gap:14px}
.gallery-thumbnails button{width:80px}
.gallery-thumbnails span{font-size:10px;padding:6px 2px}
}
@media(max-width:800px){.gallery-main{height:auto;max-height:none;aspect-ratio:4/5;background:transparent}.gallery-main img{object-fit:contain}}
@media print{.detail-gallery{position:static}.product-layout{grid-template-columns:1fr 1fr}}
/* Editorial service section matching product typography. */
.detail-service{gap:0;margin-top:72px;border-top:1px solid #e3dccb;padding-top:32px}
.detail-service h2{margin-bottom:32px}
.detail-service .service-row,.detail-service .service-row+.service-row{background:transparent;border:0;padding:8px 36px 8px 0;gap:18px}
.detail-service .service-row+.service-row{border-left:1px solid #e3dccb;padding-left:36px}
.detail-service .service-row:before{display:none}
.detail-service .service-row h3{font:400 clamp(28px,1.9vw,36px)/1.2 'Cormorant Garamond',Georgia,serif;display:block}
.detail-service .service-row h3 img{display:none}
.detail-service .service-row p{font-size:clamp(14px,.9vw,17px);line-height:1.7}
@media(max-width:1000px){.detail-service .service-row{padding-right:24px}.detail-service .service-row+.service-row{padding-left:24px}}
@media(max-width:700px){.detail-service{margin-top:40px;padding-top:24px}.detail-service h2{margin-bottom:8px}.detail-service .service-row,.detail-service .service-row+.service-row{border:0;padding:24px 0;gap:12px}.detail-service .service-row+.service-row{border-top:1px solid #e3dccb}.detail-service .service-row h3{font-size:30px}}
.detail-service{border-top:0;padding-top:0}

.detail-benefits{justify-content:space-between;width:100%;column-gap:20px}
@media(max-width:800px){.detail-benefits{row-gap:12px}}