/* Scoped product-page additions; global catalogue and booking styles stay unchanged. */
.pd-page{--pd-gap:clamp(1.25rem,3vw,3rem);--paper-2:var(--color-paper-2);--muted:var(--color-muted);--rule:var(--color-rule);--ink:var(--color-ink);--accent:var(--color-accent)}
.pd-page .model-detail{align-items:start;gap:var(--pd-gap)}
.pd-page .model-detail-copy,.pd-page .model-detail-media{min-width:0}
.pd-page .model-detail-media img{height:auto}
.pd-page .pd-media-caption{padding:0 1rem}
.pd-page .model-detail-copy{gap:1rem}
.pd-page .model-detail .article-dek{margin-top:0}
.pd-page .model-detail h1{font-size:clamp(1.65rem,3.3vw,3.2rem);line-height:1.12;overflow-wrap:anywhere}
.pd-page .model-detail .article-dek{font-size:1rem;line-height:1.65}
.pd-page .detail-specs>div{gap:1rem;align-items:baseline}
.pd-page .detail-specs dt,.pd-page .detail-specs dd{min-width:0;overflow-wrap:anywhere}
.pd-page .detail-actions{grid-template-columns:minmax(0,1fr);gap:.75rem}
.pd-page .button{white-space:normal;min-height:48px;line-height:1.45;text-align:center;padding:1rem 1.25rem;gap:.75rem;overflow-wrap:anywhere}
.pd-page .button span{flex-shrink:0}
.pd-media-caption,.pd-caption,.pd-source{color:var(--muted);font-size:.8rem;line-height:1.65;margin:1rem 0}
.pd-source a,.pd-order p a{color:var(--accent);text-underline-offset:.2em}
.pd-nav{display:flex;flex-wrap:wrap;gap:.5rem;border-block:1px solid var(--rule);padding:1rem 0;margin:2.5rem 0 0}
.pd-nav a{display:flex;align-items:center;min-height:44px;padding:.5rem 1rem;border:1px solid var(--rule);border-radius:99px;font-size:.8rem}
.pd-nav a:hover,.pd-compare-card:hover{border-color:var(--accent)}
.pd-page :is(a,button,input,summary):focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.pd-section{padding:clamp(2rem,5vw,4rem) 0;border-bottom:1px solid var(--rule);scroll-margin-top:110px}
.pd-section h2{font-size:clamp(1.4rem,2.5vw,2.25rem);line-height:1.2;max-width:30ch;margin:.65rem 0 1.5rem;overflow-wrap:anywhere}
.pd-section h3{font-size:1.05rem;line-height:1.4;margin:0 0 .75rem}
.pd-section p,.pd-section li{font-size:1rem;line-height:1.7;color:var(--muted);max-width:78ch}
.pd-section .category{font-size:.75rem;color:var(--accent)}
.pd-section li+li{margin-top:.6rem}
.pd-section ol{padding-left:1.5rem}
.pd-use-grid,.pd-runtime-grid,.pd-compare-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}
.pd-use-grid>div,.pd-runtime-grid>div{padding:clamp(1.25rem,2.5vw,2rem);background:var(--paper-2);border:1px solid var(--rule);border-radius:var(--radius-card)}
.pd-use-grid p{margin:0}
.pd-note{border-left:3px solid var(--accent);padding:.25rem 0 .25rem 1.25rem;margin-top:1.5rem}
.pd-note p{margin:0}
.pd-runtime-grid{margin:1.75rem 0}
.pd-runtime-grid strong{display:block;font-size:clamp(1.75rem,3vw,2.5rem);color:var(--accent);margin:.75rem 0;line-height:1.1}
.pd-runtime-grid span,.pd-runtime-grid small{font-size:.8rem;color:var(--muted);line-height:1.5}
.pd-calculator{display:grid;grid-template-columns:minmax(0,1fr);gap:.75rem;max-width:42rem;margin:2rem 0 1rem}
.pd-calculator label{font-size:.9rem;line-height:1.5}
.pd-calculator input{box-sizing:border-box;width:100%;max-width:18rem;min-height:52px;border:1px solid var(--rule);background:var(--paper-2);color:var(--ink);font:inherit;font-size:1.25rem;padding:.75rem 1rem;border-radius:.6rem}
.pd-calculator output{font-size:1rem;line-height:1.6;color:var(--accent)}
.pd-compare-card{display:grid;grid-template-columns:minmax(0,1fr);border:1px solid var(--rule);border-radius:var(--radius-card);overflow:hidden;text-decoration:none;background:var(--paper-2)}
.pd-compare-card img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.pd-compare-card>div{padding:1.25rem;min-width:0}
.pd-compare-card h3{overflow-wrap:anywhere}
.pd-compare-card dl{margin:1rem 0}
.pd-compare-card dl>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.25rem 1rem;font-size:.8rem;line-height:1.7;padding:.25rem 0}
.pd-compare-card dt{color:var(--muted)}
.pd-compare-card dd{margin:0}
.pd-compare-card strong{display:block;margin:1rem 0;font-size:1.25rem}
.pd-compare-link{display:block;font-size:.8rem;line-height:1.5;color:var(--accent)}
.pd-faq details{border-top:1px solid var(--rule);padding:1rem 0}
.pd-faq summary{cursor:pointer;min-height:44px;padding:.6rem .25rem;font-size:1rem;line-height:1.5;overflow-wrap:anywhere}
.pd-faq p{margin:.75rem .25rem}
.pd-order{display:grid;gap:2rem}
.pd-order-actions{display:flex;flex-direction:column;gap:.75rem;align-self:center}
.pd-page .article-content{max-width:none;margin:2.5rem 0 0}
.pd-page .article-gallery{margin:0}
.pd-page .article-gallery img{height:auto;aspect-ratio:4/5}
@media(min-width:600px){.pd-use-grid,.pd-compare-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pd-runtime-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:960px){.pd-order{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}}
@media(max-width:420px){.pd-page .detail-specs>div{display:block}.pd-page .detail-specs dd{margin:.35rem 0 0}.pd-nav a{padding:.5rem .75rem}}
