/* Pet-door page only. */
.pd-page { --pd-ink:#183357; }
.pd-page [id] { scroll-margin-top:140px; }
.pd-page .svc-hero h1 {font-size:clamp(2rem,4vw,3.3rem);max-width:660px;}
.pd-page .svc-hero-desc {max-width:580px;}
.pd-page .svc-hero-media {position:relative;}
.pd-photo-credit {font-size:12px;margin-top:8px;color:#526074;}
.pd-nav {background:white;border-bottom:1px solid var(--border);position:sticky;top:76px;z-index:50;}
.pd-nav .container {display:flex;gap:24px;overflow-x:auto;}
.pd-nav a {white-space:nowrap;padding:16px 0;font-size:14px;font-weight:700;}
.pd-nav a:last-child {color:var(--blue);margin-left:auto;}
.pd-eyebrow {color:var(--blue);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;}
.pd-heading {display:flex;gap:32px;align-items:end;justify-content:space-between;margin-bottom:32px;}
.pd-heading p {max-width:650px;margin-top:16px;}
.pd-page .pd-link {color:var(--blue-dark);text-decoration:underline;text-underline-offset:3px;}
.pd-cards {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;}
.pd-card {border:1px solid var(--border);border-radius:14px;background:white;overflow:hidden;display:flex;flex-direction:column;min-width:0;}
.pd-product-image {width:100%;height:245px;object-fit:contain;padding:20px;background:#fafbfd;}
.pd-card-body {padding:24px;display:flex;flex-direction:column;gap:12px;flex:1;}
.pd-card h3 {font-size:21px;}
.pd-card p {margin:0;}
.pd-opening {font-size:25px;font-weight:700;color:var(--pd-ink);}
.pd-small {font-size:13px;color:#526074;line-height:1.6;}
.pd-card select,.pd-field select,.pd-field input {width:100%;min-height:46px;border:1px solid #a9b8cb;border-radius:6px;background:white;padding:10px;font:inherit;color:var(--text);}
.pd-card label {font-size:13px;font-weight:700;}
.pd-card details {border-top:1px solid var(--border);padding-top:12px;}
.pd-card summary {font-size:14px;font-weight:700;cursor:pointer;min-height:36px;}
.pd-specs {font-size:13px;display:grid;grid-template-columns:1fr 1.1fr;gap:6px 10px;margin:12px 0;}
.pd-specs dd {margin:0;font-weight:600;}
.pd-specs dt {color:#526074;}
.pd-card .btn {white-space:normal;line-height:1.4;padding:13px 14px;}
.pd-card-actions {display:grid;gap:8px;margin-top:auto;}
.pd-inline {padding:26px;border-radius:12px;background:var(--blue-light);margin-top:24px;}
.pd-inline h3 {margin-bottom:10px;}
.pd-gallery {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:36px;}
.pd-gallery img {width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;}
.pd-gallery a {display:block;}
.pd-gallery figcaption {font-size:13px;margin-top:9px;}
.pd-scale {padding:24px;background:#eef3f9;border-radius:12px;margin:0 0 28px;}
.pd-scale svg {display:block;width:100%;max-width:620px;height:auto;margin:auto;}
.pd-compare {margin-top:26px;padding:24px;background:white;border:1px solid var(--border);border-radius:12px;}
.pd-compare-grid {display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:15px;}
.pd-compare-grid > div {min-width:0;}
.pd-tool {border:1px solid var(--border);border-radius:16px;background:white;box-shadow:var(--shadow-md);padding:32px;}
.pd-stepnav {display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px;}
.pd-stepnav button {border:1px solid #a9b8cb;border-radius:7px;padding:10px 14px;min-height:44px;font-size:14px;}
.pd-stepnav button[aria-current="step"] {background:var(--navy);color:white;border-color:var(--navy);}
.pd-step h3 {margin:0 0 18px;}
.pd-fields {display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.pd-field {display:grid;gap:6px;align-content:start;}
.pd-field > label,.pd-field > span:first-child {font-size:14px;font-weight:600;}
.pd-field small {font-size:12px;color:#526074;}
.pd-pet {padding:20px;border:1px solid var(--border);border-radius:8px;margin:20px 0;}
.pd-pet legend {padding:0 8px;font-weight:700;}
.pd-checkbox {display:flex;align-items:center;gap:10px;min-height:44px;}
.pd-checkbox input {width:20px;height:20px;}
.pd-measure-layout {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:start;margin-top:20px;}
.pd-illustration {padding:20px;background:var(--bg);border-radius:10px;}
.pd-illustration svg {width:100%;height:auto;max-height:260px;}
.pd-illustration h4 {font-size:16px;margin:12px 0;}
.pd-dimension-nav {display:flex;gap:8px;flex-wrap:wrap;margin:16px 0;}
.pd-dimension-nav button {font-size:13px;border-bottom:2px solid transparent;padding:8px 4px;min-height:44px;}
.pd-dimension-nav button[aria-pressed="true"] {border-color:var(--blue);color:var(--blue-dark);}
.pd-tool-footer {display:flex;gap:12px;flex-wrap:wrap;align-items:center;border-top:1px solid var(--border);margin-top:28px;padding-top:24px;}
.pd-tool-footer a {margin-left:auto;}
.pd-notice {background:#fff7e9;border-left:3px solid #bd7c1e;padding:16px;margin:20px 0;font-size:14px;}
.pd-results ul {list-style:disc;padding-left:22px;margin:16px 0;}
.pd-results li {margin:8px 0;}
.pd-result-models {display:flex;gap:8px;flex-wrap:wrap;}
.pd-result-models button {padding:12px;border:1px solid var(--border);border-radius:8px;}
.pd-outline {margin:20px 0;}
.pd-outline svg {max-width:100%;height:270px;background:#f6f8fb;border-radius:10px;}
.pd-outline figcaption {font-size:13px;font-weight:700;}
.pd-summary {min-height:220px;font-family:var(--font);font-size:14px;}
.pd-lightbox {border:0;border-radius:12px;padding:20px;width:min(960px,94vw);max-height:94vh;margin:auto;}
.pd-lightbox::backdrop {background:rgba(4,15,35,.8);}
.pd-lightbox img {max-height:74vh;max-width:100%;object-fit:contain;margin:12px auto;}
.pd-lightbox button {padding:10px 20px;background:var(--navy);color:white;border-radius:6px;}
.pd-page :focus-visible {outline:3px solid #1f6ce0;outline-offset:4px;}
.pd-page [hidden] {display:none!important;}
.pd-status {padding:14px 0;color:#9d1b21;font-weight:600;}
.pd-page .form-privacy {color:#526074;}
@media(max-width:900px){.pd-cards{grid-template-columns:1fr 1fr;}.pd-heading{display:block;}.pd-heading>.btn{margin-top:18px;}}
@media(max-width:640px){.pd-nav{top:68px;}.pd-nav .container{gap:20px;}.pd-cards,.pd-measure-layout,.pd-fields{grid-template-columns:1fr;}.pd-gallery{gap:12px;grid-template-columns:1fr;}.pd-gallery img{aspect-ratio:4/3;}.pd-tool{padding:20px;}.pd-tool-footer .btn{flex:1;}.pd-tool-footer a{width:100%;margin:4px 0;}.pd-stepnav button{flex:1 0 42%;}.pd-compare{padding:16px;}.pd-specs{grid-template-columns:1fr;gap:2px;}.pd-specs dd{margin-bottom:7px;}.pd-product-image{height:220px;}.pd-page .section{padding:52px 0;}.pd-page .btn{white-space:normal;line-height:1.4;}.pd-compare-grid{gap:16px;}.pd-pet{padding:14px;}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}.pd-page *{transition:none!important;}}

.pd-spec-diagram svg {width:100%;height:220px;}
.pd-spec-diagram figcaption {font-size:12px;color:#526074;margin-bottom:12px;}

.pd-inline p + p {margin-top:14px;}
.pd-inline .btn {margin-top:18px;}
.pd-inline .btn + p {margin-top:24px;}
.pd-install h2 {max-width:760px;margin-bottom:32px;}
.pd-install-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;}
.pd-install-card {padding:32px;border:1px solid var(--border);border-radius:14px;background:#fafbfd;}
.pd-install h3 {font-size:22px;margin-bottom:14px;}
.pd-install p + p {margin-top:16px;}
.pd-install-note {padding:28px 32px;margin-top:28px;border-radius:14px;background:var(--blue-light);}
.pd-install-note p {max-width:830px;}
@media(max-width:640px){.pd-install-grid{grid-template-columns:1fr;gap:18px;}.pd-install-card,.pd-install-note{padding:24px;}.pd-install h2{margin-bottom:24px;}.pd-install-note{margin-top:20px;}}
